Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 (MC840302); site mcvax.UUCP Path: utzoo!watmath!clyde!floyd!harpo!decvax!mcvax!steven From: steven@mcvax.UUCP (Steven Pemberton) Newsgroups: net.cog-eng,net.lang Subject: Re: Time for keyword parameters in prog. langs Message-ID: <5775@mcvax.UUCP> Date: Tue, 10-Apr-84 11:07:58 EST Article-I.D.: mcvax.5775 Posted: Tue Apr 10 11:07:58 1984 Date-Received: Wed, 11-Apr-84 07:27:30 EST References: <3781@utcsrgv.UUCP> Organization: CWI, Amsterdam Lines: 32 There is already a language that has most of the features mentioned, namely the new language 'B' (no relation to the predecessor of C: the name is a working title). All commands in the language use keywords (eg PUT a IN b is the assignment command) and this includes procedure calls (eg MOVE gold FROM cave TO building). The language is part of a programming environment that includes an editor that knows about user-defined commands. Thus assuming the existence of the above MOVE command, when you type the initial M (which you don't have to type in upper-case) you get something like M_OVE ? FROM ? TO ? Pressing the tab key accepts the suggestion and takes you to the first parameter position. If you don't want the MOVE command, then you type more letters, and if the editor knows a command beginning with what you've typed it suggests that. Things like closing brackets and closing quotes are also supplied for you. It is also worth mentioning that the programming environment is self- contained. B serves as both programming language and job-control language. Furthermore, since you are always in the editor, there is no need for short cryptic commands (like 'rm') since for instance D[tab] gives you DELETE (the equivalent of rm). There is an implementation for Un*xes, and a newsletter; if you're interested mail me. More details on the language in SIGPLAN Dec 1982; on the environment in the newsletter; on the implementation in the proceedings of the last Uniforum conference. Steven Pemberton (steven@mcvax) POB 4079, 1009 AB, Amsterdam, The Netherlands