3 ms·
Well, there's: - Dependently typed languages (ATS, Agda, Idris)¹ should be fairly familiar if you're a Haskell veteran. - Array languages (APL, J, K, and more
by PeCaN 10y ago
Well, there's:
- Dependently typed languages (ATS, Agda, Idris)¹ should be fairly familiar if you're a Haskell veteran.
- Array languages (APL, J, K, and more obscure ones like Nial) are pretty enlightening if you're a functional programmer (at least they are for me). Most of these trace to Ken Iverson and his Notation as a Tool of Thought. They are a bit brain-bending at first, largely because of the density, but they're fun to use and the density makes comprehension easier after a while.
- Function-level languages (FL, FPr, J) – a somewhat obscure and very advanced sister to functional programming. If you're familiar with Haskell Arrows, there are many parallels. They are, essentially, a more convenient point-free style. Most (all?) of these trace to John Backus (of Fortran and Backus-Naur Form fame) and his 1977 Turing Award lecture Can Programming Be Liberated From the von Neumann Style?
J (http://jsoftware.com/ http://jsoftware.com/) combines array and function-level programming, and IMO is a very good language to learn to expand your horizons if you're a veteran functional programmer.
--
¹ Coq kinda, but it's more of a theorem prover than a programming language. Agda sort of fits that too.
- agumonkey 10y agoI had gnu apl installed (along with emacs mode:). APL and it's siblings are amazing, tiny, expressive, light.. lot to love. Juts nothing as mind bending as; say lambda calculus. Didn't know FL/FPr were arrow-like. Didn't even know they were implemented .. I thought Backus quit because of IO. Lots of people are suggesting the Idris/Agda road .. I guess I have my answer.
- PeCaN 10y agoAs far as FL/FP/FPr go, http://www.call-with-current-continuation.org/fp/ http://www.call-with-current-continuation.org/fp/ is the most mature and complete implementation I'm aware of. There's #proglangdesign on freenode where a bunch of us have been on an array language/function-level streak lately. Some people there might be aware of more.
- agumonkey 10y agobrilliant , I didn't know about the ccc impl nor the IRC chan. I know some folks that might be interested.