Functional Programming in D

H. S. Teoh hsteoh at quickfur.ath.cx
Thu Oct 10 10:08:14 UTC 2019


On Thu, Oct 10, 2019 at 09:59:49AM +0100, Russel Winder via Digitalmars-d-learn wrote:
> On Wed, 2019-10-09 at 11:12 -0700, H. S. Teoh via Digitalmars-d-learn wrote:
> […]
> > Actually, std.functional is somewhat of a misnomer. It mostly deals
> > with higher-order functions, i.e., functions that return functions,
> > currying, that sort of thing.  These are part of functional
> > programming, but there's more to functional programming than that.
> > I'd say std.range and std.algorithm are another major part of
> > functional-style programming support in D, along with the purity
> > system.
> […]
> 
> I feel that it is best to leave functional programming to functional
> programming language, e.g. Haskell, Scheme, etc. rather than try to do
> functional programming in imperative languages, e.g. Java, C++, Rust,
> D.
[...]

Note this is why I wrote "functional-style programming" w.r.t. D, rather
than "functional programming". Clearly, what D has isn't "real"
functional programming in the strict sense, but it does share similar
characteristics when written in that style.


T

-- 
It is of the new things that men tire --- of fashions and proposals and
improvements and change. It is the old things that startle and
intoxicate. It is the old things that are young. -- G.K. Chesterton


More information about the Digitalmars-d-learn mailing list