Path: utzoo!attcan!uunet!husc6!mailrus!cornell!uw-beaver!tektronix!tekgen!tekigm2!phils From: phils@tekigm2.TEK.COM (Philip E Staub) Newsgroups: comp.sys.amiga Subject: Re: aliases and RUN Message-ID: <3792@tekigm2.TEK.COM> Date: 12 Nov 88 21:22:17 GMT References: <5230@louie.udel.EDU> <483@boing.UUCP> <2975@sugar.uu.net> Reply-To: phils@tekigm2.TEK.COM (Philip E Staub) Organization: Tektronix, Inc., Beaverton, OR. Lines: 76 In article <2975@sugar.uu.net> peter@sugar.uu.net (Peter da Silva) writes: >In article <483@boing.UUCP>, dale@boing.UUCP (Dale Luck) writes: > [Rewrite the CLI...] > >I'd say... dump the CLI completely. Switch to a workbench environment. > Why? I hope you're kidding about this one. One reason I bought an Amiga instead of a Mac is that with the Amiga the icon oriented user interface is optional for those applications where it is appropriate, while on the Mac it is not. >Now, you can still have shells and command line interpreters, but make them >spawn programs in a workbench environment. So now you have the overhead of Workbench even when all you wanted was a CLI to begin with. I suppose you could make the same statement about Workbench having to deal with CLI's overhead, but somehow I don't think thats quite the same story. > ... >New programs would still work correctly from the WB, since wa_Lock is a >reasonable definition of the current directory and wa_Name is the command >name when run from that directory. If sm_NumArgs is 1, then you can use >the command line (feed it to existing _main()). If it's >1, then you know >you're in a workbench-only environment and you parse sm_Arglist normally. > One of my biggest beefs about the WB environment is that it is too difficult to change options. In my book, the inability to pass switches conveniently to a program (or perhaps more pointedly, to *change* the switches you pass to a program) negates the benefits of the nice icon oriented environment. Having to call up a utility to alter the arguments you pass doesn't cut it. (Of course *the* biggest beef is the '.info' files). > >Existing WB programs can still be executed by just typing in their name. The >wa_Lock will be wrong, but since wa_Name is a full path name they'll still >be able to open their .info file. > >Existing CLI-only programs will crash. This is the biggy. Anyone have any >ideas? You bet its the biggy. > >There's no easy way to pass stdin, stdout, stderr, and stdcmd. Anyone have >any ideas? Without breaking too many programs, please... > >Maybe make sm_NumArgs==0 a special case indicating that sm_ArgList is an a >new format (current directory, standard locks, argv...?)? > >What are the advantages? The big one, of course, is we can kiss struct >CommandLineInterface goodbye. >-- > Peter da Silva `-_-' peter@sugar.uu.net > Have you hugged U your wolf today? > > Disclaimer: My typos are my own damn business. I guess my feeling is that when you build layered software, you start with the primitive layers and build higher levels of capability upon it. Not start with a high level capability and implement access to the primitive regions of the machine with kludges. Maybe I misunderstood your intent here, but this is exactly what I feel you would be doing by making CLI run under Workbench, rather than the other way around. Am I just dense, or what? Phil -- ------------------------------------------------------------------------------ Phil Staub Tektronix, Inc., Vancouver, Washington 98668 phils@tekigm2.MEN.TEK.COM