Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Functional programing languages

Name: Anonymous 2009-09-01 14:27

Haskell's type system really is THE BEST.

I recently programmed a simple single-instance file storage system in Erlang (to be used as a storage backend for my future archivers/scrapers/etc). I decided to use Erlang because I wanted the system to work as a remote server and I quite like Erlang's actor model.

Anyway, as I don't really program in Erlang at all, I made lots of really stupid mistakes (mostly forgetting that some return values are wrapped in the list monad or forgetting to pass some arguments in the list monad), which I could find instantly if Erlang had a type system like Haskell.

On the other hand, I really like Erlang's pattern matching against bound variables (I don't think Haskell has something like that?).

Anyway, discuss your experiences with your favourite programming languages in this thread.

Name: Anonymous 2009-09-01 17:29

>>21
Darcs, xmonad, yi
Let's examine these, shall we? I think you'll see that your so-called argument falls apart like a house of cards in a thermonuclear hurricane. No exceptions.

Darcs is a slow, buggy, unusable version control freak system. Every project that has ever used it has gotten fed up with its shitty performance and switched to something written in an imperative language. I guess you could consider that a real application in about the same sense that a steamroller is a real car.

Xmonad is a tiling window manager, which menas it has an incredibly niche audience to begin with. But apparently, even in that niche audience, it's looked down on by everyone who knows anything about window managers. For example: "On the other hand xmonad has great defaults, key bindings and xinerama support but is crippled by not being written in C." — http://www.scrotwm.org

Yi is a slow, buggy clone of a text editor that nobody uses (vi). It's easily the most blatant example of the three of the problems that come from writing an interactive application in a functional language. Every time you input text, it has to rebuild all of its immutable data structures from scratch, because it can't destructively update an array containing the text. And it does this on every keypress. I might as well be using head, tail, and cat to edit my files for all the good it's doing me.

Haskell's goal is to avoid success at all costs
And that's the one thing it will succeed at. Permanently.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List