Hacker News new | ask | show | jobs
by rtpg 3861 days ago
>Since when functional programming is "radical"? It's the essence of computing.

It isn't representative of how processors work, unlike imperative programming. Even if the theory is there, the machine itself is imperative (most of the time), so there's a level of abstraction needed.

Though the theory could have started like that, the mechanisms are totally separated from the physical reality. In a field dominated by engineers (especially in a time where cycle counts mattered much more), that's what's going to happen.

2 comments

Well, increasingly that's untrue as machine operation begins to become more data flow oriented. Even before it hits the machine optimizations are often better performed on analyses which are more "functional" in nature. SSA is not so far from a functional language.
There were honest to god LISP machines built back in the day. They never really caught on however. They were mostly oriented at the educational market, and didn't ship with such niceties like an OS or even a bootloader sometimes.
>> the mechanisms are totally separated from the physical reality.

> There were honest to god LISP machines

As LISP-flavored stack machines, yes [0]. Alas that Linear Lisp [1] never received a hardware implementation [2].

To those exploring high level language architectures, forget not also the noble SCHEME-79 chip [3]: a Von Neumannian register machine, but one which executes a SCHEME interpreter microcoded in LISP.

[0] https://en.wikipedia.org/wiki/Lisp_machine#Technical_overvie...

[1] http://home.pipeline.com/~hbaker1/LinearLisp.html

[2] http://home.pipeline.com/~hbaker1/ForthStack.html

[3] http://dspace.mit.edu/handle/1721.1/6334