>More importantly it isn’t statically typed (like F#, Haskell, etc)
You can statically type variables (bindings) in Common Lisp if you want:
(defun little-function (x y)
(declare (type fixnum x y))
(+ x y))
Although type
checking is limited at compile time.