(Background: I've been thinking about doing a presentation on F# and functional programming. From experience, I think that the 'wow' factor of pattern matching and type inference is not necessarily enough to counteract the 'help!' factor of "where are my curly brackets and semicolons, my code is going to fall off the edge!". Which got me thinking about the real wow factor - for me - which is 1) that if it compiles, generally that means that it works and 2) that you can often infer the implementation from the types)
There is a video on Channel9 with Brian Beckman and Erik Meijer where they mentioned how implementation sometimes just 'falls out' of the type signature of a function. I've also experienced this in the past, but can't come up with a good example that would be sufficiently simple to present to someone with no previous functional experience.
Has anyone got a good example to share? (it doesn't have to be in F#)
UPDATE
If it's any help, I think we need to think about this differently: The actual puzzle is as follows:
I have some data with a given type, I want to transform it to a different type, and I have a set of functions with given signaures.
This is the 'lego' that you have to plug together.