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).
Really? May I ask what you base your reasoning on? I don't base my reasoning on any "hard facts" at all, but just what I consider to be reasonable. E.g. I believe that thinking clearly in stressful situations is difficult. I draw a line, perhaps wrongly, between space travel being on the extreme when it comes to stressful situations and NASA using lists of instructions. I think that suggests that when a human finds herself with diminished brain activity it's simply easier to follow a list of instructions. This lead me to think that our ability to make up lists of instructions develops first as we grow up. >Babies learn functional intuition immediately (pattern matching, lazy >evaluation) to solve problems. Navigating around objects is hard for a >robot but very basic for a baby. Following a prescribed path is basic >for a robot but difficult for a child. Our brain is goal-oriented, not >process-oriented. AFAIU the human brain is amazing at processing information, especially at throwing away unimportant information. Couldn't the robot's difficulty in moving around objects simply be a result of our inability to mimick the brain's information processing? >And BTW, a recipe book is a functional, not imperative, program. It is >filled with recipes to be evaluated lazily. When it says, "make a white >sauce, then chop onions and add to sauce", it means "you need a white >sauce but I won't tell you how to make it. Look in the index if you >need help (otherwise do it the way you already know how). And if you >happen to have onions prechopped (or maybe onion flakes in the spice >rack), don't ignore them and run to the store just because I told you >to, just use what you have." Still not functional, sequential maybe, but not functional :-) All you've pointed out is that a recipe can have calls to sub-routines (make white sauce), and that we can use lookup tables to find sub-routines. You've also pointed out that we can do _some_ optimisations in the sequencing (e.g. pre-chopping onions), but the sequence is clearly there in the recipe, note your use of the word "then"? 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. >The wording is imperative because schooling has distorted our natural >functional/relational mode of thinking and devalued it. I for one think >that turning the massively parallel, greedily optimizing, lazily >evaluating, functional computer/relational database that is our brain >into a von Neumann drone is a rather feeble accomplishment by any >standard. Again, I'm not convinced. I continue to think that _both_ ways are learnt, but that our brain reaches a level where it can handle imperative thinking before the level where it can handle functional thinking. Again, no "hard facts", just my imperfect observations and imperfect reasoning. /M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) [EMAIL PROTECTED] Jabber: [EMAIL PROTECTED] http://therning.org/magnus
pgpFtKDe0xqqT.pgp
Description: PGP signature
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe