Removing the reexports from mtl was, while I really like it conceptually, quite the breaking change, apparently it had become a habit in my team to just import Control.Monad.Except to get access to Control.Monad and Control.Monad.IO.Class… On that note: why’s there no Control.Monad.IO, why do I have to type .Class all the time.
Someone who knows #Haskell and ML: is there a writeup somewhere explaining how first-class modules (a la ML) can do similar things to Haskell type classes? I'm finding it hard to figure that out.
To give a more concrete case: suppose I wanted to write something like Control.Applicative, which provides an 'interface' Applicative with some methods, as well as functions that work for any Applicative. How would I do this with ML-style first-class modules?
One of the great #lua modules provided by LuaX is F.
F is inspired by some #haskell modules (List and Map) and implements functional programming functions to deal with Lua tables.
I recently came across https://simplex.chat. I really liked it just by reading how it works. But I took a look at the source code today, and I was like: “Oh coool it's in #haskell. Oh, daaaamn they're using #nix quite heavily. I love it. 😍 “
I like programming sounds with #pd, #maxmsp and hardware synths, DAW's, etc. But tools don't matter in the end as you probably know, aesthetics do -- and reverb algorithms. Do you know any?
I spent too much time with #linux and #haskell. I reaaaally don't like commercial ads. After all, is the internet post-modern?
My favorite emoticon is the smiling face with tear.
I'm going to return to #haskell after a very long time. Back then, the #cabal hell was excruciating. But now, thanks to #nix, setting up a project is like two seconds from the time you decide to create it to the point you start coding.
Tomorrow, 2024-05-22, at 1830 UTC, we'll be back for the 26th episode of the #Haskell#Unfolder live on YouTube. Edsko and I will talk about how to encode Haskell functions with a variable number of arguments.
To anyone writing programs in #Scheme right now, this is just a reminder that you can search through a huge cluster of Scheme libraries indexed by procedure name, including all SRFIs, at the https://index.scheme.org/ website. If you need code to do something, try searching by keyword to see if someone has already written it. Most APIs listed there even have Haskell-like types and are tagged as "pure" if they are pure.