To view parent comment, click here.
To read all comments associated with this story, please click here.
From this section, what I extract is...
-B handled strings like crap (indeed, for coding something like UNIX where just about everything is a string, this sounds like a big issue ^^)
-B didn't handle floating point data properly, due to its will to treat everything as a word
-B's pointer mechanism was slow
-B was much slower than Assembly as a whole
So it sounds like we have a mixture of language limitations (lack of control) and heavy performance issues, particularly in terms of pointer handling.
Wouldn't we have the same issues with "safe" languages like C# or Java nowadays ?
I mean, I have a hard time picturing myself a scheduler written in Java, as an example, with GC kicking in and freezing the computer in the middle of a task switch.
Edited 2011-01-16 20:32 UTC
Then please take some time to read about Oberon operating system:
http://www-old.oberon.ethz.ch/WirthPubl/ProjectOberon.pdf
The Spin operating system
http://www-spin.cs.washington.edu/
The Inferno operating system, which is partially programmed in Limbo
http://code.google.com/p/inferno-os/
The Microsoft Singularity project
http://research.microsoft.com/en-us/projects/singularity/
The Java Sqwak VM is mainly written in Java and runs on bare metal
http://labs.oracle.com/projects/squawk/
Just to name a few well known projects in the area of operating system research.
Edited 2011-01-16 22:18 UTC





Member since:
2005-07-13
Apparently, B - the successor to BCPL and predecessor of C - was an awkward fit for the PDP-11. Take a look at the section entitled "The problems of B" from Ritchie's historical treatise:
http://cm.bell-labs.com/cm/cs/who/dmr/chist.html