Daily Thought - 2025-03-24
Hey, I'm Hanno! These are my daily thoughts on Crosscut, the programming language I'm creating. If you have any questions, comments, or feedback, please get in touch!
Okay, so I've re-invented monads. But in a totally weird way, with postfix operators and automatic lifting. I didn't do it this way because I wanted it to be weird though. This fell out of a long, iterative, and still ongoing design process. A strong focus of that design process has been convenience.
And this is interesting to me. Because it seems to be a recurring theme in the
world of functional programming languages, that dealing with monads turns out to
be inconvenient. And then, to fix that, do
notation gets introduced.
I'm far from being an expert on do
notation. But it seems to me, that it has a
twofold purpose: to hide the inconvenience of explicitly operating on monads,
and to put those operations into a linear sequence. Which is exactly what I'm
trying to do with my approach. But in Crosscut, this wouldn't be a special
notation. It would be the default (and hopefully only) mode of doing things.
Hey, you! Want to subscribe to my daily thoughts? Just let me know (maybe include a nice message, if you're up for it), and I'll send you an email every time I post a new one.