Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site kobold.UUCP Path: utzoo!linus!decvax!genrad!grkermit!masscomp!kobold!tjt From: tjt@kobold.UUCP (T.J.Teixeira) Newsgroups: net.cog-eng Subject: Re: Re: expert-friendly: are long names - (nf) Message-ID: <212@kobold.UUCP> Date: Fri, 2-Dec-83 02:20:32 EST Article-I.D.: kobold.212 Posted: Fri Dec 2 02:20:32 1983 Date-Received: Sun, 4-Dec-83 04:35:27 EST References: <4246@uiucdcs.UUCP> Organization: Masscomp, Westford, MA Lines: 37 Reading Scott Preece's article jogged my memory on where I had run into trouble with multi-component commands. Both TOPS-20 (Tenex) and VMS make heavy use of multi-component commands. For example, in VMS there are lots of commands of the form "SET ...". To change your current directory you use "SET DEFAULT device-name", to change modes on your terminal you use "SET TERMINAL [:device-name]/qualifiers". However, to set the value of a logical name, you use "DEFINE logical-name equiv-name". TOPS-20 uses a similar scheme, although "SET" is less ubiquitous. The problem comes in when you aren't quite sure what command you need to invoke next. I agree with Scott that apropos is a good tool here, although apropos is no better than the words used in the NAME line of the manual page (try 'apropos delete' -- for 4.1BSD the only hit is the dbm(3x) routines!). The HELP command in VMS was not quite as good, but was serviceable. I no longer remember if it allowed wild cards in early components such as "HELP * TERMINAL", but it wasn't too hard to converge on things by the sequence "HELP", "HELP SET", "HELP SET TERMINAL". I found TOPS-20 *much* harder to deal with. The HELP database on TOPS-20 only seems to describe subsystems and not the commands built into the command interpreter (EXEC). Instead, you have to use a combination of queries to the wildcard matcher and some inspired free association. Even then, the *only* help you get online are the parenthesized guidewords. You cannot find out about what choices are available for component n without having specified components 1 to n-1. In addition, far too many of the subsystems (and perhaps some of the commands) have guidewords that only specify the *type* of the argument (e.g. (FILE NAME)) and not the *use* of the argument (is it a source file or a destination file). Probably the object lesson here is: just as a "real programmer" can write Fortran programs in *any* language, you can have deficiencies in a command language no matter what model you follow. -- Tom Teixeira, Massachusetts Computer Corporation. Westford MA ...!{ihnp4,harpo,decvax,ucbcad,tektronix}!masscomp!tjt (617) 692-6200