GEDANKEN-A Simple Typeless Language Based on the Principle of Completeness and the Reference Concept GEDANKEN is an experimental programming language with the following characteristics. (1) Any value which is permitted in some context of the language is permissible in any other meaningful context. In particular, functions and labels are permissible results of functions and values of variables. (2) Assignment and indirect addressing are formalized by introducing values, called reference, which in turn possess other values. The assignment operation always affects the relation between some reference and its value, (3) All compound data structures are treated as functions. (4) Type declarations are not permitted. The functional approach to data structures and the use of references insure that any process which accepts some data structure will accept any logically equivalent structure, regardless of its internal representation. More generally, any data structure may be implicit; i.e. it may be specified by giving an arbitrary algorithm for computing or accessing its components. The existence of label variables permits the construction of coroutines, quasi-parallel processes, and other unorthodox control mechanisms. A variety of programming examples illustrates the generality of the language. Limitations and possible extensions are discussed briefly. CACM May, 1970 Reynolds, J. C. programming language, data structure, reference, assignment, coroutine, quasi-parallel process, typeless language, applicative language, lambda calculus, list processing, nondeterministic algorithm 4.20 4.22 5.23 5.24 CA700506 JB February 13, 1978 1:43 PM 1024 4 2060 1051 4 2060 1102 4 2060 1132 4 2060 1379 4 2060 1380 4 2060 1390 4 2060 1486 4 2060 1541 4 2060 1542 4 2060 1549 4 2060 1552 4 2060 1683 4 2060 1693 4 2060 1693 4 2060 1693 4 2060 1706 4 2060 1781 4 2060 1781 4 2060 1781 4 2060 1787 4 2060 1826 4 2060 1836 4 2060 1836 4 2060 1846 4 2060 1854 4 2060 1860 4 2060 1878 4 2060 1945 4 2060 1945 4 2060 1989 4 2060 378 4 2060 2015 4 2060 2060 4 2060 2060 4 2060 2060 4 2060 2060 4 2060 2060 4 2060 2060 4 2060 2060 4 2060 2060 4 2060 2061 4 2060 2061 4 2060 2082 4 2060 2091 4 2060 2091 4 2060 2155 4 2060 2152 4 2060 2168 4 2060 2179 4 2060 2179 4 2060 2179 4 2060 2218 4 2060 2294 4 2060 2340 4 2060 2356 4 2060 2470 4 2060 2546 4 2060 2546 4 2060 2603 4 2060 2698 4 2060 2698 4 2060 2698 4 2060 2708 4 2060 2708 4 2060 2719 4 2060 2723 4 2060 2770 4 2060 2824 4 2060 2838 4 2060 2842 4 2060 2855 4 2060 2879 4 2060 2921 4 2060 2982 4 2060 2986 4 2060 557 4 2060 3045 4 2060 3045 4 2060 3077 4 2060 3080 4 2060 3093 4 2060 3106 4 2060 3112 4 2060 3124 4 2060 3154 4 2060 627 4 2060 106 4 2060 210 5 2060 1380 5 2060 1421 5 2060 1469 5 2060 1477 5 2060 1491 5 2060 1869 5 2060 2060 5 2060 2060 5 2060 2060 5 2060 2110 5 2060 2155 5 2060 2294 5 2060 2558 5 2060 2842 5 2060 3077 5 2060 3150 5 2060 1389 6 2060 1469 6 2060 1471 6 2060 210 6 2060 210 6 2060 210 6 2060 1834 6 2060 378 6 2060 2046 6 2060 2060 6 2060 2060 6 2060 2060 6 2060 2060 6 2060 2060 6 2060 2060 6 2060 2148 6 2060 2192 6 2060 2457 6 2060 2704 6 2060 2842 6 2060 2939 6 2060 2940 6 2060 2941 6 2060 2943 6 2060 3073 6 2060 3148 6 2060 3184 6 2060