The attempted US coup, in an unpreferable/inadvisable way, has shown just how vulnerable all societies are to disinformation.
Need a government & society with more integrity, transparency, and structural empathy for its citizens. Last 4 years in US failed that.
Personally in FP land I'm after something where:
β’ namespaces and records have a similar experience (but sensitive to comp/run-time ctx's)
β’ property access and function calls have a more unified exp (cf Scheme, Nim)
β’ protocol-driven row polymorphism
(F#skellisp?)
time for some heresy: the more I do Haskell/PureScript, the more convinced I am that lenses are not worth it. With simple lens code there's little difference versus normal functions; complex lens code is pretty much write-only.
I really like my dot-notation in namespaces (and record access); I like typed modules (ML); I like opt-in row polymorphism on records (PS? TS? Go?); I like first class functions and partial application and being able to pipe things around; and I like compile-time optimisation!
I also like Clojure atoms and their enhancements over ML refs in terms of the stdlib (but can address in userland); I also like having a high level subset easy to impl on e.g. JS, JVM, CLR etc too.
But as far as I know nothing does all of this, though many come close.
Having dived (doven? hmm, duvved!) into the ML world recently with F# and SML, the timing for this release is great. I'll have to try it out with Next.js or something.
(Previously had tried Reason/OCaml, but I've found the dotnet core (well, .NET 5 now...) ecosystem comfortable)
The bubbling up and invocation of event handlers is queued up as a task in the event loop and as such async) But once it bubbling/handler invocation has started, itβs synchronous, which is why preventDefault() works.