daveb@geac.UUCP (David Collier-Brown) (07/04/88)
In article <889@esunix.UUCP> bpendlet@esunix.UUCP (Bob Pendleton) writes: | So what does this have to do with the claim that all the shells I know | of are broken? Well... if shells were structured as an environment | server, an input line editor, a command line interpreter, and a batch | language interpreter (the last two could be one program) each a | separate but communicating process, then I could have the input line | editor I want and the command language I want. Mix and match to my desire. | Each of these programs would be a single function program instead of a | complex multifunction monolithic program. | | I know that mach provides an environment server, is anyone working on | a shell structured the way I've described? One upon a time, I had to write a module of such a shell as part of an Ada course (I did a spelling corrector/DWIM and didn't get finished). The design problems are many and subtle, but the eventual construct looked like a ring of "processors", each doing an operation on a commandline and then indicating if it should go "around the ring" again before being passed to the underlying command loader. Its a **good** idea! It doesn't exist on may machines because the problems of an integrated suite of independent functions/programs were poorly understood when Unix was designed, and people have merely followed precedent... --dave (some things are hard. Others just look hard) c-b ps: The inventor of the "ring" algorithm was Paul Stachour, Stachour@HI-MULTICS.ARPA -- David Collier-Brown. {mnetor yunexus utgpu}!geac!daveb Geac Computers Ltd., | "His Majesty made you a major 350 Steelcase Road, | because he believed you would Markham, Ontario. | know when not to obey his orders"