squint 2025-10-07

I think I need to remove the debug logging from Eucalypt. Smallest build size is 8kb gzipped with logging removed:

../../docs/small.html  22.62 kB │ gzip: 7.97 kB

🎉 2

Wonder if I could use a macro to strip it out. 🤔

you could use a macro yes

Lots of simplifying Eucalypt today. I'm getting ready to make r/render re-entrant so there can be multiple on the same page. Will add a failing test with two different r/render calls that conflict. I think this will make the code much cleaner and more functional too, with less global vars.

🎉 1

Are you using the logging at all? I think I might just rip it out since I am not actually using it. I generally just add logging when I need to debug and remove it again afterwards.

👍 1

so thats now [true true true] and it wasn't before?

yep, before it was false false false

fixing javascript, one clojure idea at a time

the next idea is to make #{..} return a set that actually works with collection equality = I can't change object literals but I'd like to make a Map type which also works with that. Perhaps as a separate namespace

or perhaps with an object literal notation like #map {:a 1} or so

the main driver for this change was eucalypt which compares hiccup

and (= a b) into a==b ?

well that's the part which just changed

I see, that makes sense.

it now uses squint_core._EQ_ for this. when you write (identical? a b) it should do the same as a === b which was the behavior of = before

the real meat is in dequal