"Foundational" programming languages

Jan 15, 2008 19:19


I was reading this Smalltalk tutorial the other day. I found it excessively pedantic, but one turn of phrase caught my eye: the author claims that Smalltalk is a "foundational" programming language. I agree with him, but what does this term mean? I would say that to me, a foundational language is one which is such a good exemplar of a particular ( Read more... )

Leave a comment

Comments 2

pozorvlak July 19 2008, 12:37:06 UTC
There are also cool languages like Forth, Icon and APL (or its more modern successor J) that have many neat features but which I don't consider fundamental enough to be called foundational.

I think this says more about you than about them :-) Stack-based and array-based programming aren't just a matter of "many neat features" - they demand (and encourage) quite a radical shift of viewpoint.

While Perl has no desire to be foundational (it's very much a consolidator), I think you're selling it short, as it embodies some very interesting and unusual approaches to language design. To a good approximation, Perl explores the question " What if everything we think we know about language design is wrong?". The result doesn't please everybody, but I for one like it much more than Haskell :-)

Reply

pozorvlak March 25 2009, 06:01:53 UTC
I agree that Forth (or *some* stack-based language) should be considered just as fundamental as Lisp.

In Lisp, it's "evaluate a list by applying the function described by the first element, to the other elements". In Forth, it's "evaluate a symbol by applying the first element on the stack, to the next elements on the stack".

It's also the basis for way more than its share of firmwares (since it's both ridiculously easy to port, and extremely useful to programmers), and stack languages in general are the basis for a whole bunch of modern virtual machines.

Reply


Leave a comment

Up