({:k :v}) ;; => Execution error (ArityException) at user/eval1 (REPL:1). Wrong number of args (0) passed to: clojure.lang.PersistentArrayMap
({:k :v} :k) ;; => :v
({:k :v} :x :not-found) ;; => :not-found
({:k :v} :x :not-found :too-many) ;; => Execution error (ArityException) at user/eval1 (REPL:1). Wrong number of args (3) passed to: clojure.lang.PersistentArrayMap
({:k :v} ((fn [] :k))) ;; => :v
bash command to generate above via the clj command-line tool
one-liner:
```bash
for src in '({:k :v})' '({:k :v} :k)' '({:k :v} :x :not-found)' '({:k :v} :x :not-found :too-many)' '({:k :v} ((fn [] :k)))'; do printf "%s ;; => " "$src"; clj -e "(prn $src)"; done
```
in a more human-friendly form:
```bash
for src in \
'({:k :v})' \
'({:k :v} :k)' \
'({:k :v} :x :not-found)' \
'({:k :v} :x :not-found :too-many)' \
'({:k :v} ((fn [] :k)))' \
; do
printf "%s ;; => " "$src";
clj -e "$src";
done
```
ClojureRS prior to this PR:
({:k :v}) ;; => #Condition["Execution Error: clojure.lang.PersistentListMap cannot be cast to clojure.lang.IFn"]
({:k :v} :k) ;; => #Condition["Execution Error: clojure.lang.PersistentListMap cannot be cast to clojure.lang.IFn"]
({:k :v} :x :not-found) ;; => #Condition["Execution Error: clojure.lang.PersistentListMap cannot be cast to clojure.lang.IFn"]
({:k :v} :x :not-found :too-many) ;; => #Condition["Execution Error: clojure.lang.PersistentListMap cannot be cast to clojure.lang.IFn"]
({:k :v} ((fn [] :k))) ;; => #Condition["Execution Error: clojure.lang.PersistentListMap cannot be cast to clojure.lang.IFn"]
ClojureRS with the changes in this PR applied:
({:k :v}) ;; => #Condition["Wrong number of arguments given to function (Given: 0, Expected: [1, 2])"]
({:k :v} :k) ;; => :v
({:k :v} :x :not-found) ;; => nil (todo: should be :not-found see https://github.com/clojure-rs/ClojureRS/issues/86)
({:k :v} :x :not-found :too-many) ;; => #Condition["Wrong number of arguments given to function (Given: 3, Expected: [1, 2])"]
({:k :v} ((fn [] :k))) ;; => :v
bash command to generate above via the ClojureRS REPL
one-liner:
```bash
for src in '({:k :v})' '({:k :v} :k)' '({:k :v} :x :not-found)' '({:k :v} :x :not-found :too-many)' '({:k :v} ((fn [] :k)))'; do printf "%s ;; => " "$src"; cargo run -- -e "$src"; done
```
in a more human-friendly form:
```bash
for src in \
'({:k :v})' \
'({:k :v} :k)' \
'({:k :v} :x :not-found)' \
'({:k :v} :x :not-found :too-many)' \
'({:k :v} ((fn [] :k)))' \
; do
printf "%s ;; => " "$src";
cargo run -- -e "$src";
done
```
Similar to #85.
Clojure 1.10.3 behavior:
bash command to generate above via the clj command-line tool
one-liner: ```bash for src in '({:k :v})' '({:k :v} :k)' '({:k :v} :x :not-found)' '({:k :v} :x :not-found :too-many)' '({:k :v} ((fn [] :k)))'; do printf "%s ;; => " "$src"; clj -e "(prn $src)"; done ``` in a more human-friendly form: ```bash for src in \ '({:k :v})' \ '({:k :v} :k)' \ '({:k :v} :x :not-found)' \ '({:k :v} :x :not-found :too-many)' \ '({:k :v} ((fn [] :k)))' \ ; do printf "%s ;; => " "$src"; clj -e "$src"; done ```ClojureRS prior to this PR:
ClojureRS with the changes in this PR applied:
bash command to generate above via the ClojureRS REPL
one-liner: ```bash for src in '({:k :v})' '({:k :v} :k)' '({:k :v} :x :not-found)' '({:k :v} :x :not-found :too-many)' '({:k :v} ((fn [] :k)))'; do printf "%s ;; => " "$src"; cargo run -- -e "$src"; done ``` in a more human-friendly form: ```bash for src in \ '({:k :v})' \ '({:k :v} :k)' \ '({:k :v} :x :not-found)' \ '({:k :v} :x :not-found :too-many)' \ '({:k :v} ((fn [] :k)))' \ ; do printf "%s ;; => " "$src"; cargo run -- -e "$src"; done ```