[nomenclature] systems language
div0
div0 at sourceforge.net
Sat Oct 16 16:42:24 PDT 2010
On 16/10/2010 19:27, Paulo Pinto wrote:
> Would that make Smalltalk, Lisp, Oberon, Modula-3, Component Pascal, Ada,
> Mac Pascal system programming languages?
>
> All of them were used to write operating systems, in some of them the
> operating system and
> language are the same, kind of.
Well true, but the main problem with a lot of those systems is that you
can only program on them in that language; they are all special
execptions rather than general computers.
They used to make h/w Lisp machines back in the late 70s, where all the
OS was written in Lisp; but you could only program them in Lisp. I
wonder how they did the garbage collector as Lisp doesn't have pointers?
I guess they either wrote the garbage collector entierly in assembly or
added a bunch of Lisp functions to allow them to manipulate the address
space, effectively added pointers to the language.
For C, in principle you only need a trivial amount of assembly to handle
the processor specific calls to switch privilege levels and load
process/thread state.
For something like Java/Python you'd need a huge amount of assembly if
you wanted to avoid using another lower level language.
There's nothing special about a systems language; it's just they have
explicit facilities that make certain low level functionality easier to
implement. You could implement an OS in BASIC using PEEK/POKE if you mad
enough.
--
My enormous talent is exceeded only by my outrageous laziness.
http://www.ssTk.co.uk
More information about the Digitalmars-d
mailing list