apropos of language wars wsa Re: [Beowulf] Which is better
Jim Lux
James.P.Lux at jpl.nasa.gov
Wed Jan 21 17:31:13 EST 2004
At 11:46 AM 1/21/2004 -0500, Robert G. Brown wrote:
< a whole pile of stuff in response to Jakob's whole pile of stuff, all
quite interesting, but irrelevant to my comments inserted below>
> So, any language that provides easy direct access to those C APIs have a
> > chance of being "the one true language".
>
>You miss my point entirely. The argument is that C is a thin veneer on
>top of assembler -- so thin that one CAN write an operating system in
>it. Imagine writing an operating system in LISP. Wait, don't do that.
>The results are too horrible to imagine. Imagine doing it on top of
>fortran, instead. That's bad, but you won't have nightmares for more
>than a week or two afterwards. (IIRC, somebody actually did this once.)
I should imagine that more than one person has written what amounts to an
operating system (or, at least the kernel, meaning file system and
scheduler/task management) in FORTRAN or other less than ideal
languages. Certainly I have done both (although, thankfully, not in the
same system!..).. (Gosh, I had to write a good part of an OS in MIXAL as an
assignment in college, something I wouldn't wish on an enemy)
Many, many laboratory/instrument control kinds of applications have been
written in Basic or FORTRAN, and they tend to have all the sorts of things
one expects in a scheduler (variable rate events, threads, timed execution,
priorities, etc.), although, granted, with a somewhat adhoc arrangement of
interfaces and so forth (and with varying degrees of independent contexts
(ah, the memories of using Blank COMMON, and implementing linked lists and
heaps in FORTRAN arrays). You use what's available. Some of the low level
BASIC's out there for microcontrollers like the BASICStamp are quite close
to a "formatted assembler".
I'd also point you to ESPOL, which was the native language of Burroughs
mainframes in the 70's. The OS (Master Control Program, MCP, in my
recollection) was written in (only) ESPOL. It's a variant of Algol, uses
polish notation for arithmetic, etc. There was no "assembler" per se for
these machines (although, there must have been some binary equivalent for
the ESPOL statements. In any case, the machine was designed to be
programmed in high level languages, and didn't leave such essential things
like array bounds checking, linked list manipuation, or memory allocation
to some hacker flinging out assembler in a library. Nope, it's in the CPU
as a native opcode.
James Lux, P.E.
Spacecraft Telecommunications Section
Jet Propulsion Laboratory, Mail Stop 161-213
4800 Oak Grove Drive
Pasadena CA 91109
tel: (818)354-2075
fax: (818)393-6875
_______________________________________________
Beowulf mailing list, Beowulf at beowulf.org
To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf
More information about the Beowulf
mailing list