Old languages New software.

Alan Grimes alangrimes@starpower.net
Thu Jul 5 08:50:02 2001


It is painfully obvious how inadiquate traditional programming languages
are to contemporary hardware and software needs. 

Attempts to use C as a truly conurrent language are sloppy at best. 

The standard libraries make far too many assumptions about the type of
User interface being used. If one were to devine what the capabilities
of a C os were, one would think that everybody still used teletype
terminals. =P  (I am not fully up to speed on ALL ANSI C libraries but
the general idea behind this point is still valid). 

One thing that really sucks about C, that is important to my OS, is that
when one wants to write an object oriented system that publishes
different interfaces to its internal and external environments there are
no compiler/linker directives (that I am aware of) that can be sent to
the binary that will dictate where things get published. 

If one manages to get that done, it becomes vital (in a conventional
implementation) that the 'ABI' remain constant for all languages on the
system. When you call the filesystem and it returns to you a file
object; your compiled code must be able to use the returned object data
sturcture. Going the other road, having things compiled dynamicly, may
solve the first problem but it raises tons of other problems because all
languages in the system must map to a single back-end which is
guarenteed to produce consistient binaries. 

I have not done much work directly on Sphere reciently, while I focus on
studying compilers and programming languages. I can only say that
converting high-level language systems to work with innovative new OSes
is probably the single biggest challenge in getting these new OSes
running...

I guess an alternative would be to byte the bullet and write the monster
in ASM and then bootstrap the compiler on the new OS, but that would be
far too expensive for me... =\ 


-- 
Libertarians: Left wing conservatives. =)   www.lp.org
http://users.erols.com/alangrimes/  <my website.
Any usage of this e-mail account is subject to the terms and conditions
specified on my website.