This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
After reading your post about porting clojure-mode I took a look at porting https://github.com/chr15m/tiny-web-game-engine/ to squint, but the obvious problem is promesa.core
. Is there any way I can get around relying on it so heavily other than doing what you did with js-interop
and shimming all around it?
At the moment I am doing very silly things with cljs in order to keep the artifact size small in kb so squint would be much better as I could write less convoluted code and get the same small artifact.
This is awesome thanks so much. I should have realized the only promesa call I'm using is so trivially replaced ha ha.
I'm getting a few clj-kondo
lint errors. Is this due to it being a cljc file now?
• namespace hyperscript is required by never used.
• Unresolved namespae js.
• Unresolved symbol: js-delete.
• Unresolved symbol "h" (referring to the hyperscript require which it hasn't picked up).
After your squint equality change could I replace this with a simple equals instead of using JS coercive~=
?
(coercive-= (.indexOf (j/lit [:x :y :w :h]) t) -1)
Have pushed this to a branch called squint-vite
. 🙏
Moreover, I added a .clj-kondo/config.edn
that should take care that no lint warnings appear at all anymore :)
About coercive-=
I don't know why you were using that at all to be honest. What happens if you just write =
in CLJS?
In regular cljs using =
balloons the size of the build from 9kb to ~100kb because it has to pull in all the cljs data typing machinery I guess.