Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-02-01 Thread Benjamin Franksen
[sorry, this was meant to go to the list] On Wednesday 31 January 2007 00:40, Bulat Ziganshin wrote: Saturday, January 27, 2007, 12:00:11 AM, you wrote: and support operational reasoning, i.e. creating and understanding programs by mentally modeling their execution on a machine. This form

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-02-01 Thread Dougal Stanton
Quoth Magnus Therning, nevermore, I'm not sure how a functional recipe would look, maybe something like this: White_sauce is a combination of ... . Chopped_onions is onions cut into small pieces. White_sauce_with_chopped_onions is the combination of white_sauce and chopped_onions.

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-02-01 Thread Yitzchak Gale
On 1/31/07, Kirsten Chevalier [EMAIL PROTECTED] wrote: On 1/31/07, Bill Wood [EMAIL PROTECTED] wrote: On Wed, 2007-01-31 at 19:51 +1100, Donald Bruce Stewart wrote: . . . foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] Nice example. First, note that you can't

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-02-01 Thread Neil Bartlett
The question is --- how would an expert describe such a process? Would a professional chef give instructions in the functional or imperative style? I think a sufficiently expert chef would not even need the functional style. Everything would be declarative. Dave Thomas (of Pragmatic

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-02-01 Thread Donald Bruce Stewart
neil: The question is --- how would an expert describe such a process? Would a professional chef give instructions in the functional or imperative style? I think a sufficiently expert chef would not even need the functional style. Everything would be declarative. Dave Thomas (of

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Magnus Therning
On Wed, Jan 31, 2007 at 02:40:23 +0300, Bulat Ziganshin wrote: Hello Benjamin, Saturday, January 27, 2007, 12:00:11 AM, you wrote: and support operational reasoning, i.e. creating and understanding programs by mentally modeling their execution on a machine. This form of reasoning appeals to

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Donald Bruce Stewart
magnus: All I'm trying to say is that imperative thinking is so common outside of CS/math and we learn it so early on in life that we probably can consider it the natural thinking way. foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] :)

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Bill Wood
On Wed, 2007-01-31 at 08:45 +, Magnus Therning wrote: . . . Nneither way may be natural, but imperative thinking is extremely common in society, I'd say much more than functional thinking. Just think of cooking recipes, IKEA instructions, all the algorithms tought in math classes in

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Bill Wood
On Wed, 2007-01-31 at 19:51 +1100, Donald Bruce Stewart wrote: . . . foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] Nice example. First, note that you can't get close with map -- you need accumulation across the dishes. Second, the correctness of this plan depends

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Dougal Stanton
Quoth Bill Wood, nevermore, foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] Finally, that doesn't work so well when there are constraints on the order that the dishes are washed, for example when washing the cruddiest dishes first while there are more suds. Ah, but

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Yitzchak Gale
Bulat Ziganshin wrote: FP way is to represent everything as function, imperative way is to represent everything as algorithm. Magnus Therning wrote: Neither way may be natural, but imperative thinking is extremely common in society, I'd say much more than functional thinking. Just think of

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Dougal Stanton
Quoth Bulat Ziganshin, nevermore, are you learned to write things in this way? in *my* school, we have studied f=(a*b+d)*2 Also there's the issue of variable substitution. It gets taught very early on when algebra is introduced (at least in UK): f = x + 3y and y = sqrt(4 + n) = f = x

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Magnus Therning
On Wed, Jan 31, 2007 at 13:36:02 +0200, Yitzchak Gale wrote: Bulat Ziganshin wrote: FP way is to represent everything as function, imperative way is to represent everything as algorithm. Magnus Therning wrote: Neither way may be natural, but imperative thinking is extremely common in society, I'd

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Magnus Therning
On Wed, Jan 31, 2007 at 14:05:10 +0300, Bulat Ziganshin wrote: Hello Magnus, Wednesday, January 31, 2007, 11:45:53 AM, you wrote: in math classes in grade school. I doubt that we'll ever see functional thinking tought alongside imperative thinking in lower grades in school. c=a*b e=c+d f=e*2

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Mark T.B. Carroll
Magnus Therning [EMAIL PROTECTED] writes: (snip) Sequential thinking would be related to procedural programming, that is ordering of statements are important but there's no state. Functional programming is declarative, no order and no state. So, to be strict I'd say that sequential form _is_

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Kirsten Chevalier
On 1/31/07, Bill Wood [EMAIL PROTECTED] wrote: On Wed, 2007-01-31 at 19:51 +1100, Donald Bruce Stewart wrote: . . . foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] Nice example. First, note that you can't get close with map -- you need accumulation across the

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Ketil Malde
Kirsten Chevalier wrote: On 1/31/07, Bill Wood [EMAIL PROTECTED] wrote: On Wed, 2007-01-31 at 19:51 +1100, Donald Bruce Stewart wrote: . . . foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] Nice example. First, note that you can't get close with map -- you need

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Magnus Therning
On Wed, Jan 31, 2007 at 09:43:36 -0500, Mark T.B. Carroll wrote: Magnus Therning [EMAIL PROTECTED] writes: (snip) Sequential thinking would be related to procedural programming, that is ordering of statements are important but there's no state. Functional programming is declarative, no order

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Mark T.B. Carroll
Magnus Therning [EMAIL PROTECTED] writes: Now, correct me if I'm wrong, but you see a natural ordering in your haskell expressions, right? Right. However the compiler/interpreter has to choose a sequence in order to arrive at a result, since that's how today's computers work. (Choosing

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Brandon S. Allbery KF8NH
On Jan 31, 2007, at 6:10 , Dougal Stanton wrote: Quoth Bill Wood, nevermore, foldl (\water dish - wash water dish) soapywater dishes :: [Dishes] Finally, that doesn't work so well when there are constraints on the order that the dishes are washed, for example when washing the

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Dan Weston
Imperative thinking is harder for humans than functional thinking. That is why astronauts need lists of instructions. When they use their natural intuition to solve problems, they are thinking functionally (and don't need a list to do it). Babies learn functional intuition immediately

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-31 Thread Magnus Therning
On Wed, Jan 31, 2007 at 14:28:00 -0800, Dan Weston wrote: Imperative thinking is harder for humans than functional thinking. That is why astronauts need lists of instructions. When they use their natural intuition to solve problems, they are thinking functionally (and don't need a list to do it).

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-30 Thread Bulat Ziganshin
Hello Benjamin, Saturday, January 27, 2007, 12:00:11 AM, you wrote: and support operational reasoning, i.e. creating and understanding programs by mentally modeling their execution on a machine. This form of reasoning appeals to 'common sense', it is familiar to almost all (even completely

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-28 Thread Chris Kuklewicz
Benjamin Franksen wrote: Chris Kuklewicz wrote: Aside on utterly useful proofs: When you write concurrent programs you want an API with strong and useful guarantees so you can avoid deadlocks and starvation and conflicting data read/writes. Designing an using such an API is a reasoning

Re: [Haskell-cafe] Re: Channel9 Interview: Software Composability and theFu ture of Languages

2007-01-26 Thread Andrew Wagner
I thought it was very telling that, at the end of the interview, when the interview asked, In general, where is programming going?, the responses were all things that haskell is good at. Shame it's such an impractical language. On 1/26/07, Benjamin Franksen [EMAIL PROTECTED] wrote: Steve