The development path of AmigaOs is somewhat convoluted.
AmigaOs is already hard to maintain as of today. Translating it into assembler makes it even harder to maintain, and harder to upgrade. Not a good deal if you ask me. Assembler code might be quick, streamlined efficient, but also bug-ridden, and "not yet quite ready, sorry."
Well yes, translating all of the code into assembler will take quite some time. But, key components can be translated one at a time and tested for compatility. I take your point about exec, the only part you can't really mess with a lot without breaking something somewhere is exec and intuition. That has to be present at the turnkey stage, ie, burnt into a ROM, or sideways ROM mapped in a 32 bit Amiga.
Lattice C 5 came from Lattice, not CBM. The SAS institute bought it later on and released version 6 as SAS/C.
Didn't know that, like I said, C isn't my thing. Yeah, I recall arp.library being a seperate component. I guess the whole history is different exec's and family sets of Workbench and KS resources being used, some shunted in, some shunted out.
I just find it fascinating that you can recode bits of it and shunt different versions of libraries and devices into and out of a system by copying files and reboot. With differing levels of success for getting things working, it would seem. Or load a different module device or library to replace the one started with from the KS ROM.
Oh yeah, Thomas, respect for looking at the 68040 library. I played with one once, reviewed it as a current draining, hot beast, but I didn't click that the 68040.llibrary was eating memory as it ran. I put it down to hardware issues, not a software problem in the 68040.library. Then again, I only had it a couple days. Not like I really had much time to check. Respect for sorting that issue out.
EDIT: I think I get the point about dos.library really calling the tunes as far as smartly using the right library without the end user being aware of it. But, it seems to me that rather than the program choosing the library for WB2 and later, it's more a case of the programmer chooses roughly what will be used, and the end user has to find and slot in the best fit of device and library and maybe handler for their system and application, if the one they are using doesn't do the job properly. That was always true, very few people ever bothered with loadseg. I didnt. I haven't looked at Ralph Babels book, seems he is upset at an early public release in English so just sticks with the German for the current release. Ignorant? Well, I'm a bit busy right now, will try to catch up later on an 800 page technical document written in German.