On 03.04.2011 09:48, Phillip G. wrote:
On Sun, Apr 3, 2011 at 7:29 AM, Mike S.[email protected] wrote:
But the other point is why does everybody make languages so difficult
these days?
I am not sure I fully agree to this observation. First, I believe
languages are rather becoming simpler than more complex these days. On
the other hand with increased power of hardware and increased volume of
library code the problems that we tackle today are becoming increasingly
complex. Also, the mere fact that we need to utilize concurrency to
solve problems (because single CPU isn’t going to grow that much in the
near future) does make applications more complex.
And really, if you have problems with recursiveness, I dare say that
you didn’t enjoy college, considering the importance of maths in the
natural sciences. Just plain ol’ acceleration is a recursive function:
changes of velocity over time are easiest calculated by recursion,
wouldn’t you say?Functional programming requires a particularly, let’s say
anal-retentive, mindset, given the importance of type safety, and that
variables, usually, aren’t variables. On the flipside, it makes
concurrency easier, and is a boon for critical code (you know,
robotics, MRI scanners,&c.).
Personally what I find most difficult to grasp about functional
programming is not the paradigm itself but rather the feature of Lisp
that macros and functions are syntactically indistinguishable. While
this makes for elegant solutions on one hand it can be confusing to read
on the other (and just think about the various quoting mechanisms of
Lisp). YMMV though.
Of course, you have to encourage people to invent Lambda Calculus and
then turn it into a computing language but such university thesis ideas
shouldn’t be seen as the model for real world products.Yet there were ~7000 LISP machines sold (at, say, 100 000 per unit,
that’s still quite a bit of revenue):
Even if there weren’t where’s the argument? All engineering is based on
results of science of one form or another (and math is often one of
them). If research turns up something which can be used to model real
world phenomena of a particular class more efficiently than other
approaches then it should (and will) be used. There’s still enough room
to apply other approaches and nobody forces Mike to go functional, does
he?
Kind regards
robert