Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

For those interested in an experience report I'll copy and paste the post from the developer from http://www.reddit.com/r/haskell/comments/1ha5dd/rss_reader_w... (go there for some additional discussion):

<--- 8< ---->

Hi, I'm developer of this RSS reader and want to share with you why Haskell is a big win for my project.

First. Haskell is a fast compiled language. Most RSS readers are written in Python, Ruby or PHP. And they're all quite slow or requre a ton of servers to handle the load. With Haskell I'm able to quickly implement complex features and don't think much about performance.

Second. Haskell is very high level and handles concurrency well. It's not a problem to write very generic code or spawn thousands of threads.

Third. There a many good libraries now (much more than 10 years ago ;).

I want to thank Bryan O'Sullivan, Michael Snoyman and all other package authors for their efforts on making Haskell true platform.

I'm especially like text, riak, aeson, http-conduit and warp packages. They're used 24x7 under load and I haven't found any major problems with them.

And few quirks.

Unfortunately not all packages are equal in quality. Many libraries are toys or don't work well under load. But at least there are libraries to take some code from.

Bindings to C libraries (as well as C libs itself) are evil. I've had problems with almost every C package I've tried (curl, regex-pcre, hsdns).

Long-lived ByteStrings can cause memory fragmentation and ten-fold performance drops. So I'm using Text for everything except I/O.

Haskell was missing fast malformed html/xml parser. But it took only a couple of days to write fast-tagsoup package that parses tens of MB/sec.

In general with Haskell I can quickly write high level code that runs fast. And (at least for my project) I'm seeing that most tasks now are CPU bound (due to fast SSDs), not I/O. So compiled yet high-level languages shold gain more popularity now.

If you have some questions about reader implementation details feel free to ask me.

PS: reader is profitable, so I'm thinking it could be counted as a Haskell success story ;)

</--- 8< --->



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: