On May 30, 10:28 pm, Chris Angelico <ros...@gmail.com> wrote: > On Fri, May 31, 2013 at 3:12 AM, rusi <rustompm...@gmail.com> wrote: > > You associate the primal (f)act of thinking about programming with > > *doing* the generating. > > By contrast the functional programmer thinks about what *is* the > > result. > > I wish you'd explain that to my boss :) He often has trouble > understanding why sometimes I put two syntactic statements on one > line, such as: > > for (int i=0;i<nfoo;++i) if (foo[i].marker) > { > //do something with foo[i] > > } > > In Python, that would probably be done with a list comprehension or > some other form of filtered iteration, and is to my mind a single > operation - "iterate over all the marked foo" is just as much a valid > loop header as "iterate over all the foo". This is a simple example, > and what you say about thinking about what *is* the result doesn't > really translate well into a C++ example, but the broader concept > applies: there's a difference between code as the compiler/interpreter > sees it and code as the programmer sees it, and there is not always a > 1:1 correspondence of statements. > > ChrisA
I had a blog post about line-length in programs http://blog.languager.org/2012/10/layout-imperative-in-functional.html followed by an interesting discussion on the haskell mailing list http://groups.google.com/group/haskell-cafe/browse_thread/thread/f146ec7753c5db56/09eb73b1efe79fec The comment by Alexander Solla was insightful and is probably what you are saying. [Probably!! I am not sure what you are saying!] -- http://mail.python.org/mailman/listinfo/python-list