Programming Languages - D

Sample Program

D -

1. "The Data Language." MS-DOS 4GL.

2. A Haskell-like language, with type classes. info:

3. Scripting language in the Teleuse Motif GUI builder.

DACAPO - Broad-range hardware specification language. "Mixed Level Modelling and Simulation of VLSI Systems", F.J. Rammig in Logic Design and Simulation, E. Horbst ed, N-H 1986.

DACTL - Declarative Alvey Compiler Target Language. U East Anglia. An intermediate language. "DACTL - A Computational Model and Compiler Target Language Based on Graph Reduction", J.R.W. Glauert et al, ICL Tech J 5(3) (1987). Version: Dactl0. (See Lean, Parallel SML).

DAD - Declarative Ada Dialect. Dialect of Ada intended to aid rapid prototyping of Ada programs. Adds many features including manipulation of first-order functions, lazy evaluation, and streams. Implemented as a pre- processor to Ada. "DAD Defined", P.A. Bailes et al, TR-229, CS Dept, U Queensland. info: Dan Johnston <>

Daisy - Functional. "Daisy Programming Manual", S.D. Johnson, CS Dept TR, Indiana U, 1988.

DAISY 201 - Early system on G-15. Listed in CACM 2(5):16 (May 1959).

DAP-16 - assembly language for the Honeywell 2600 test station.

DAP Fortran - "Efficient High Speed Computing with the Distributed Array Processor", P.M. Flanders et al, pp.113-127 (1977). [same as Fortran- Plus?]

DAPLEX - "The Functional Data Model and the Data Language DAPLEX", D.W. Shipman, ACM Trans Database Sys, 6(1):140-173 (Mar 1981).

DARE - Differential Analyzer REplacement. A family of simulation languages for continuous systems. "Digital Continuous System Simulation", G.A. Korn et al, P-H 1978.

Darms - Music language. "The Darms Project: A Status Report", R.F. Erickson, Computers and the Humanities 9(6):291-298 (June 1975).

Dartmouth BASIC - Term for the original BASIC by Kemeny & Kurtz.

DAS - Digital Analog Simulator. Represents analog computer design.

DASL - Datapoint's Advanced System Language. Gene Hughes. A cross between C and Pascal with custom features for Datapoint hardware (no stack), used internally by Datapoint.

Data/BASIC - Also known as Pick BASIC. A BASIC-like language with database capabilities, the main programming language on the Pick OS. "The Data/BASIC Language - A Data Processing Language for Non-Professional Programmers", P.C. Dressen, Proc SJCC 36, AFIPS (Spring 1970).

DATABUS - DATApoint BUSiness Language. Like an interpreted assembly language, used for custom applications on Datapoint machines.

DATACODE I - Early system on Datatron 200 series. Listed in CACM 2(5):16 (May 1959).

Dataparallel-C - Hatcher & Quinn, U New Hampshire. C with parallel extensions, based on an early version of C*. For Intel iPSC-2 and nCube.

Data Parallel Haskell - Adds PODs and POD comprehensions to Haskell. (POD=Parallel Object with arbitrary Dimension) "Data Parallel Haskell: Mixing Old and New Glue", J. Hill.

Data Structures Language - MAD dialect with extensions for lists and graphics, on Philco 212. "A Compiler Language for Data Structures", N. Laurance, Proc ACM 23rd Natl Conf 36 (1968).

DATA-TEXT - Harvard. Numerical computations in the Social Sciences. "DATA-TEXT Primer", D.J. Armor, Free Press 1972.

DataVis - Dataflow language for scientific visualization. "Data Flow Visual Programming Languages", D. Hils, J Vis Langs and Comput, Dec 1991.

dBASE - Language used by the dBASE system. First release was dBASE II, ca 1980. (There never was a "dBASE I") Later versions: dBASE III, dBASE III+, and dBASE IV.

DBC - Data-parallel Bit-serial C. SRC, Bowie MD. Based on MPL. info:

dBFAST - dBASE dialect for MS-DOS, MS-Windows.

DBPL - Procedural language with relational database constructs. A successor to Pascal/R and Modula/R. "DBPL Report", J.W. Schmidt et al, DBPL-Memo 111-88, Fachbereich Informatik, Johann Wolfgang Goethe-Universitaet, Frankfurt, Germany, 1988.

dBXL - dBASE-like interpreter/language for MS-DOS from WordTech, Orinda, CA.

dc - Desk Calculator. A stack-based mini-language and its interpreter, shipped with every Unix since V7.

DCALGOL - Data Communications ALGOL. A superset of Burroughs Extended ALGOL used for writing Message Control Systems.

DCDL - Digital Control Design Language. A language for simulating computer systems. "DCDS Digital Simulating System", H. Potash et al, Proc FJCC 35, AFIPS (Fall 1969).

DCG - A variant of BNF.


1. DIGITAL Command Language. The interactive command and scripting language for VAX/VMS.

2. Delphi Common LISP. An implementation of Common LISP that has been used as a basis for CLOS.


1. "A Digital System Design Language" (DDL)", J.R. Duley, IEEE Trans on Computers c-17(9):850-861 (Sep 1968).

2. M. Urban, C. Kostanick et al, UCLA Computer Club. An adventure language, the forerunner of ADL.

3. Data Definition Language. Specification language for a database based on the entity-relationship model. Used in the Eli compiler-compiler to manage type definitions. "DDL Reference Manual", ECE Dept U Colorado, 1991.

DDM - Dataflow language. "The Architecture and System Method of DDM-1: A Recursively Structured Data Driven Machine", A. Davis, Proc 5th Ann Symp Comp Arch, IEEE 1978.

DEACON - Direct English Access and CONtrol. English-like query system. Sammet 1969, p.668.

Delirium - An embedding coordinate language for parallel programming, implemented on Sequent Symmetry, Cray, BBN Butterfly. "Parallel Programming with Coordination Structures", S. Lucco et al, 18th POPL, pp.197-208 (1991).

Delta -

1. J.C. Cleaveland, 1978. Expression-based. [?]

2. Tandem. A string-processing language with single-character commands.

3. Language for system specification of simulation execution. "System Description and the DELTA Language", E. Holback-Hansen et al, DELTA Proj Rep 4, Norweg Comput Ctr, Feb 1977.

Delta-Prolog - Prolog extension with AND-parallelism, don't-know nondeterminism and interprocess communication using synchronous event goals. Distributed backtracking. "Delta-Prolog: A Distributed Logic Programming Language", L.M. Pereira et al, Intl Conf 5th Gen Comp Sys, Nov 1984.

DEMON - Program generator for differential equation problems. N.W. Bennett, Australian AEC Research Establishment, AAEC/E142, Aug 1965.

Design System language - J. Gaffney, Evans & Sutherland 1976. Interpretive FORTH-like language for 3-D graphics databases. Earliest forerunner of both Interpress and PostScript. Mentioned in PostScript Language Reference Manual, Adobe Systems, A-W 1985.

DETAB - DEcision TABle. A. Chapman, 1964. Decision table COBOL preprocessor. Sammet 1969, p.315. Versions: DETAB 65, DETAB X.

DETOL - Directly Executable Test Oriented Language. Simple language to control a specific type of test equipment. "Improved DETOL Programming Manual for the Series 5500 Automatic Test System, Pub. 5500-31-0-1, AAI Corp. (Sep 1973).

Deva - Functional. "The Generic Development Language Deva: Presentation and Case Studies", M. Weber et al, LNCS 738, Springer 1993.

DEX - W. van Oortmerssen. A cross between Modula-2 and C. Version 1.2 for Amiga

DFC - Dataflow language. "Data Flow Lanuage DFC: Design and Implementation", S. Toshio et al, Systems and Computers in Japan, 20(6):1- 10 (Jun 1989).

DG/L -

1. Descriptive Geometry Language. Early CAD/CAE language, used light pen. "Interactive Graphic Consoles - Environment and Software", R.L. Beckermeyer, Proc FJCC 37 (1970).

2. Data General ca 1973-1974. Derivative of ALGOL 60, developed from DG's Algol-5, used as the systems language under AOS and RDOS for the DG Eclipse family of computers. Replaced by PL/I in the early 80's. Data General manual 093-000229-01.

DIALECT - High-level language for LALR grammars. Part of Software Refinery from Reasoning Systems. info:

DIALOG - Illinois Inst Tech, 1966. Interactive math using graphics tablet. "DIALOG: A Conversational Programming System with a Graphical Orientation", S.H. Cameron et al, CACM 10:349-357 (1967). Sammet 1969, p.255-258.

DIAMAG - An interactive extension of ALGOL. Sammet 1969, p.195.

Diamond - One of five pedagogical languages based on Markov algorithms, used in "Nonpareil, a Machine Level Machine Independent Language for the Study of Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London (1968). (cf. Brilliant, Nonpareil, Pearl[3], Ruby[2]).

DIANA - Descriptive Intermediate Attributed Notation for Ada. Goos & Wulf, CMU, Jan 1981. A de facto standard intermediate language for Ada programs. An attributed tree representation, with an abstract interface defined in IDL. Resulted from a merger of AIDA and TCOL.Ada. "DIANA - An Intermediate Language for Ada", G.T. Goos et al, LNCS 161, Springer 1983.

DIBOL - Digital Interactive Business Oriented Language. DEC, 1970. FORTRAN syntax with BCD arithmetic. Versions for PDP-8 and RT-11. ANSI X3.165-1988.

Dictionary APL - nickname for Sharp APL.

Dijkstra's guarded command language - Edsger Dijkstra, ca. 1974. Introduced the concept of guards and committed choice [=don't care] nondeterminism. Described and used (but never named) in A Discipline of Programming, E. Dijkstra, P-H 1976. Dijkstra later (1972) referred to this language as DOVPA (Dijkstra's Own Version of Pidgin Algol).

DIMATE - Depot Installed Maintenance Automatic Test Equipment. For automatic equipment tests, on RCA 301. "A Simple User-Oriented Source Language for Programming Automatic Test Equipment", B.H. Scheff, CACM 9(4) (Apr 1966). Sammet 1969, p.647.

DinnerBell - Object-oriented dataflow language with single assignment. "Object-Oriented Load Distribution in DinnerBell", S. Kono <> et al, in TOOLS Pacific 90.

DINO - Data parallel language, a superset of C. "The DINO Parallel Programming Language", M. Rosing et al, J Parallel Dist Comp 13(9):30-42 (Sep 1991). Implemented using ALADIN. "DINO Parallel Programming Language", M. Rosing et al, CU-CS-457-90, U Colorado, April 1990.*

Disiple - DSP language. "A Compiler that Easily Retargets High Level Language Programs for Different Signal Processing Architectures", J.E. Peters & S.M. Dunn, Proc ICASSP 89, pp.1103-1106, (May 1989).

Dislang - "Dislang: A Distributed Programming Language/System", C. Li et al, Proc 2nd Intl Conf Distrib Comp Sys, IEEE 1981, pp.162-172.

Distributed Eiffel - "Distributed Eiffel: A Language for Programming Multi- Granular Distributed Objects on the Clouds Operating System", L. Gunaseelan et al, IEEE Conf Comp Langs, 1992.

Distributed Processes - (Also "DP"). First concurrent language based on remote procedure calls. "Distributed Processes: A Concurrent Programming Concept", P. Brinch Hansen CACM 21(11):934-940 (Nov 1978).

Distributed Smalltalk - "The Design and Implementation of DIstributed Smalltalk", J. Bennett, SIGPLAN Notices 22(12):318-330 (Dec 1980).

DL/1 - Query language, linear keyword.

DLG - DFA-based Lexical analyzer Generator. Part of PCCTS (Purdue Compiler-Construction Tool Set).

DLP - Logic programming similar to Prolog, combined with parallel object orientation similar to POOL. Supports distributed backtracking over the results of a rendezvous between objects. Multi-threaded objects have autonomous activity and may simultaneously evaluate method calls. "DLP: A Language for Distributed Logic Programming", A. Eliens, Wiley 1992.

DLX - Assembly language. "Computer Architecture: A Quantitative Approach", J.L. Hennessy and Patterson.

DMAD - Diagnostic Machine Aid-Digital. Functional testing of digital devices. "DMAD M/MM Manual", BR-8392, Raytheon Co. (Oct 1973).

DMALGOL - ALGOL with extensions to interface to DMS II, the Burroughs database.


1. Data Management Language. Early ALGOL-like language with lists, graphics, on Honeywell 635. "DML: A Data Management Language", D.W. Bray et al, GE, Syracuse NY.

2. "DML: A Meta-language and System for the Generation of Practical and Efficient Compilers from Denotational Specifications", M. Pettersson et al, IEEE Conf Comp Langs, 1992.

Doc - Directed Oc. "Programming Language Doc and Its Self-Description, or 'X=X Is Considered Harmful'", M. Hirata, Proc 3rd Conf Japan Soc Soft Sci Tech, pp.69-72 (1986).

DOCUS - Display Oriented Computer Usage System. Interactive system using push buttons. Sammet 1969, p.678

DoD-1 - Unofficial name of the language that became Ada.

DOUGLAS - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959).

DOL - Display Oriented Language. Subsystem of DOCUS. Sammet 1969, p.678.

DOVPA - Dijkstra's Own Version of Pidgin Algol. See "Dijkstra's guarded command language".

DOW COMPILER - Early system on Datatron 200 series. Listed in CACM 2(5):16 (May 1959).

DOWL - Distributed OWL. B. Achauer, U Karlsruhe. An extension of Trellis supporting transparently distributed objects. "The DOWL Distributed Object-Oriented Language", B. Achauer, CACM 36(9) (Sep 1993).

d-Prolog - Prolog extended with defeasible reasoning.* for MS-DOS and Unix

DPL - DECmmp Parallel Language. C-like parallel language for the DECmpp machine.

DPL-82 - "DPL-82: A Language for Distributed Processing", L. Ericson, Proc 3rd Intl Conf Distrib Comp Sys, IEEE 1982, pp.526-531.

DPS - Real-time language with direct expression of timing requests. "Language Constructs for Distributed Real-Time PRogramming", I. Lee et al Proc IEEE Real-Time Sys Symp pp.57-66 (Dec 1985).

dpSather - Data-parallel Sather. Fine-grained deterministic parallelism info:

draco - Chris Gray, 1987. A blend of Pascal, C and ALGOL 68. Implemented for CP/M-80 and Amiga.

DRAGON - Implementation language used by BTI Computer Systems. info: Pat Helland <>

DRAGOON - Colin Atkinson, Imperial College 1989. (current address: <>, U Houston-Clear Lake). Ada-based language, bringing object-oriented programming to embeddable systems. Presently implemented as an Ada preprocessor. "Object-Oriented Reuse, Concurrency and Distribution: An Ada-Based Approach", C. Atkinson, A-W 1991, ISBN 0-2015-6- 5277. info:

DROOL - Dave's Recycled Object-Oriented Language. Language for writing adventure games. An updated implementation of AdvSys. Multiple inheritance, garbage collection. "Dave's Recycled OO Language", David Betz, Dr Dobbs J, Oct 1993, pp.74-78.

DRUCO I - Early system on IBM 650. Listed in CACM 2(5):16 (May 1959).


1. Digital Simulation Language. Extensions to FORTRAN to simulate analog computer functions. "DSL/90 - A Digital Simulation Program for Continuous System Modelling", Proc SJCC 28, AFIPS (Spring 1966). Version: DSL/90 for the IBM 7090. Sammet 1969, p.632.

2. Denotational Semantics Language. Specification language used by the SIS compiler generator. "SIS - Semantics Implementation System", P.D. Mosses, TR DAIMI MD-30, Aarhus U, Denmark.


1. Data Structure Manager. J.E. Rumbaugh and M.E. Loomis, GE. Object- oriented language similar to C++, used in implementation of CAD/CAE software. DSM is written in itself and C, and produces C as output. "DSM: An Object-Relationship Modeling Language", A. Shah et al, SIGPLAN Notices 24(10):191-202 (OOPSLA '89) (Oct 1989).

2. DIGITAL Standard MUMPS. DEC. (See MUMPS).

DSP/C - Numerical extension to C, for DSP applications. "DSP/C: A Standard High Level Language for DSP and Numeric Processing", K. Leary & W. Waddington, Proc ICASSP 90, Apr 1990, pp.1065-1068.

DSP32 Assembly Language - A high-level assembly language for the DSP32 Programmable DSP Chip.

DSPL: Digital Signal Processing Language. A C-derived DSP language. "The Programming Language DSPL", A. Schwarte & H. Hanselmann, Proc PCIM 90, 1990.

DTALGOL - Decision Table Algol. Victoria U, Wellington. An ALGOL superset that added decision tables. On Burroughs Large System.

DUAL-607 - Early system on IBM 701. Listed in CACM 2(5):16 (May 1959).

Dual FCP - [?]

DuoTalk - Smalltalk-like language with separate inheritance hierarchies for types and classes. "Separation of Hierarchies in DuoTalk", C. Lunau, J Object- Oriented Programming 2(2):20-26, 1989.

Durra - Description language for coarse-grained concurrency on heterogeneous processors. "Durra: A Task-level Description Language", M.R. Barbacci et al, CMU/SEI-86-TR-3, CMU 1986.

DYANA - DYnamics ANAlyzer. Early specialized language for vibrational and other dynamic systems. Sammet 1969, p.628.

Dylan - DYnamic LANguage. Advanced Technology Group East, Apple Computer. A simple object-oriented LISP dialect, most closely resembles CLOS and Scheme. "Dylan, an Object-Oriented Dynamic Language", Apple 1992. - compiler implemented in Scheme info:

Dynace - DYNAmic C language Extension. Blake McBride, 1993. Extension of C, adds classes, multiple inheritance, dynamic binding, garbage collection and threads. Implemented as a C preprocessor and library. Available from Algorithms Corp, (615)791-7736. info: Blake McBride <>

DYNAMO - DYNamic MOdels. Phyllis Fox & A.L. Pugh, 1959. Continuous simulation including economic, industrial and social systems. Versions: DYNAMO II, DYNAMO II/370, DYNAMO II/F, DYNAMO III and Gaming DYNAMO. "DYNAMO User's Manual", A.L. Pugh, MIT Press 1976.

DYSAC - Digital Simulated Analog Computer. Sammet 1969, p.629.

DYSTAL - DYnamic STorage ALlocation. Adds lists, strings, sorting, statistics and matrix operations to FORTRAN. Sammet 1969, p.388. "DYSTAL: Dynamic Storage Allocation Language in FORTRAN", J.M. Sakoda, in Symbol Manipulation Languages and Techniques, D.G. Bobrow ed, N-H 1971, pp.302- 311.