Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-09 Thread aditya siram
Yes I think that showing the Maybe and List implementation of monads is essential. They're practical and in a lot of ways they represent two completely different types of computation demonstrating the flexibility of the Monad abstraction. Thanks for that suggestion. -deech On Mon, Aug 9, 2010 at

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-09 Thread wren ng thornton
aditya siram wrote: Thanks all for you suggestions! Upon further reflection I realized that my audience is more pragmatic than theoretical. Instead of emphasizing how monads are constructed and the monad laws I think I want to dive right into the most common and useful monads. From my vantage po

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-08 Thread David Virebayre
On Fri, Aug 6, 2010 at 5:58 PM, Alex Stangl wrote: > On Fri, Aug 06, 2010 at 10:17:26AM -0500, aditya siram wrote: >> >From my vantage point they are (in no particular order) : Reader, Writer, >> State, IO, ST, STM, Parsec (have I missed any?) and of course the >> transformer versions. I am debati

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread Stephen Tetley
On 6 August 2010 20:47, David Sankel wrote: > There have been some clever things done with monads aside from #1 and #2. > Parsec is one, but it seems applicative functors are a better match for the > parsing domain. Monadic bind is very, very handy for parsing, giving you context sensitive parsi

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread Gregory Crosswhite
It might be a little late at this point, but here's my take on monads: In most imperative languages sequencing of statements is a feature that is hard-coded into the language to act in a certain way, e.g. to have a particular implicit state (the global state plus possibly the fields available fro

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread David Sankel
On Fri, Aug 6, 2010 at 11:17 AM, aditya siram wrote: > I'm still a little iffy on why the monad concept isn't used in other > languages. The greatest feat that monads have accomplished, in my opinion, is providing the right mathematical abstraction for declaring side-effect and stateful computat

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread Jonathan Geddes
On Fri, Aug 6, 2010 at 9:17 AM, aditya siram wrote: > > Upon further reflection I realized that my audience is more pragmatic than > theoretical. Instead of emphasizing how monads are constructed and the monad > laws I think I want to dive right into the most common and useful monads. > From my

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread Stephen Tetley
At version 2 Parsec was an amalgamation of a state and error monad - by amalgamation I mean the data types and Monad instance encoded the combination directly, it wasn't made from transformers. Version 3 of Parsec complicates things a quite a bit. If you're addressing Perl programmers, you could t

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread Alex Stangl
On Fri, Aug 06, 2010 at 10:17:26AM -0500, aditya siram wrote: > >From my vantage point they are (in no particular order) : Reader, Writer, > State, IO, ST, STM, Parsec (have I missed any?) and of course the > transformer versions. I am debating whether or not to add [] to the bunch. Not sure how m

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-06 Thread aditya siram
Thanks all for you suggestions! Upon further reflection I realized that my audience is more pragmatic than theoretical. Instead of emphasizing how monads are constructed and the monad laws I think I want to dive right into the most common and useful monads. >From my vantage point they are (in no pa

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-04 Thread Daniel van den Eijkel
For me, the following two things did the magic, so I'll suggest them: 1. Writing a recursive function that takes a binary tree and returns the same tree, but with its leaves enumerated. Each function call takes the tree and the counter and returns the resulting tree and the new counter value.

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-04 Thread Hans Aberg
On 3 Aug 2010, at 23:51, aditya siram wrote: I am doing an "Intro To Monads" talk in September [1]. The audience consists of experienced non-Haskell developers but they will be familiar with basic functional concepts (closures, first-class functions etc.). I am looking for suggestions on

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-04 Thread Tillmann Rendel
Hi, aditya siram wrote: For example in the beginning it was useful for me to think of monads (and typeclasses really) as approximating Java interfaces. Type classes are somewhat parallel to Java interfaces, but Monad is a *specific* type class, so it should be somewhat parallel to a *specific

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread C K Kashyap
Hi, Please take a look at this video http://videoarch1.s-inf.de/FP.2005-SS-Giesl.(COt).HD_Videoaufzeichnung/2005-SS-FP.U09.2005-07-06.HDV.avi Here Monad's are explained as "something" that helps making your program modular. The teacher gives an example implementation of an expression evaluator wit

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread Colin Paul Adams
> "Alexander" == Alexander Solla writes: Alexander> On Aug 3, 2010, at 2:51 PM, aditya siram wrote: > I am looking for suggestions on how to introduce the concept and its >> implications. I'd also like to include a section on why monads >> exist and why we don't really see them o

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread Alexander Solla
On Aug 3, 2010, at 2:51 PM, aditya siram wrote: I am looking for suggestions on how to introduce the concept and its implications. I'd also like to include a section on why monads exist and why we don't really see them outside of Haskell. Start with functors (things that attach values/func

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread Ozgur Akgun
Today I read this fantastic blog post: You Could Have Invented Monads! (And Maybe You Already Have.) http://blog.sigfpe.com/2006/08/you-could-have-invented-monads-and.html You most probably have seen the post by now, but I just wanted to remind it, just in case. Best, On 3 August 2010 22:51, adi

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread TIMOTHY MICHAEL CARSTENS
On Aug 3, 2010, at 4:44 PM, aditya siram wrote: Thanks for reminding me. Although I wonder if there is a difference between drawing metaphors (monads are burritos etc.) and drawing parallels. Since they are experienced developers, your audience will want to know how to use monads to solve prob

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread aditya siram
Thanks for reminding me. Although I wonder if there is a difference between drawing metaphors (monads are burritos etc.) and drawing parallels. For example in the beginning it was useful for me to think of monads (and typeclasses really) as approximating Java interfaces. Now this parallel dies pret

Re: [Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread Dan Piponi
On Tue, Aug 3, 2010 at 2:51 PM, aditya siram wrote: > I am doing an "Intro To Monads" talk in September [1]. > ...what would you stay away from. Some things to stay away from: http://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/ (Though I secretly harbou

[Haskell-cafe] Suggestions For An Intro To Monads Talk.

2010-08-03 Thread aditya siram
Hi all, I am doing an "Intro To Monads" talk in September [1]. The audience consists of experienced non-Haskell developers but they will be familiar with basic functional concepts (closures, first-class functions etc.). I am looking for suggestions on how to introduce the concept and its implicati