www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Functional language in D

reply vanh <vanh dslextreme.com> writes:
I'm just wondering how much of functional language is in D?
And how useful it would bring if it is added into D?

vtp
Feb 27 2007
parent reply Bill Baxter <dnewsgroup billbaxter.com> writes:
vanh wrote:
 
 I'm just wondering how much of functional language is in D?
 And how useful it would bring if it is added into D?
 
 vtp

It has proper tail recursion. That makes a lot of functional techniques feasible, at least in principle. But there's not much in the way of generic functional algorithms in the core. Map, reduce, apply, etc, aren't in the std library. foreach is in the core, though. That's kind of a functional thing. What are you looking for exactly? Something like Boost::lambda or more like ML? The former is becoming more and more doable, the latter probably won't happen. --bb
Feb 27 2007
parent reply vanh <vanh dslextreme.com> writes:
Bill Baxter wrote:
 vanh wrote:
 I'm just wondering how much of functional language is in D?
 And how useful it would bring if it is added into D?

 vtp

It has proper tail recursion. That makes a lot of functional techniques feasible, at least in principle. But there's not much in the way of generic functional algorithms in the core. Map, reduce, apply, etc, aren't in the std library. foreach is in the core, though. That's kind of a functional thing. What are you looking for exactly? Something like Boost::lambda or more like ML? The former is becoming more and more doable, the latter probably won't happen. --bb

Boost::lambda like is what I'm looking for. vtp
Feb 28 2007
next sibling parent Daniel Keep <daniel.keep.lists gmail.com> writes:
vanh wrote:
 Bill Baxter wrote:
 vanh wrote:
 I'm just wondering how much of functional language is in D?
 And how useful it would bring if it is added into D?

 vtp

It has proper tail recursion. That makes a lot of functional techniques feasible, at least in principle. But there's not much in the way of generic functional algorithms in the core. Map, reduce, apply, etc, aren't in the std library. foreach is in the core, though. That's kind of a functional thing. What are you looking for exactly? Something like Boost::lambda or more like ML? The former is becoming more and more doable, the latter probably won't happen. --bb

Boost::lambda like is what I'm looking for. vtp

We're pretty close... got the 'bind' bit down: http://www.digitalmars.com/d/phobos/std_bind.html And here I was thinking I'd get to pimp my functools module :P -- Daniel -- Unlike Knuth, I have neither proven or tried the above; it may not even make sense. v2sw5+8Yhw5ln4+5pr6OFPma8u6+7Lw4Tm6+7l6+7D i28a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP http://hackerkey.com/
Feb 28 2007
prev sibling parent reply Bill Baxter <dnewsgroup billbaxter.com> writes:
vanh wrote:
 Bill Baxter wrote:
 vanh wrote:
 I'm just wondering how much of functional language is in D?
 And how useful it would bring if it is added into D?

 vtp

It has proper tail recursion. That makes a lot of functional techniques feasible, at least in principle. But there's not much in the way of generic functional algorithms in the core. Map, reduce, apply, etc, aren't in the std library. foreach is in the core, though. That's kind of a functional thing. What are you looking for exactly? Something like Boost::lambda or more like ML? The former is becoming more and more doable, the latter probably won't happen. --bb

Boost::lambda like is what I'm looking for.

I guess you saw this from a few minutes ago? http://www.prowiki.org/wiki4d/wiki.cgi?DanielKeep/functools (reposting Daniel's link because he posted it to a different thread, though with the same subject line.) --bb
Feb 28 2007
parent vanh <vanh dslextreme.com> writes:
Bill Baxter wrote:
 vanh wrote:
 Bill Baxter wrote:
 vanh wrote:
 I'm just wondering how much of functional language is in D?
 And how useful it would bring if it is added into D?

 vtp

It has proper tail recursion. That makes a lot of functional techniques feasible, at least in principle. But there's not much in the way of generic functional algorithms in the core. Map, reduce, apply, etc, aren't in the std library. foreach is in the core, though. That's kind of a functional thing. What are you looking for exactly? Something like Boost::lambda or more like ML? The former is becoming more and more doable, the latter probably won't happen. --bb

Boost::lambda like is what I'm looking for.

I guess you saw this from a few minutes ago? http://www.prowiki.org/wiki4d/wiki.cgi?DanielKeep/functools (reposting Daniel's link because he posted it to a different thread, though with the same subject line.) --bb

vtp
Mar 01 2007