Magic Paper(ID:432/mag010)Interactive maths environmentA system to permit man-machine interaction in the manipulation of mathematical expressions. (Sammett 1966) Early interactive symbolic math system. The name was given it by the legendary Dick Feynman. References: in [AFIPS JCC 24] Proceedings of the 1963 Fall Joint Computer Conference FJCC 1963, Las Vegas, Nev., Nov. 1963, view details in ACM Computing Reviews 5(05) September-October 1964 view details in [ACM] Proceedings of the ACM symposium on Symbolic and algebraic manipulation, 1966 view details in [ACM] CACM 9(08) August 1966 view details The Magic Paper system of Clapp and Kain was developed for the PDD-1. It uses a scope for both input and output and also permits input and output through typewriter and paper tape. The user can label equations, substitute, replace underlined symbols, remove equations, evaluate functions, and generate graphs. Some numerical operations are also permitted. in Advances in Computers, Vol. 8 FL Alt and M Rubinoff (Eds.), Academic Press, New York, 1967 view details in Computers & Automation 16(6) June 1967 view details in Bobrow, D. G. (ed) "Symbol Manipulation Languages and Techniques", Proceedings of the IFIP Working Conference on Symbol Manipulation Languages. North-Holland Publishing Co., Amsterdam, 1968 view details in Bobrow, D. G. (ed) "Symbol Manipulation Languages and Techniques", Proceedings of the IFIP Working Conference on Symbol Manipulation Languages. North-Holland Publishing Co., Amsterdam, 1968 view details MAGIC PAPER 1 Clapp and Kain (1963) described a system, now extinct, called MAGIC PAPER 1. This was a computer system primarily for symbolic mathematics, but it did allow some function evaluation and plotting on a display scope. MAGIC PAPER 1 was developed at Bolt, Beranek and Newman, Inc., Cambridge, Massachusetts, for a small timeshared computer (PDP-1). The console consisted of a typewriter, a display scope, and a lightpen. A paper tape reader and punch and several magnetic tape units were available for large scale input/ output and saving information off-line. Control of the calculations was handled by executive control characters which the user typed in. Some typical control characters follow: I--enter input mode ,--leave input mode p--display pointer on scope D--display figure EVAL--evaluate function Typical manipulations were insertion, substitution, multiplication of an equation by a term, transposition, and the addition of two equations. A function could be built up and then plotted on the scope to examine its graphical characteristics. The scope plots could be "zoomed" in and out to examine certain features in detail. Standard two-dimensional mathematical notation was used on the scope, while a linear typewriter notation was used for input. The following mathematical evaluation operators were included in the system: + addition - - subtraction X multiplication / division sum over an index between limits ~r product over an index between limits T exponentiation 0 [ ] parenthesisation if then when conditional expressions Notational flexibility was built into the MAGIC PAPER system by allowing the user to define new control and data interpretation operations as he proceeded with a problem. in [ACM] ACM Computing Surveys 2(4) Dec1970 view details The exact number of all the programming languages still in use, and those which are no longer used, is unknown. Zemanek calls the abundance of programming languages and their many dialects a "language Babel". When a new programming language is developed, only its name is known at first and it takes a while before publications about it appear. For some languages, the only relevant literature stays inside the individual companies; some are reported on in papers and magazines; and only a few, such as ALGOL, BASIC, COBOL, FORTRAN, and PL/1, become known to a wider public through various text- and handbooks. The situation surrounding the application of these languages in many computer centers is a similar one. There are differing opinions on the concept "programming languages". What is called a programming language by some may be termed a program, a processor, or a generator by others. Since there are no sharp borderlines in the field of programming languages, works were considered here which deal with machine languages, assemblers, autocoders, syntax and compilers, processors and generators, as well as with general higher programming languages. The bibliography contains some 2,700 titles of books, magazines and essays for around 300 programming languages. However, as shown by the "Overview of Existing Programming Languages", there are more than 300 such languages. The "Overview" lists a total of 676 programming languages, but this is certainly incomplete. One author ' has already announced the "next 700 programming languages"; it is to be hoped the many users may be spared such a great variety for reasons of compatibility. The graphic representations (illustrations 1 & 2) show the development and proportion of the most widely-used programming languages, as measured by the number of publications listed here and by the number of computer manufacturers and software firms who have implemented the language in question. The illustrations show FORTRAN to be in the lead at the present time. PL/1 is advancing rapidly, although PL/1 compilers are not yet seen very often outside of IBM. Some experts believe PL/1 will replace even the widely-used languages such as FORTRAN, COBOL, and ALGOL.4) If this does occur, it will surely take some time - as shown by the chronological diagram (illustration 2) . It would be desirable from the user's point of view to reduce this language confusion down to the most advantageous languages. Those languages still maintained should incorporate the special facets and advantages of the otherwise superfluous languages. Obviously such demands are not in the interests of computer production firms, especially when one considers that a FORTRAN program can be executed on nearly all third-generation computers. The titles in this bibliography are organized alphabetically according to programming language, and within a language chronologically and again alphabetically within a given year. Preceding the first programming language in the alphabet, literature is listed on several languages, as are general papers on programming languages and on the theory of formal languages (AAA). As far as possible, the most of titles are based on autopsy. However, the bibliographical description of sone titles will not satisfy bibliography-documentation demands, since they are based on inaccurate information in various sources. Translation titles whose original titles could not be found through bibliographical research were not included. ' In view of the fact that nany libraries do not have the quoted papers, all magazine essays should have been listed with the volume, the year, issue number and the complete number of pages (e.g. pp. 721-783), so that interlibrary loans could take place with fast reader service. Unfortunately, these data were not always found. It is hoped that this bibliography will help the electronic data processing expert, and those who wish to select the appropriate programming language from the many available, to find a way through the language Babel. We wish to offer special thanks to Mr. Klaus G. Saur and the staff of Verlag Dokumentation for their publishing work. Graz / Austria, May, 1973 in [ACM] ACM Computing Surveys 2(4) Dec1970 view details |