OCaml, Scheme...or both?
So, my first foray into functional programming was through the scheme lense. I find scheme super fun, and I've been working on various projects.
Generally speaking, when I do computing stuff for fun, I do it in the context of Plan9. Plan9 (more specifically, 9front) is just so fun to me. It takes me back to the days sitting in front of our 8088 trying to figure out how write batch scripts in DOS 3.2, browsing a BBS looking for hidden secrets, finally getting colors to work in my turbo pascal class in middle school.
Anyway, if I can't do it in Plan9, I'm not really that interested. When I started down the scheme path, Scheme 9 from Empty Space was the best option I could find. It's written in simple C and (almost) compiles perfectly in Plan9, but I got hung up trying to get a good 9p implementation made, and I got myself stuck in a corner. I sort of burned out on it, so I wanted to try something new.
I was at a c++ conference where I ran into one of the big contributors of 9front (Ori Bernstein) and he mentioned that OCaml (4.07) had recently been ported to 9front. I decided to check it out. It's crazy. I had a very brief encounter with Haskell and found it super fun, but alas, no Plan 9, so I didn't get into it too much. OCaml feels just as whacky as Haskell, but it's available in 9front. Win win!
So I started monkeying with that.
Now I've got several half-finished OCaml projects (one of which is a from-scratch scheme interpreter...I'm once again stuck, but this time it's trying to figure out how to do hygienic macros) and I'm having a blast.
I'll start linking them here, eventually.