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

Why would this be difficult in other languages, especially other modern languages? I wish the author expanded on it as I don't see anything special about the use of Haskell here.


Did he not?

> Haskell provided a very light-weight syntax.

> Haskell allows partial-application of functions.

> Haskell allows definitions of unbounded data structures...

> Higher-order functions like "iterate" and "map"...

> Monads allowed me to avoid having to explicitly track side effects ... [also] purity and strong type checking.

> Libraries of higher order functions for monads allowed me to limit the syntactic cost of using monads.


That just tells me he did it the Haskell way. That doesn't answer the question of why it would be more difficult in other (modern) languages.

If you're going to make an audacious claim then we need to see evidence to support that claim. The author didn't do this. All the author did was show us a Haskell implementation.


No, but he did say "beware, herein lies advocacy." Which is a tongue-in-cheek version of saying "ok, I know, I didn't do my due dilligence, but it's my blog and I love Haskell and I'm excited about this one thing I just built."

Not everything is a paper in Nature. I understand your point but he's honest about it just being a propaganda piece.

And, frankly, what's wrong with that?

Thanks to the author for taking the time to share.


>And, frankly, what's wrong with that?

That it doesn't solve OUR problem, which is "help us chose if Haskell if better", even though it pretends to?


I don't see how it doesn't help. It might not help as much as could be asked, but it's a cute example of "real world" Haskell use and he described the parts of it he rather liked.


Here's a follow up post from a different author, that continues on this subject, and also explains some of the benefits of the haskell approach: http://nikita-volkov.github.io/a-taste-of-state-parsers-are-...


None of these are both a) special to Haskell and b) necessary to solving this problem in a clean way. So no, he did not. It's also worth pointing out that the last point contradicts the first.


I don't think he claimed (a) or (b). Instead, he claimed that Haskell has all of these features together and that the culminating result is a pleasant implementation of a real-world problem.

Finally, the last point does not contradict the first. You can have lightweight syntax and use it to express heavyweight ideas. Then you can have libraries which help to alleviate that weight. This is a non-trivial task—it involves the abstraction power of your language and, in the case, the logical power of your type language.




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

Search: