Is there some collection of posts/blogs/whatever that can give some idea about what the trade-offs between cherry and squint are? I mainly want to orient my thinking around it, in evaluating if one of them, or both, could be employed by Calva to migrate more of the code to Clojure (from TypeScript).
The main trade-off is 1) JS interop and 2) bundle size. Both are easier/better in squint, at the cost of not having immutable data structures. However, squint's standard library acts on objects as if they are immutable, so porting code between CLJS and squint should be easy and should just work, mostly. I'm currently porting the clojure-mode project which is 99% JS interop so it makes a lot of sense for that project to move to squint
Currently I'm working mostly on squint (`squint watch`, etc) but all will be eventually ported back to cherry as well
the nice thing about squint/cherry is that you can just choose to opt-in on a file by file basis, so e.g. choose a low-risk part of your application first to try it out
Thanks! File by file basis sounds awesome. And sounds like we should start with squint.
please do and let me know how it works out for you
btw there is a #squint channel might you have any questions