2 ms·
It seems like a messy abstraction whose results could be achieved through a variety of other tools. :/
by solomonb 6mo ago
It seems like a messy abstraction whose results could be achieved through a variety of other tools. :/
- waffletower 6mo agoIt isn't messy in Clojure
- mhitza 6mo agoFree Monads are a very nice (though not performant) way of creating an embedded domain specific language interpreter. Once I was building a declarative components library in PHP, using the ideas I've learned from free monads. I'm sure you can't imagine what an attrocity I've built. It did the job, but I had to mentally check out and throw in a couple of goto's in my main evalution loop. All that to say that elegance of expressivity is tied to the syntax and semantics of languages.
- solomonb 6mo agoFree Monads are also built on a tower of mathematical structures that come with laws and invariants. I have yet to see such formalization for transducers.