Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!caen!kuhub.cc.ukans.edu!hawk!billk Newsgroups: comp.lang.misc Subject: The Language List, Version 1.1 (Part 4 of 5) Message-ID: <1991Apr28.154007.4997@hawk.cs.ukans.edu> From: billk@hawk.cs.ukans.edu (Bill Kinnersley) Date: Sun, 28 Apr 1991 15:40:07 GMT References: <1991Apr28.153544.4615@hawk.cs.ukans.edu> Organization: University of Kansas Computer Science Dept Lines: 745 ---- Nuprl - Nearly Ultimate PRL. (pronounced "new pearl"). Interactive creation of formal mathematics, including definitions and proofs. The language has an extremely rich type system, including dependent functions, products, sets, quotients and universes. Built on Franz LISP and Edinburgh ML. "Implementing Mathematics in the Nuprl Proof Development System", R.L. Constable et al, P-H 1986. NYAP - Early system on IBM 704. Listed in CACM 2(5):16 (May 1959). NYU, OMNIFAX - [sic] Early system on UNIVAC I or II. Listed in CACM 2(5):16 (May 1959). O2 - No details. OBE - Office By Example. Sequel to QBE, Moshe Zloof, IBM, early 1980's. Descriptions published but apparently never implemented. Oberon - Wirth, 1988. A descendant of Modula-2 that eliminates many things: variant records, enumeration types, subranges, lower array indices and for loops. Additions are extensible record types, multidimensional open arrays and garbage collection. "The Programming Language Oberon", N. Wirth, Soft Prac & Exp 18(7):671-690 (July 1988). ftp: neptune.inf.ethz.ch for Mac, SPARC, DECstation. OBJ - A declarative "ultra high level" language. Abstract types, generic modules, subsorts (subtypes with multiple inheritance), pattern-matching modulo equations, E-strategies (user control over laziness), module expressions (for combining modules), theories and views (for describing module interfaces). For the massively parallel RRM (Rewrite Rule Machine). "Principles of OBJ2", K. Futatsugi et al in Proc 12th ACM Symp on Princs of Prog Langs, B. Reid ed, ACM 1985, pp.52-66. Object-Oberon - H. Moessenboeck & J. Templ, 1989. An Oberon extension, adding classes and methods. Object Pascal - Apple. "Object Pascal Report", Larry Tesler, Structured Language World 9(3) 1985. Objective C - Brad Cox. An object-oriented extension of C, incorporating many ideas from Smalltalk. Implemented as a front end for the C compiler. Used as the system programming language on the NeXT. Thousands of users. "Object-Oriented Programming: An Evolutionary Approach", Brad Cox, A-W 1986. OBSCURE - "An Introduction to the Specification Language OBSCURE", J. Loeckx, TR A85/15, U Saarlandes, Saarbrucken, 1985. OCAL - On-Line Cryptanalytic Aid Language. That says it all. Sammet 1969, p.642. OCAS - On-line Cryptanalytic Aid System. System that contains OCAL. Sammet 1969, p.642. occam - 1982. (Named for the 14th cent. philosopher William of Occam.) Concurrent algorithms, based on CSP and EPL, David May et al, 1982. Designed for the INMOS transputer and vice versa. Each expression is a process, which may be combined in serial and parallel. Processes communicate via named unidirectional channels. "Occam", D. May, SIGPLAN Notices 18(4):69-79 (1983). ftp: watserv1.waterloo.edu (simulator for VAX, Tahoe) list: occam@sutcase.case.syr.edu occam 2 - 1987. An extension of occam (now known as occam 1). Occam 2 has floating point, functions and a type system. There is *no* operator precedence. There are many thousands (probably millions) of lines of code written in it. (occam 1 is really only used as a teaching language, and is more-or-less obsolete). The main compiler for occam 2 targets INMOS transputers, but there may be other experimental compilers in existence. "occam 2 Reference Manual", INMOS, P-H 1988, ISBN 0-13-629312-3. OLC - On-Line Computer system. UCSB ca. 1966. Predecessor of Culler-Fried System. Sammet 1969, p.253. OMNICODE - Early language by Thompson, 1956. IBM 650. Sammet 1969, p.5. OMNIFAX - Alternate name for NYU OMNIFAX? Early system on UNIVAC I or II. Listed in CACM 2(5):16 (May 1959). OMNITAB - Statistical analysis and desk calculator. "OMNITAB II User's Reference Manual", NBS Tech Note 552 (Oct 1971). Sammet 1969, p.296. Version: OMNITAB II. Opal - 1. DSP language. "OPAL: A High Level Language and Environment for DSP boards on PC", J.P. Schwartz et al, Proc ICASSP-89, 1989. 2. Language of the object-oriented database GemStone. "Making Smalltalk a Database System", G. Copeland et al, Proc SIGMOD'84, ACM 1984, pp.316- 325. OPS - 1. On line Process Synthesizer. Discrete simulation under CTSS. Sammet 1969, p.660. 2. Official Production System. Rule-based language for building expert systems, CMU 1970. OPS/5 - 1977 version of OPS [2]. "Programming Expert Systems in OPS5", L. Brownston et al, A-W 1985. Orca - Shared data objects. One version runs on Tanenbaum's Amoeba distributed OS. "Orca: A Language for Distributed Processing", H.E. Bal et al, SIGPLAN Notices 25(5):17-24 (May 1990). ORTHOCARTAN - Computer algebra system specialized in General Relativity. A. Krasinski, Warsaw, Poland, early 80's. Orwell - Lazy functional language, very similar to Miranda. List comprehensions and pattern matching. "Introduction to Orwell", P. Wadler, Programming Research Group, Oxford U. OSCAR - Oregon State Conversational Aid to Research. Interactive numerical calculations, bvectors, matrices, complex arithmetic, string operations. "OSCAR: A User's Manual with Examples" J.A. Baughman et al, CC, Oregon State U. OSSL - Operating Systems Simulation Language. "OSSL - A Specialized Language for Simulating Computer Systems", P.B. Dewan et al, Proc AFIPS SJCC, v.40 (1972) Owl - Original name of Trellis. PACT I - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959). PACT IA - Early system on IBM 704. Listed in CACM 2(5):16 (May 1959). PACTOLUS - Digital simulation. Sammet 1969, p.627. Paddle - Language to express the structure of developments. Used in the POPART system. "POPART: Producer of Paddles and Related Tools, System Builders' Manual", D.S. Wile TR RR-82-21, ISI, Marina del Rey, CA 1982. PAGE - Typesetting language. "Computer Composition Using PAGE-1", J.L. Pierson, Wiley 1972. PAL - Paradox Application Language. Language for Paradox, Borland's relational database. Pam - "Formal Specification of Programming Languages: A Panoramic Primer", Frank G. Pagan, P-H. Parallel Pascal - Similar to ACTUS and Glypnir. Parallel SML - "Parallel SML: A Functional Language and its Implementation in Dactl", Kevin Hammond, Pitman Press 1990. Pari - Symbolic math, especially number theory. ftp: math.ucla.edu Paris - Assembly language for the Connection Machine. PARLOG - An and-parallel PROLOG. "PARLOG: Parallel Programming in Logic", K. Clark et al, TOPLAS 8(1):1-49, 1986. PARSEC - Extensible language with PL/I-like syntax, derived from PROTEUS. "PARSEC User's Manual", Bolt Beranek & Newman (Dec 1972) Pascal - Named for French mathematician Blaise Pascal (1623-1662). N. Wirth, ca. 1970. Designed for simplicity, in reaction to the complexity of ALGOL 68, and intended as a teaching language. Innovations: enumeration types, subranges, sets, variant records, case statement. Missing from standard Pascal: strings, adjustable arrays, abstract data types, random-access files, and separate compilation. Pascal has been extremely influential in programming language design, and has led to a great number of variations and descendants. "PASCAL User Manual and Report", K. Jensen & N. Wirth, Springer 1975. Pascal-80 - A successor of Platon. Developed at RC International, Denmark for systems programming. Later it was renamed Real-Time Pascal. Pascal-F - Pascal extended to include fixed-point arithmetic. E. Nelson, "Pascal-F: Programming Language for Real-Time Automotive Control", IEEE ElectroTechnol. Rev. (USA), 2:39, 1968. PascalPlus - Denmark? Pascal/R - Pascal with relational database constructs added. The first successful integrated database language. J.W. Schmidt, M. Mall, Pascal/R Report, Universitaet Hamburg, Fachbereich Informatik, Report 66, January 1980. Pascal-S - Simplified Pascal. Source for a complete Pascal-S compiler is in "Pascal-S: A Subset and Its Implementation", N. Wirth in Pascal - The Language and Its Implementation by D.W. Barron, Wiley 1979. PAT - Personalized Array Translator. Small subset of APL. Sammet 1969, p.252. PCCTS - Purdue Compiler Construction Tool Set. Essentially like lex + yacc + code generation support in a single language. Since the beta release last year, over 400 user sites worldwide. "Purdue Compiler Construction Tool Set," Terence Parr et al, Purdue U, TR-EE 90-14, Feb 1990. PCL - Hewlett-Packard's Printer Control Language. [Same as HPGL?] PDEL - Partial Differential Equation Language. Preprocessor for PL/I. "PDEL - A Language for Partial Diferential Equations", A.F. Cardenas, CACM 13(3):184-191 (Mar 1970). PDELAN - Partial Differential Equation Language. "An Extension of FORTRAN Containing Finite Difference Operators", J. Gary et al, Soft Prac & Exp 2(4) (Oct 1972). PDL2 - Mentioned in "An Overview of Ada" J.G.P. Barnes. PDS/MaGen - Problem Descriptor System. Generation of matrices and reports for mathematical programming and operations research. "PDS MaGen User Information Manual", Haverly Systems (Dec 1977). Pearl - 1. Constructive maths, Constable, Cornell U, 80's. 2. Process and Experiment Automation Real-Time Language. A language to program process control systems. Heavily used in Europe ca. 1980. Pebble - "A Kernel Language for Abstract Datsa Types and Modules", R.M. Burstall et al, in Semantics of Data Types, LNCS v.173, Springer 1984. PENCIL - Pictorial ENCodIng Language. On-line system to display line structures. Sammet 1969, 675. Perl - Practical Extraction and Report Language. Larry Wall AWK-like scripting language for scanning text and printing reports. "Programming Perl", Larry Wall et al, O'Reilly & Assocs. ftp: ftp.uu.net (comp.sources.unix archive) PIC - Graphics meta-language featured in Jon Bentley's "More Programming Pearls." PICK BASIC - Rough superset of BASIC bundled with the PICK operating system. Includes numerous database operations. PIE - From CMU, similar to ACTUS. PIL - Procedure Implementation Language, subsytem of DOCUS. Sammet 1969, p.678. PIL/I - Variant of JOSS. Sammet 1969, p.217. PILE - Polytechnic's Instructional Language for Educators. Similar in use to an enhanced PILOT, but structurally more like Pascal with Awk-like associative arrays (optionally stored on disk). Was distributed worldwide by the Initial Teaching Alphabet Foundation (about 50 sites?) for Apple II and various CP/M machines. "A Universal Computer Aided Instruction System," Henry G. Dietz & Ronald J Juels, Proc Natl Educ Computing Conf '83, pp.279-282. PILOT - Programmed Inquiry Learning Or Teaching. CAI language, many versions. "Guide to 8080 PILOT", J. Starkweather, DDJ (Apr 1977). PINBOL - "Decision table" language for controlling Pinball machines used at Atari. Included a multi-tasking executive and an interpreter that worked on data structures "compiled" from condition:action lists. PL-11 - A high level machine-oriented language for the PDP-11. (May have been from CERN.) PL360 - Assembly language for IBM 360 and 370, with a few high-level constructs. "PL360, A Programming Language for the 360 Computers", N. Wirth, J ACM 15(1):37-74 (Jan 1968). PL-6 - PL/I-like system language for the Honeywell OS CP-6. PL/C - Subset of PL/I for student use. "User's Guide to PL/C", S. Worona et al, Cornell, June 1974. PL/I - Programming Language I. George Radin, 1964. Oriinally named NPL. An attempt to combine the best features of FORTRAN, COBOL and ALGOL 60. Result is large but elegant. One of the first languages to have a formal semantic definition, using the Vienna Definition Language. PL/I was used to write almost all of the Multics OS. It has no reserved words. Types are fixed, float, complex, character strings with max length, bit strings, and label variables. Arrays have lower bounds, and may be dynamic. summation, multi-level structures, structure assignment. untyped pointers, side effects, aliasing. Control flow goto, do-end groups, do-to-by-while-end loops, external procedures and internal nested procedures and blocks, procedures may be declared recursive. Generic procedures. Many implementations support concurrency and compile-time statements. Exception handling. "A Structural View of PL/I", D. Beech, Computing Surveys, 2,1 33-64 (1970). ANS X.3.53-1976. list: PL1-L@UIUCVMD.BITNET PL/I SUBSET - Early 70's version of PL/I for minis. PL/I Subset G - The commercial PL/I subset (i.e., what was actually implemented by most vendors). PL/I-FORMAC - Variant of FORMAC. "The PL/I-FORMAC Interpreter", J. Xenakis, Proc 2nd Symp Symbolic and Algebraic Manip, ACM (Mar 1971). Sammet 1969, p.486. PL/M - Programming Language/Microcomputers. Intel's variant of PL/I. "PL/M-80 Programming Manual", Doc 98-268B, Intel (1976) PL/PROPHET - PL/I-like language for the PROPHET system, used by pharmacologists. "The Implementation of the PROPHET System", P.A. Castleman et al, Proc AFIPS NCC v.43 (1974) PL/S - Programming Language/Systems. Apparently a PL/I and ASM hybrid. Created by IBM Systems Development Division in the late 1960's and early 1970's. Much of IBM/360 OS/MFT/MVT/SVS/MVS was done in it. Documented by various IBM internal ZZ-????????? publications. Versions: PLS1, PLSII PL/Seq - Programming Language for Sequences. A DSP language. "A general high level language for signal processors", J. Skytta & O. Hyvarinen, Digital Signal Processing 84, Proc Intl Conf, Fiorence, Italy, Sep 1984, pp.217-221. Plain - Based on extended Pascal. "The Data Management Facilities of PLAIN," A.L. Wasserman, ACM-SIGMOD Intl Conf on Management of Data, 1979 pp.60-70. PLAN - Assembler for ICL1900 series machines. PLANIT - Programming Language for Interactive Teaching. Preparing on-line presentations. "PLANIT - A Flexible Language Designed for Computer-Human Interaction", S.L. Feingold, Proc AFIPS FJCC v.31 (1967) Sammet 1969, p.706. [Is there another PLANIT? ca. 1967] Plankalkul - The first programming language, by Konrad Zuse from Nazi Germany, ca. 1945. Theoretical, never implemented. [Much of his work may have been either lost or confiscated in the aftermath of WWII.] "The Plankalkul of Konrad Zuse", F.L. Bauer et al, CACM 15(7):678-685 (Jul 1972) PLANNER - AI language, Hewitt, MIT 1967. "PLANNER: A Language for Proving Theorems in Robots", Carl Hewitt, Proc IJCAI-69, Wash DC, May 1969. PLANS - Programming Language for Allocation and Network Scheduling. A PL/I preprocessor, used for developing scheduling algorithms. "A User's Guide to the Programming Language for Allocation and Network Scheduling", H.R. Ramsey et al, TR SAI-77-068-DEN, Science Applications Inc (Jun 1977) Plasma - Carl Hewitt, ca 1980. The first actor language. Platon - Developed at DAIMI, U Aarhus, Denmark. PLUSS - Specification language, based on ASL. "A First Introduction to PLUSS", M.C. Gaudel, TR, U Paris Sud, Orsay 1984. POGO - Early system on G-15. Listed in CACM 2(5):16 (May 1959). Poly - Polymorphic, block-structured 1980's, "Overview of the Poly Programming Language" D.C.J. Matthews, in Proc Appin Workshop on Data Types and Persistence, Res Report 16, M.P. Atkinson et al eds, U Glasgow. Ponder - Polymorphic, non-strict functional language. "Ponder and its Type System", J. Fairbairn, TR 31, Computer Lab, Cambridge U, Nov 1982. POOL - A family of languages from Philips Research Labs, Netherlands. POP-2 - 1968. Robin POPplestone, 1968. Data objects are numbers (including rationals), strings, words (like LISP atoms), lists, and two special objects: error and end-of-file.First to state the "Bill of Rights for data objects," that all objects including functions should be first class citizens. "Programming in POP-2", R.M. Burstall et al, Edinburgh U Press 1971. POP-11 - Robin POPplestone, 1970. A blend of Pascal syntax, LISP storage allocation and FORTH argument passing. Functional, dynamically typed, interactive, efficient. Compiler-oriented stack machine with extensible data-type facility. "Programming in POP-11", J. Laventhol, Blackwell, 1987. Earlier versions: POP-1, POP-2. Implementations: POPLOG (U Sussex), ALPHA POP-11 for Mac. Poplar - Morris, 1978. A blend of LISP with SNOBOL4 pattern matching and APL-like postfix syntax. Implicit iteration over lists, sorting primitive, POPLER - AI extension of POP-2, influenced by PLANNER. "Popler 1.6 Reference Manual", D. Davies et al, U Edinburgh, TPU Report No 1 (May 1973) POSE - Non-procedural query language, ca. 1967. Sammet 1969, p.299. PostScript - Page description language often used in conjuction with laser printers or on-screen graphic font displays. Adobe Systems. "PostScript Language Reference Manual", ("The Red Book") Adobe Systems Inc, A-W, 1990. PPL - Polymorphic Programming Language. Interactive and extensible. "PPL User's Manual", E.A. Taft, Aiken Comp Lab, Harvard U, (Sep 1974) PRINT - PRe-edited INTerpreter. Early math language on 705. Sammet 1969, 134. PRINT I - Early system on IBM 705. Listed in CACM 2(5):16 (May 1959). PRL - Proof Refinement Logic. "PRL: Proof Refinement Logic Programmer's Manual", CS Dept, Cornell, 1983. Versions: micro-PRL, lambda-PRL, nu-PRL. PROFILE - Simple language for matching and scoring data. "User's Manual for the PROFILE System", Cambridge Computer Assoc (May 1974). PROJECT - subsystem of ICES. Sammet 1969, p.616. PROLOG - PROgramming in LOGic. Alain Colmerauer, U Marseilles 1970. Designed originally for natural-language processing. Resolution theorem proving based on the unification alorithm. Unification is a blend of pattern matching and variable binding. One gives facts about objects and rules of deduction, then asks the system to infer answers to questions. No user-defined functions and no control structure other than the built-in depth-first search with backtracking. "Programming in PROLOG", W.F. Clocksin & C.S. Mellish, Springer 1985. PROMAL - [What does this stand for? "used to be famous" ?] Proposal Writing - Extension of FORTRAN for proposal writing. Sammet 1969, p.170. PROSE - PROblem Solution Engineering. Numerical problems including differentiation and integration. "Computing in Calculus", J. Thames, Research/Development 26(5) (May 1975). PROTEUS - Extensible language, core of PARSEC. "The Design of a Minimal Expandable Computer Language", J.R. Bell, PhD Thesis, CS, Stanford U (Dec 1968) Protosynthex - Query system for English text. Sammet 1969, p.669. PS-ALGOL - Persistent Algol, a derivative of S-Algol. "The PS-Algol Reference Manual", TR PPR-12-85, CS Dept, U Glasgow 1985. PSML - Processor System Modeling Language. Simulating computer systems design. A preprocessor to SIMSCRIPT. "Processor System Modeling - A Language and Simulation System", F. Pfisterer, Proc Symp on Simulation of Computer Systems (Aug 1976) PUFFT - "The Purdue University Fast FORTRAN Translator",Saul Rosen et al, CACM 8(11):661-666 (Nov 1965). Python - Guido van Rossum 1991. A high-level interpreted language combining ideas found in a variety of other languages including ABC, C, Modula-3 and Icon. Useful for prototyping or as an extension language for customizable C applications. Modules, classes, user-defined exceptions. "Linking a Stub Generator (AIL) to a Prototyping Language (Python)", Guido van Rossum et al, Proc 1991 EurOpen Spring Conf. Available for UNIX, Amoeba and Mac. ftp: wuarchive.wustl.edu, gatekeeper.dec.com and hp4nl.nluug.nl. Q'nial - French? A portable interpreter for Nial. QA4 - A question-answering language. "QA4, A Language for Writing Problem-Solving Programs", J.F. Rulifson et al, Proc IFIP Congress 1968. QBE - Query By Example. A query language, Moshe Zloof, IBM, 1975. QLISP - General problem solving, influenced by PLANNER. SRI 1973. QA4 features merged with INTERLISP. "A Language for the Interactive Development of Complex Systems", E. Sacerdoti et al, Proc AFIPS NCC v.45 (1976). QUEASY - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959). QUEL - A query language. Quest - No details. QUICK - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959). Quicksilver - dBASE-like compiler for MS-DOS from WordTech, Orinda, CA. QUIKTRAN - On-line FORTRAN with added debugging facilities. Sammet 1969, p.226. QUIN - On-line language, Pyle, 1965. Sammet 1969, p.691. QX - (name from Doc Smith SF books) This language was designed especially for digital signal processing of digitize speech, and was part of SDC's speech understanding project. Designed by Richard Gillmann. SDC, Santa Monica, CA. RAMIS II - Rapid Access Management Information System. Database system. On-Line Software Intl. Rapidwrite - Method for translating set of abbreviations into the much more verbose COBOL code. Sammet 1969, p.338. RATEL - Raytheon Automatic Test Equipment Language. For analog and digital computer controlled test centers. "Automatic Testing via a Distributed Intelligence Processing System", S.J. Ring, IEEE AUTOTESTCON 77 (Nov 1977). RAWOOP-SNAP - Early system on IBM 1103 or 1103A. Listed in CACM 2(5):16 (May 1959). RATFOR - RATional FORTRAN. FORTRAN preprocessor to allow programming with C-like syntax. "Ratfor - A Preprocessor for a Rational Fortran", B.W. Kernighan, Software - Prac & Exp 5,395-406 (1975). Featured in "Software Tools", B.W. Kernighan & P.J. Plauger, A-W 1976. R:BASE - MS-DOS 4GL from Microrim. Based on Minicomputer DBMS RIM. Was Wayne Erickson the author? Real-Time Pascal - Apparent later name of Pascal-80 by RC Intl, Denmark. Recital - dBASE-like language/DBMS from Recital Corp. Available on VAX/VMS minicomputers among others. RECOL - Retrieval Command Language. CACM 6(3):117-122 (Mar 1963). RED - Proposed language to meet the Ironman requirements which led to Ada. Also known as REDL. "On the RED Language Submitted to the DoD", E.W. Dijkstra, SIGPLAN Notices 13(10):27 (Oct 1978). REDCODE - Proposed as a language for "battle programs" in corewars. (See Computer Recreations column in Scientific American.) REDUCE - Symbolic math, ALGOL-like syntax. Anthony C. Hearn, 1963. "REDUCE, Software for Algebraic Computation", G. Rayna, Springer 1987. Version: Reduce 2. list: REDUCE-L info: reduce@rand.org server: reduce-netlib@rand.org Refined C (RC) - Extends C to directly specify data access rights so that flow analysis, and hence automatic parallelization, is more effective. Research implementations only. "Refining A Conventional Language For Race-Free Specification Of Parallel Algorithms," Henry G. Dietz & A. David Klappholz, Proc 1984 Intl Conf on Parallel Proc, pp.380-382. Refined Fortran (RF) - Similar to Refined C. Research implementations only. "Refined FORTRAN: Another Sequential Language for Parallel Programming," H.G. Dietz et al, Proc 1986 Intl Conf on Parallel Proc, pp.184-191. REG-SYMBOLIC - Early system on IBM 704. Listed in CACM 2(5):16 (May 1959). RELATIVE - Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). RELCODE - Early system on UNIVAC I or II. Listed in CACM 2(5):16 (May 1959). REL English - Rapidly Extensible Language, English. A formal language based on English. "Practical Natural Language Processing: The REL System as Prototype", Adv in Computers v.13, Academic Press 1975. Report Program Generator - Official name of RPG. Required-COBOL - 1961. Minimal subset of COBOL. Later dropped entirely. Sammet 1969, p.339. Retrieve - Query language by Tymshare Corporation, 1960's. Inspired JPLDIS which lead to Vulcan and then to dBASE II. Revised ALGOL 60 - Alternate name for ALGOL 60 Revised. Sammet 1969, p.773. REXX - Restructured EXtended eXecutor. Scripting language for IBM VM systems, also available on the Amiga. "Modern Programming Using REXX", R.P. O'Hara et al, P-H 1985. list: REXX-L@UIUCVMD.BITNET. Rigel - Based on Pascal. Listed by M.P. Atkinson & J.W. Schmidt presented in a tutorial in Zurich, 1989. ROADS - Subsystem of ICES. Sammet 1969, p.616. Roff - Text formatting language/interpreter. Associated with UNIX. RPG - Report Program Generator. Developed by IBM for easy production of sophisticated large system reports. OS/360, 1965. Version: RPG-II. RPL-1 - A data reduction language. Proc SJCC, 30:571-575, 1967. RPL - RPN Programming Language. The language that HP28 and HP48 calculators use. (RPN - Reverse Polish Notation.) RTL/2 - Barnes 1971. A small real-time language based on Algol 68, with separate compilation. A program is divided into separately compilable bricks (named modules) and may be datablock, procedure, or stack. A stack is a storage area for use as a workspace by a task. The language is block- structured and weakly typed. Simple types are byte, int, frac and real, no Boolean. Compound types may be formed from arrays, records and refs (pointers). There are no user-defined types. Control consists of if-then- elseif-else-end, for-to-by-do-rep, block-endblock, switch, goto, and label variables. "RTL/2: Design and Philosophy", J.G.P. Barnes, Hayden & Son, 1976 RUFL - Rhodes University Functional Language - Miranda-like. Rhodes U, Grahamstown, South Africa. RUNCIBLE - Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). RUSH - Interactive dialect of PL/I, related to CPS, ca. 1966. Sammet 1969, p.309. Russell - Demers & Donohue. A compact, polymorphically typed functional language, with bignums and continuations. "Revised Report on Russell", A. Demers et al, TR 79-389, Dept Cornell U 1979. ftp: watserv1.waterloo.edu S-Algol - Orthogonal data structures on Algol-60. "S-Algol Language Reference Manual", R. Morrison, TR CS/79/1, CS Dept U St Andrews, St Andrews, Scotland, 1979. SAC - Early system on Datatron 200 series. Listed in CACM 2(5):16 (May 1959). SAD SAM - Query language by Lindsay. Sammet 1969, p.669. SAFARI - ON-line text editing system by MITRE. Sammet 1969, p.685. SAIL - 1. [?] Early system on Larc computer. Listed in CACM 2(5):16 (May 1959). 2. ALGOL-like language with a symbolic data system based upon an associative storage (originally called LEAP), with multitasking facilities. Developed at the Stanford AI Project. "Recent Developments in SAIL - An ALGOL-based Language for Arificial Intelligence", J. Feldman et al, Proc AFIPS FJCC, v.41(2) (1972). SAINT - LISP-like language? Sammet 1969, p.410. SALT - Symbolic Assembly Language Trainer. Assembler-like language implemented in BASIC by Kevin Stock, now at Encore in France. SAP - Symbolic Assember Program. Historic assembler on IBM 704, late 1950's. SAS - Statistical Analysis System. Statistical and matrix language, syntax similar to PL/I. "A User's Guide to SAS", A.J. Barr, SAS Inst 1976. SASL - Saint Andrews Static Language. Turner 1976. A derivative of ISWIM with infinite data structures. Fully lazy and weakly typed. Designed for teaching functional programming, with very simple syntax. "A New Implementation Technique for Applicative Languages", D.A. Turner, Soft Prac & Exp 8, 31-49 (1979) SCEPTRE - Designing and analyzing circuits. "SCEPTRE: A Computer Program for Circuit and Systems Analysis", J.C. Bowers et al, P-H 1971. Scheme - G.L. Steele & G.J. Sussman, 1975. A small uniform LISP dialect. Scheme is applicative-order and lexically scoped, and treats both functions and continuations as first-class objects. "The Revised^3 Report on the Algorithmic Language Scheme", G.L. Steele Jr, SIGPLAN Notices 21(12):37-79 (Dec 1986). list: scheme@mc.lcs.mit.edu Schoonschip - Computer algebra system specialized in High Energy Physics. Developed by Veltman, CERN, late 60's. Originally implemented in CDC-6600 and 7600 assembler, current versions include Atari-ST, SUN 3. Scratchpad - A general-purpose language originally for interactive computer algebra at IBM Research in the 1980s. It features abstract parametrized datatypes, multiple inheritance and polymorphism. Implementations exist under VM/CMS and AIX. Authors include Richard Jenks, Barry Trager, Stephen M. Watt & Robert S. Sutor. "Scratchpad User's Manual", RA 70, IBM (June 1975). Version: Scratchpad II. Scratchpad II Newsletter: Computer Algebra Group, TJWRC, Box 218, Yorktown Hts, NY 10598. SCRIPT - Early system on IBM 702. Listed in CACM 2(5):16 (May 1959). SDL - 1. System Software Development Language. System software for the B1700. "System Software Development Language Reference Manual", 1081346, Burroughs Corp (Dec 1974). 2.A specification language. [?] Sed - The UNIX stream editor. SEESAW - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959). Self - Dynamically-typed object-oriented language. "Self: The Power of Simplicity", David Ungar et al, OOPSLA '87 Proc, ACM. ftp: otis.stanford.edu list: self-interest@self.stanford.edu request: self-request@self.stanford.edu SETL - SET Language. Courant Inst, early 70's. A very high level set-oriented language. The first Ada translator was written in SETL. Data types include sets (unordered collections), tuples (ordered collections) and maps (collection of ordered pairs). Statements include predicate calculus formulas ("for each" and "there exists"). "On Programming: An Interim Report on the SETL Project", Jacob T. Schwartz, Courant Inst, 1974. "Software Prototyping Using the SETL Programming Language", P. Krutchen et al, IEEE Software 1(5):66-75 (Oct 1984) SETL2 - Improvements over SETL. Kirk Snyder. SETS - Set Equation Transformation System. Symbolic manipulation of Boolean equations. "Efficient Ordering of Set Expressions for Symbolic Expansion", R.G. Worrell et al, J ACM 20(3) (Jul 1973) SEXI - String EXpression Interpreter. Early name of SNOBOL. SFD-ALGOL - System Function Description-ALGOL. Extension of ALGOL for synchronious systems. Sammet 1969, p.625. SGML - Standard Generalized Markup Language. "SGML - The User's Guide to ISO 8879", J.M. Smith et al, Ellis Harwood, 1988. sh - or "Shellish". Bourne Shell command shell interpreter for UNIX. SHACO - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959). SHADOW - Syntax directed compiler. Predecessor to SNOBOL? Barnett & Futrelle, 1962. Sammet 1969, p.448, 605. SHEEP - Computer algebra system specialized in General Relativity. Developed by I. Frick, Stockholm, late 70's to early 80's. Implemented first in DEC-10 assembler, then in several LISP's. SHELL - Early system on Datatron 200 series. Listed in CACM 2(5):16 (May 1959). Short Code or SHORTCODE - Possibly first attempt at higher level language for math problems. UNIVAC I or II. Sammet 1969, p.129. SIFT - SHARE Internal FORTRAN Translator. Translation utility designed for converting FORTRAN II to FORTRAN IV. The word "sift" was often used as a verb to describe converting code from one language to another. Sammet 1969, p.153. Sig - Signal Processing, Analysis, and Display program. (Note that this is an environment, with an associated programming language, just like the Mathematica system is.) Jan Carter, Argonne Natl Lab, (312)972-7250. Signal - Synchronous language. Le Guernic et al, "SIGNAL - A Data Flow-Oriented Language for Signal Processing," IEEE Trans Acoustics Speech & Signal Proc, ASSP-34(2):362-374 Apr 1986. Sil/2 - A language for implementation of portable interpreters. "The Design of Transportable Interpreters", Frederick Druseikis, SNOBOL4 Project Document S4D49, U Arizona (Feb 1975). Silage - Synchronous DSP language. D.R. Genin & P.N. Hilfinger, "Silage Reference Manual, Draft 1.0", Silvar-Lisco, Leuven, 1989. Simone - Hoare et al. Simulation language based on Pascal. SIMPLE - Early system on Datatron 200 series. Listed in CACM 2(5):16 (May --- End of Part 4 -- --Bill Kinnersley billk@hawk.cs.ukans.edu 226 Transfer complete.