[Haskell-cafe] Haskell showcase in 5 minutes
arnaud.oqube at gmail.com
Tue Feb 28 23:19:38 CET 2012
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,
2012/2/28 Ertugrul Söylemez <es at ertes.de>
> Arnaud Bailly <arnaud.oqube at 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/.
> nightmare = unsafePerformIO (getWrongWife >>= sex)
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe