Email or username:

Password:

Forgot your password?
Niki Tonsky

I think Clojure is neither statically nor dynamically typed.

What it has is accidental typing. Some things work but completely by accident.

E.g.

(merge {:foo :bar} [:foo :bar2])

or

(conj {:a 1} {:b 2})

or

(clojure.set/intersection #{1 2 3} [4 5 6])

4 comments
Niki Tonsky

@potetm yeah, even more interestingly, this works:

(clojure.set/intersection #{1 2 3} [4 5 6])

but this doesn’t:

(clojure.set/intersection [1 2 3] #{4 5 6})

Accidental typing 🤷‍♂️

Niki Tonsky

@easeout that is exactly why I call it accidental typing

Go Up