Fork me on GitHub
#squint
<
2023-11-04
>
Lidor Cohen17:11:50

Hello, πŸ‘‹ I'm new to squint. I think I understand the main offer: more js, less clj(s). I can easily understand why js interops will be easier, why the bundle will be smaller and why in some cases there will be performance gains. But I'm curious about the cost of moving away from the cljs ecosystem, what are the implications for using libraries like, say, specter / reagent... P.S I think I also read somewhere about implications on the REPL, so a word about that will be appropriated ☺️

borkdude18:11:35

Yes, squint is mostly for places where you mostly need JS and not the CLJS specific libraries.

borkdude18:11:24

REPL is a work in progress, there is a console REPL, I have nREPL in a branch but not done yet. For front-end I mostly recommend using vite hot reloading

Lidor Cohen10:11:36

is there a straight forward way to use cljs libs?

Lidor Cohen10:11:49

and what is the parity with the cljs.core lib? do we have things like protocols, multimethods?

borkdude10:11:07

defprotocol seems to work:

$ ./node_cli.js -e '(defprotocol IFoo (foo [_])) (deftype Foo [] IFoo (foo [_] :dude)) (prn (foo (->Foo)))'
"dude"

πŸ™ 1
borkdude10:11:22

multimethod isn't there yet

πŸ™ 1