taylor@sdcsvax.UUCP (Dave Taylor) (09/02/83)
When I worked at Hughes Aircraft last summer, I rewrote some of the system utilities for the project. One method of input flags that I tried that got rave reviews from those who later used the programs was; program -inflag1 -inflag2 +inflag3 filename ie; ls +long +size /usr/bin where the program merely scanned the minimum distinguishable abbreviation (MDA) to find out what the word was, and then ran along. This has the great advantage that as you proceed in your use of the system, you can begin to abbreviate the input flags (note that '+' turns an option on and '-' turns it off!) What do you all think? -- Dave Taylor UCSD Computer Science Dept
israel@umcp-cs.UUCP (09/06/83)
I wrote a multiple bulletin board system for unix that had the same conventions except that I went one step farther. To be specific, the syntax was "bbd [ <opts>* [ bboard ] ]* ", or in other words, opts, bboard, opts, bboard, ... . Options were set or unset as they applied to the bulletin board that followed them and this was done with "plus" and "minus" respectively. In addition, options could be set global or local. A locally set option applies to the bulletin board immediately following it, while a globally set option applies to all bulletin boards on the rest of the calling line (or until changed by a different setting of the same option). For example: bbd +Sf -DE system sf-lovers +d human-nets -s +E ai-list WorkS Would turn on 's' and 'f' and turn off 'd' and 'e' for system, Keep 's', 'd', and 'e' the way they were for sf-lovers (but reset 'f' to the default setting), Turn 'd' back on temporarily for human-nets only (but it would come back on again after that, turn 's' off temporarily and 'e' on permanently for ai-list, and then 's' would come back on and 'e' would stay on for 'WorkS'. I always felt that this scheme of options was orthogonal, very straightforward, and also easy to learn and use, though I am obviously biased. The local users do seem to be able to use it without problems, (but don't really need to use it to the extent or complexity of the above example). -- ~~~ Bruce Computer Science Dept., University of Maryland {rlgvax,seismo}!umcp-cs!israel (Usenet) israel.umcp-cs@Udel-Relay (Arpanet)