4 ms·
SPJ: Escape From the Ivory Tower, Haskell From 1990 to 2011
- l3b4nn3n 15y agoPDF of the presentation: http://gotocon.com/dl/SPJ-%20keynote.pdf http://gotocon.com/dl/SPJ-%20keynote.pdf
- zmanji 15y agoThis is an excellent talk. The presenter has tremendous energy.
- deleted 15y ago[deleted]
- gtani 15y agothere's more at channel 9 (also recommend Erik Meijer and Don Syme's, and those of Wadler adn Ralf Lämmel. http://channel9.msdn.com/search?term=peyton+jones http://channel9.msdn.com/search?term=peyton+jones
- CJefferson 15y agoI have only looked at the slides. This looks like an interesting overview of Haskell, but, like most functional programming talks I see seems to think the rest of us really want to be using functional programming. Notice the slides that thinks the connection between C/Java and Haskell is that C/Java programmers envy Haskell, and take ideas from it. No envy or ideas ever flow the other way.
- ctkrohn 15y agoSPJ actually discusses this a bit in his talk. He says that Haskell has tried to achieve the ease and intuitiveness of imperative programming through things like the "do" syntax sugar for monads. He agrees that there's still plenty of improvement to be made; on several occasions he jokes about how Haskell programmers envy other programmers' ability to get things done quickly.
- gtani 15y agoHe's also joked about making strict/eager (non-lazy) eval the default. I think the heart of the joke is that learning haskell (and all the GHC extensions) involves a lot of staring at error messages, type signatures and the rest of hte code and trying to make associations.
- jeffdavis 15y ago"No envy or ideas ever flow the other way." I think that is a misread of the slides. I see why you thought that, but in the talk itself it was more clear.
- tikhonj 15y agoWhile there is little envy of Java in Haskell land (is there much Java envy anywhere?), there is actually a healthy flow of ideas to and from .NET, particularly C# and (naturally) F#. (Simon Peyton-Jones works at Microsoft Research, after all.) For example, I have heard talk of extending Haskell's already nice list comprehensions with some LINQ features like orderBy. So while the slides--which are just a backdrop for the talk rather than its entirety--may imply Haskell is insular like that, the reality is that Haskell is always happy to take features from other languages. Finally, I think the idea isn't that everybody wants to use functional programming languages, but rather that everybody should want to use functional programming languages ;).
- njs12345 15y agoGHC has a feature very similar to LINQ: http://www.haskell.org/ghc/docs/7.2.1/html/users_guide/syntax-extns.html#generalised-list-comprehensions http://www.haskell.org/ghc/docs/7.2.1/html/users_guide/synta...
- tomstuart 15y agoThe envy slide doesn't make his intent particularly clear. He is talking about how Haskell envies the usefulness of the dangerous languages, and then contrasts that with how Haskell contributes more theoretical ideas (e.g. retry/orElse for STM) back to those languages.
- tincholio 15y ago>Notice the slides that thinks the connection between C/Java and Haskell is that C/Java programmers envy Haskell, and take ideas from it. No envy or ideas ever flow the other way. If you had actually watched the talk, you would have noticed that that's not the case at all.
- ericssmith 15y agoYou've been corrected already on your misinterpretation of the slide without watching the video (at 38:08), but I wanted to add that Simon has repeatedly made the point (including this presentation) that prior to IO Monads, the designers of Haskell were envious of other languages and the slide is repurposed from earlier presentations.
- jphackworth 15y agoReally interesting slides. As someone who has only briefly played around with Haskell, I do envy some of its features, particularly the type inference. I wish there were more languages that could combine the ease of scripting languages with the maintainability of compile-time typechecking.
- jeffdavis 15y agoI found the question at the end an interesting one (paraphrased): "would you be happy if people wrote websites to sell dog food in haskell?" I was a little disappointed in SPJ's response, actually. What would make it a bad language for such an application? What would make it a good language? Would the answer change if you instead wanted to create a framework for building thousands of web-store applications that were all similar but a little different?
- tikhonj 15y agoAs I understood the question, it wasn't really about Haskell's fitness for that particular purpose but rather a bit of a jab at its theoretical, researchy nature. I thought it basically meant "How would you feel about your baby being used in a completely quotidian manner?".
- jeffdavis 15y agoI didn't understand it quite that way. I have been trying to learn haskell for a while, and I like it quite a lot. I found myself thinking things like "what kind of amazing software could I build in haskell that I couldn't with any other language". I realized that was the wrong way to think about it, but perhaps there's something more there. After such an investment in learning, maybe writing a simple web store seems like an under-use of the language. I wonder what things would be like if people did write ordinary applications in haskell.
- tikhonj 15y agoWell, people do write ordinary applications in Haskell (it's not just banks :)). And the result is surprisingly stable and short programs. A perfect example here is XMonad--it's a fairly popular tiling window manager with a good set of features and is something like 2500 lines long (just using wc -l to count, so don't trust this number :)). Additionally, Haskell is actually pretty well suited for web programming as well. There are several frameworks which make writing server-side code easy and have very good performance; the two most popular ones seems to be Snap[1] and Yesod[2]. The combination of expresiveness and performance Haskell offers server-side is very good--C++ may be faster but is uglier, Ruby and friends may be as expressive but are slower. [1]: http://snapframework.com/ http://snapframework.com/ [2]: http://www.yesodweb.com/ http://www.yesodweb.com/ So in all, Haskell is a good way to write "ordinary applications".
- gerggerg 15y agoI love this talk. For whatever reason, language history is immensely interesting to me. I love the haskell class photo from the 90's, I love him talking about envying features of other languages, I love hearing about research papers helping bring the language to the next level. I don't know haskell whatsoever, but now I respect it and find it fascinating. I would love to see similar talks about other languages.