Details
-
Type:
Enhancement
-
Status:
Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
-
Patch:Code and Test
Description
The implementation of clojure.core/get returns null if its argument is not a valid associative collection. However, calling 'get' on something which is neither nil nor an Associative collection is almost certainly a bug, and should be indicated by an exception.
This behavior can obscure common programmer errors such as:
(def a (atom {:a 1 :b 2})
(:foo a) ; forgot to deref a
;;=> nil
CLJ-932 was accepted as a similar enhancement to 'clojure.core/contains?'
Attached patch 0001 throws an IllegalArgumentException as the fall-through case of RT.getFrom.