6 ms·
Rather than writing blog articles touting how great your favorite language is for general purpose programming you should write some code. When you have more no
by brl 18y ago
Rather than writing blog articles touting how great your favorite language is for general purpose programming you should write some code.
When you have more non-trivial applications written in Haskell than a Haskell compiler and a DVCS it will be a lot more credible to talk about it being ready for 'Prime Time'.
- sharkbrainguy 18y agoLike a window manager? http://xmonad.org/ http://xmonad.org/
- brl 18y agoI like xmonad, but it's still just a 500 line ultra-minimalist window manager. Students in introductory programming classes write programs longer than that. Get back to me when you've implemented KDE, Aqua, or Aero in Haskell.
- wernerv0nbraun 18y agoyou find me one introductory programming student who can even read the code for xmonad let alone write it xmonad is feature-laden it is a small codebase not because it is trivial, but because the people who wrote it are kick-ass coders
- time_management 18y agoLines of code fails as a measure of code quantity for languages like Lisp and Haskell. 500 lines of Haskell code can accomplish what will take 1500-5000 lines of Java.
- brl 18y agoWhen I'm trying to get stuff done I would rather spend 3x as much time typing in code than waste all week deciphering 'core' and reading heap profiling output to track down a space leak that could never happen in any other language.
- wernerv0nbraun 18y agothen java is for you. good luck.
- time_management 18y agoHave you had this problem with Haskell? I've heard that Haskell's space performance isn't great, but I don't know enough about the language to confirm or deny this. I would recommend, if you're concerned with performance, using Ocaml. You can compile it down to native code, and its performance characteristics are comparable to C.
- brl 18y agoYes, I have had to solve this problem a lot. It's probably my own fault because I am an inexperienced Haskell programmer, and maybe it's just because I'm incompetent but I find space performance very difficult to reason about. It seems like anybody can make these mistakes, and they are mostly invisible until one day your problem size is a little bit larger than normal and your program explodes and crashes.
- time_management 18y agoNoob question: Why is space performance so opaque in a lazy language?
- brl 18y agoNoob answer: In a strict language, you write an expression and it's perfectly clear when it will be evaluated. With lazy evaluation to know if or when an expression will be evaluated you have to follow it through possibly many layers of function calls (which may have been written by somebody else) looking for a place where it needs to be evaluated. Along the way it may become embedded in other expressions which complicates the problem. How do you know when an expression needs to be evaluated? I don't know if I'm smart enough to understand the answer to that question: http://en.wikibooks.org/wiki/Haskell/Denotational_semantics#Strict_and_Non-Strict_Semantics http://en.wikibooks.org/wiki/Haskell/Denotational_semantics#...
- prakash 18y agoJeff Polakow: Is Haskell Ready for Everyday Computing? http://cufp.galois.com/2008/slides/PolakowJeff.pdf http://cufp.galois.com/2008/slides/PolakowJeff.pdf
- eelco 18y agoI'll give the same reply as was given in the comment thread of the article, which you apparently didn't read. http://hackage.haskell.org/packages/archive/pkg-list.html http://hackage.haskell.org/packages/archive/pkg-list.html
- brl 18y agoHasn't changed since I last looked at it. Still a big clusterfuck of esoteric math libraries, wrappers for useful things written in other (practical) languages, and a handful of half finished clones of libraries and applications first written 10 or 20 years ago in C.
- intoverflow 18y agoThis is a bit unfair. Every code repository has this sort of thing. The quality of a repository shouldn't be the ratio of [no-external-dependency + extremely mature] projects, but rather should be based on whether or not people can find what they need there. I'd argue that Hackage has that. As for being full of bindings to languages written in other libraries, why is that a bad thing? In general, these libraries are common, cross platform, and thoroughly tested. Isn't code-reuse worth something?
- wernerv0nbraun 18y agoabout a package a day is being added to hackage, so my guess is that you are just spewing uninformed bullshit. you don't know anything about haskell, hackage, or anything related. stop commenting until you do.
- deleted 18y ago[deleted]
- dons 18y agoA 1000 libs and apps produced by an open source community in 18 months. Sure, clusterfuck. Good work. Here's a breakdown by category: http://galois.com/~dons/images/chart-hackage.png http://galois.com/~dons/images/chart-hackage.png Science works, bitches.
- andreyf 18y agoRather than writing blog articles... Why not do both? Preaching the Good Word can go hand-in-hand with practicing it.
- tptacek 18y agoBecause you're spending credibility.
- intoverflow 18y agoThis isn't a "spending credibility" situation. Credibility is something you need when you're asking someone to believe something based on your authority. In this case, I wrote an article filled with links with the hope that the reader could evaluate the claim based on that material. Besides, I don't think I should need to spend all of my waking time coding; I already spend several hours a day doing that. Why can't I take a break to argue that Haskell's tools make the language more production focused than most people realize?
- brl 18y agoIn your article you claim that Haskell enables 'people to write sophisticated programs in less time and with greater reliability.' Am I out of line to expect some sophisticated Haskell programs to exist before taking this claim seriously?
- wernerv0nbraun 18y agohow about an operating system (house) a window manager (xmonad) and fully featured dvcs (darcs) or another (camp)? is there as much haskell out there as c, perl, python? no. but if you want to be a pioneer you have to drive on a little dirt. but don't worry, we'll keep plugging away and in no time at all the haskell highway will be lined with HoJos and rest stops and miles of flat-top...we'll send you a postcard.
- anamax 18y ago
- patio11 18y agoAmen to that. You can even have very broad definitions of "non-trivial": it used to be received gospel on one programming board I frequent that Java was a terrible choice for a downloadable application. If you tried it your users would abandon you in the middle of their 120 terabyte download, your application would win awards for poor non-native design, and it would take approximately seven years to boot the JVM. Then I made a few tens of thousands of dollars with Bingo Card Creator. (Which is written in Java. Further frustrating my efforts to win geek cred, the UI is in Swing.) We don't hear much about the impossibility of making money with downloadable Java applications these days.