(:nil (:type-name #nil))
(:int (:type-name 123))
(:string (:type-name "asd"))
(:int (apply :type-name '(123)))
(:nil (apply :type-name #nil))
('(:nil :int :string) (map '(#nil 123 "asd") :type-name))
(0 (:length #nil))
(0 (:length 123))
(3 (:length "asd"))