Toward a General Processor for Programming Languages Many efforts have been made to develop a better way of implementing a higher level programming language than by the construction of a whole new compiler, but so far none has proved generally satisfactory. In this paper, it is contended that a programming language is best described functionally as a body of macro instructions, and that the macro call constitutes a canonical form in terms of which a programming notation may be described. A supporting discussion of the logical and his torical role of the macro instruction is presented. Also discussed are the conflict between machine independence and object program efficiency, and the question of where the greatest difficulties lie in compiler construction. CACM January, 1968 Halpern, M. J. programming language translator, programming language processor, general translator, general processor, macro instruction processor; meta processor, meta language translator, meta language processor, compiler-compiler, writing system, translator writing system 4.10 4.11 4.12 4.20 CA680106 JB February 23, 1978 2:42 PM 1358 4 1788 1565 4 1788 1781 4 1788 1781 4 1788 1788 4 1788 1788 4 1788 1788 4 1788 1788 4 1788 1006 5 1788 1007 5 1788 205 5 1788 1781 5 1788 1788 5 1788 1788 5 1788 1788 5 1788 3189 5 1788 123 6 1788 196 6 1788 919 6 1788 990 6 1788 1007 6 1788 1046 6 1788 1131 6 1788 1139 6 1788 1140 6 1788 1149 6 1788 1198 6 1788 1215 6 1788 1223 6 1788 1265 6 1788 1303 6 1788 1323 6 1788 1358 6 1788 1366 6 1788 1421 6 1788 1460 6 1788 1462 6 1788 1463 6 1788 1467 6 1788 1468 6 1788 1477 6 1788 1491 6 1788 1496 6 1788 1531 6 1788 1535 6 1788 1565 6 1788 1601 6 1788 1602 6 1788 1613 6 1788 1614 6 1788 1626 6 1788 1641 6 1788 1787 6 1788 1788 6 1788 205 6 1788 224 6 1788 249 6 1788 288 6 1788 316 6 1788 381 6 1788 398 6 1788 11 6 1788 404 6 1788 410 6 1788 463 6 1788 464 6 1788 483 6 1788 3184 6 1788 3188 6 1788 584 6 1788 600 6 1788 680 6 1788 691 6 1788 763 6 1788 799 6 1788