Thanks for your support. I would really like to do this but 1) the talk is tomorrow evening and 2) I do not have time in the interval to learn yesod and/or gloss enough to be confident that I will not botch anything in a 5 minutes time frame.
I did recently a 2-hours long talk with same purpose (introducing Haskell to an audience of mixed-level Scala programmers), using some code to produce sound and music, up to a web server for generating wav files from "scores", and I had to make giant steps in the last 15 minutes to get to the web stuff. There was a lot of questions right from the start on various "strange" aspects of the language : type inference, laziness, generalized tail recursion, monadic I/O, point-free definitions and I barely managed to keep some time to show how easy it is to write a web server with simple HTML combinators (I discovered miku in the process). I timed myself on the menu problem and I am a little bit under 5 minutes, given I want to explain quite a few things in the process: what you can do with lists, what you can do with pairs, how to simply generate all the combinations of elements of a list, how to map a function on list, how to use list-comprehensions to integrate everything into a concise form and how to avoid combinatorial blow-up through laziness. I also would love to have the time to show some cool concurrency stuff following your suggestion. I will try to pack this tomorrow. Thanks a lot again for your advices, Arnaud 2012/2/28 Ertugrul Söylemez <e...@ertes.de> > Arnaud Bailly <arnaud.oq...@gmail.com> wrote: > > > Thanks Yves for your advice. And I agree with you that too much > > laziness may be mind-blowing for most of the audience, yet this is one > > of the characteristics of Haskell, whether or not we like it and > > whatever troubles it can induce. > > > > I really think the knapsack is simple, not too far away from real > > world and might be demonstrated with live code in 5 minutes. I will > > have a look anyway at more "spectacular" stuff like gloss or yesod but > > I fear this is out of scope. > > Gloss is definitely not out of scope. It is to simple 2D graphics what > Yesod is to web applications. I write two-minutes visualizations using > it all the time. Of course if you want to show something great, you > shouldn't fear learning it first. > > Also showing the language features, despite their greatness, makes > people go like: "Ok, that's great, but I can do it in my language using > <insert control construct here>". If you really don't want to go for > something amazing like Diagrams, Gloss or Yesod, I really suggest at > least bringing the run-time system into the game. Show concurrency, STM > and parallel evaluation. Show how you can write a full-featured finger > server in five minutes that is fast, secure and amazingly readable. > Something like that. > > Math problems amaze Haskellers, not programmers in general. Show how > Haskell solves practical problems, for which there is no simple solution > in more common languages. Don't show why Haskell is also good. Show > why Haskell is /a lot better/. > > > Greets, > Ertugrul > > -- > nightmare = unsafePerformIO (getWrongWife >>= sex) > http://ertes.de/ > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe