On Wed, Aug 09, 2006 at 11:57:03PM +0900, Francis Cianfrocca wrote:
> 
> I've often been mystified when people talk about Ruby's metaprogramming, 
> closures, lambdas, etc. as constituting a "functional" programming 
> style. Your comment is striking because it made me realize that perhaps 
> many people who learn languages like Scheme are actually trying to apply 
> the imperative, Turing-style computational model to languages that don't 
> support them. And that reinforces all the more my intuition that pure FP 
> is not well-suited for mainstream professional programming.

 1. A functional "style" is not the same as a functional "language".
 The adoption of certain coding techniques that arose in functional
 languages for use in a language that is more object oriented and
 imperative in syntax in no way changes the fact that those techniques
 come from a programming style that arose due in large part to a
 functional syntax.

 2. I agree that *pure* functional programming is not well-suited to
 mainstream professional computing, but then, neither is *pure*
 imperative programming.  That doesn't change the fact that a whole lot
 of functional programming syntactic characteristics can be crammed into
 a language before passing the point of diminishing returns.  In fact, I
 think that something as simple as teaching students to use prefix
 arithmetic notation in grade school would turn the tables such that
 functional programming syntax would probably be by far the "most
 natural" to nascent programmers by quite a wide margin.

-- 
CCD CopyWrite Chad Perrin [ http://ccd.apotheon.org ]
Ben Franklin: "As we enjoy great Advantages from the Inventions of
others we should be glad of an Opportunity to serve others by any
Invention of ours, and this we should do freely and generously."