Gary Willoughby: "Why Go's design is a disservice to intelligent programmers"
weaselcat via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Mon Mar 30 11:53:57 PDT 2015
On Monday, 30 March 2015 at 18:41:17 UTC, Russel Winder wrote:
> On Mon, 2015-03-30 at 11:19 -0700, Walter Bright via
> Digitalmars-d-announce wrote:
>> […]
>>
>> My brain still thinks in terms of loops.
>
> The excellent influence of functional programming on imperative
> programming is implicit iteration and higher-order functions.
>
> Any explicit for/while loop in a modern imperative language code
> should *necessarily* involve a side-effect or it is coded
> wrongly.
> Even then it can almost certainly be recast to preserve the
> side-
> effect and remove the loop – unless you are implementing the
> implicit
> iteration function.
>
> This has nothing to do with tail recursion optimization and all
> that
> Lambda Calculus stuff, this is to do with correct levels of
> abstraction that allow the tool chain to maximize support for
> the
> programmer.
>
> Java programmers are having to come to terms with this. Python
> programmers sort of have, except that BDFL has failed to accept
> the
> correct end point and still likes loops. Scala has done it all
> wrong.
> (Further opinions available on request :-)
speaking of optimization, are there any guarantees(documented?)
on the kind of optimizations you should expect from range
programming in D(i.e, function chaining) similar to Haskell's
stream fusion?
More information about the Digitalmars-d-announce
mailing list