www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - What's your opinion on Functional D?

reply =?ISO-8859-1?Q?Hans-Eric_Gr=f6nlund?= <hasse42g gmail.com> writes:
A little shameless self-promotion here, but I'd really love to hear your
opinions on the subject:

http://www.hans-eric.com/2008/04/16/the-future-of-d-is-functional/
Discussion on Reddit: http://reddit.com/r/programming/info/6fyrd/comments

Regards

Hans-Eric Grönlund
Apr 16 2008
next sibling parent Jesse Phillips <jessekphillips gmail.com> writes:
On Wed, 16 Apr 2008 08:05:26 -0400, Hans-Eric Grönlund wrote:

 A little shameless self-promotion here, but I'd really love to hear your
 opinions on the subject:
 
 http://www.hans-eric.com/2008/04/16/the-future-of-d-is-functional/
 Discussion on Reddit:
 http://reddit.com/r/programming/info/6fyrd/comments
 
 Regards
 
 Hans-Eric Grönlund

I am actually looking forward to the release of D2. The large change in direction is definitely one that is likely to drive people away. In fact when I was first doing reading on function programming, I had thought about the possibility of having a language set, where you would have different languages that would each have their own paradigm, but easily used within one another. In any case I do believe that D should go forward as incorporating the paradigms into one. Yes the original goal was to make a better C++, and it has been getting greater recognition. I think if D wishes to change its direction, now is the time to do it. Of course I always like trying new things, but I would think that is common for a lot of users of D <g>.
Apr 16 2008
prev sibling next sibling parent "Craig Black" <cblack ara.com> writes:
I completely agree with this article.  Pure functions may have some utility, 
but the cost of complexity, both in the compiler implementaiton and the 
syntax may not be worth the benefit.  IMO, there are other abstractions that 
support threaded programming that fit better with imperative languages. 
Herb Sutter's idea for active classes comes to mind here.

-Craig 
Apr 16 2008
prev sibling next sibling parent h010 <newgolo optusnet.com.au> writes:
On Wed, 16 Apr 2008 08:05:26 -0400, Hans-Eric Grönlund
<hasse42g gmail.com> wrote:

A little shameless self-promotion here, but I'd really love to hear your
opinions on the subject:

brain has swirling questions from my functional parallel subconcious, and I have taken in only the basic concepts of functional (invariant style) programming, from following the references given so far in this news group. what is the vision for functional D? I would like to understand a broader example of how an application / library practical example can be coded in functional and imperative parts. Little code bits do not mean much out of a practical task context. Write the example, then craft the compiler to show it off. Tell us what has been possible with the functional approach. How well functional approach helped in other functional capable languages? I presume its the hard part, getting good productivity of bug free code with reasonable performance from fallable human programmers. How will a largely imperative code application fire off multi-threaded functional parts and synchonize them in the larger application design?. Or are we going to write largely functional programs which have allowed bits of imperative code in them? How much extra complexityin D? Does it add coding cost (or simplification), for how much gain? It must be hard to say with something new and with imperfect knowledge of how its going to go. How much of current D will have to change? How much futher for D2? How long before a functional D implementation will be avaiable for production code? Will there be functional and imperative styled versions of libraries? Is there a trade off between single thread performance loss vs multithreaded performance gain? As a plodding imperative programmer I lack experience in the functional programming world. If its an extra bonus for D as it is, additional functional programming choices sound great, as long as imperative capabilities not lost. If the compiler can do the grunt work for the programmer,if D has a functional destiny, go for it. Is this the killer niche for D? Michael Rynn
Apr 18 2008
prev sibling parent Michael Rynn <michaelrynn optushome.com.au> writes:
On Wed, 16 Apr 2008 08:05:26 -0400, Hans-Eric Grönlund
<hasse42g gmail.com> wrote:

A little shameless self-promotion here, but I'd really love to hear your
opinions on the subject:

brain has swirling questions from my functional parallel subconcious, and I have taken in only the basic concepts of functional (invariant style) programming, from following the references given so far in this news group. what is the vision for functional D? I would like to understand a broader example of how an application / library practical example can be coded in functional and imperative parts. Little code bits do not mean much out of a practical task context. Write the example, then craft the compiler to show it off. Tell us what has been possible with the functional approach. How well functional approach helped in other functional capable languages? I presume its the hard part, getting good productivity of bug free code with reasonable performance from fallable human programmers. How will a largely imperative code application fire off multi-threaded functional parts and synchonize them in the larger application design?. Or are we going to write largely functional programs which have allowed bits of imperative code in them? How much extra complexityin D? Does it add coding cost (or simplification), for how much gain? It must be hard to say with something new and with imperfect knowledge of how its going to go. How much of current D will have to change? How much futher for D2? How long before a functional D implementation will be avaiable for production code? Will there be functional and imperative styled versions of libraries? Is there a trade off between single thread performance loss vs multithreaded performance gain? As a plodding imperative programmer I lack experience in the functional programming world. If its an extra bonus for D as it is, additional functional programming choices sound great, as long as imperative capabilities not lost. If the compiler can do the grunt work for the programmer,if D has a functional destiny, go for it. Is this the killer niche for D? Michael Rynn
Apr 18 2008