Updates

Updates on our activities and progress.

Most recent
Hi, Typed Clojure 1.0.28 has been released. Highlights:- new syntactic sugar for function arguments: [t/Int :+ :-> Foo] ;; for 1 or more t/Int argumen...
Hi Patrons, I've been progressing on annotating malli, and I've made several fixes and improvements in 1.0.27 based on that experience. One thing that I have to mention first (as it's a great feeling) is that annotating malli with Typed Clo...
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:...
Hi, The spec1-type-providers example project shows how to use spec1 specs as static types. Thanks to Rayat R on Clojurians #core-type...
Hi, I've added some support for type providers in Typed Clojure. This means Typed Clojure can automatically source annotations from more places. As a proof of concept, I've added the ability for Typed Clojure to automatically convert...
Hi, Typed ClojureScript has been resurrected after about 5 years since it last worked. This time, there is a unified AST format...
Hi, Thanks for your continued support! I have been on the lookout for usability problems in Typed Clojure as part of a project I...
Hi, Typed Clojure has long struggled with incomprehensible error messages--today I merged an enhancement which should serve as a template to turn this around....
'let' typing rule
Published on July 24, 2021 by Ambrose Bonnaire-Sergeant
Hi Patrons, I've merged a typing rule for the clojure.core/let macro. In...
Hi, This week I made some exciting progress on a long standing challenge: a typing rule for `clojure.core/for`. If you've used core.typed, you might remember certain macros cannot appear in typed code--for example you must use `clojure.core...
Hi, Recently I noticed this commit landed for Clojure 1.11--it enhances keywor...
Hi, Over the last few months I've been trying to port typed.spec to spec1 (right now it's writ...
Hi, I'm test driving the extensible typing rules interface that Typed Clojure exposes by porting some hardcoded internal logic to this (eventually) public interface. Here's what...
API Docs
Published on January 7, 2021 by Ambrose Bonnaire-Sergeant
Hi supporters of Typed Clojure, I recently set up API documentation for typedclojure to be generated at api.typedclojure.org. For exa...
Hi supporters of Typed Clojure, I'm playing around with combining typed.clj/reader with typed.clj/analyzer in yet another library called typed.clj/refactor. Here's something fun: a function that "fully qualifies" forms even under macro expa...
Refactoring tooling
Published on November 11, 2020 by Ambrose Bonnaire-Sergeant
Hello supporters, I made some time for some personal hacking recently! I went back and completed a library I started back in July for refactoring Clojure code which I've dubbed...
October 2020 Update
Published on October 11, 2020 by Ambrose Bonnaire-Sergeant
Hi,Not much to report other than a general status update. All of my efforts since July has gone towards my day job, I'm currently on my first PTO for the year that's longer than 4 days -- using the time to relax and make some music at home....
Payouts and Papers
Published on July 14, 2020 by Ambrose Bonnaire-Sergeant
Hi,Thanks for your support! I've just made my first payout, via my company Untypable LLC.Currently, I'm looking over some papers to find inspiration to improve Typed Clojure's local inference.In particular, an upcoming paper for ICFP 2020 i...
Thesis -> HTML
Published on June 25, 2020 by Ambrose Bonnaire-Sergeant
Hi!I've wanted to get back into writing, but before I start I've been looking for a platform that outputs great looking PDFs and HTML.I think I've wrangled tex4ht (LaTeX -> HTML) to generate great HTML--here's a great proof-of-concept: m...
Hi,I've been having a lot of fun doing a variety of things. I'd love to tell you about them, but I'm having technical issues cross-posting this entry from Patreon this week, and there are so many links that I can't justify rewriting it.I...