Typed Clojure 1.0.26 - Extensive improvements
Published on April 8, 2022 by Ambrose Bonnaire-Sergeant
Hi,
The latest release of the type checker has a bunch of improvements. A lot of them have been driven by attempting to type check malli's implementation in both Clojure and ClojureScript. Here's my work in progress: https://github.com/frenchy64/malli/pull/1/files
Highlights of 1.0.26:
- support reify, satisfies in Clojure
- support defprotocol, implements? in ClojureScript
- support annotating composite predicates like (defn sym-or-kw? [a] (or (symbol? a) (keyword? a)))
- new macro typed.clojure.jvm/override-class exposed to users to annotate Java classes. The base environment now uses this macros, so look to there for examples: https://github.com/typedclojure/typedclojure/blob/main/typed/lib.clojure/src/typed/ann/clojure/jvm.clj
See the full list here: https://github.com/typedclojure/typedclojure/blob/main/CHANGELOG.md#1026
See here to get started with Typed Clojure https://github.com/typedclojure/typedclojure#usage-overview
Thanks,
Ambrose
Ambrose