ABSTRACT
High-level language computers (HLLC) have attracted interest in the architectural and programming community during the last 15 years; proposals have been made for machines directed towards the execution of various languages such as ALGOL,1,2 APL,3,4,5 BASIC,6,7 COBOL,8,9 FORTRAN,10,ll LISP,12,13 PASCAL,14 PL/I,15,16,17 SNOBOL,18,19 and a host of specialized languages. Though numerous designs have been proposed, only a handful of high-level language computers have actually been implemented.4,7,9,20,21 In examining the goals and successes of high-level language computers, the authors have found that most designs suffer from fundamental problems stemming from a misunderstanding of the issues involved in the design, use, and implementation of cost-effective computer systems. It is the intent of this paper to identify and discuss several issues applicable to high-level language computer architecture, to provide a more concrete definition of high-level language computers, and to suggest a direction for high-level language computer architectures of the future.
- 1.H.J. Lane, "An Algol 68 Machine and Translator," Computer Languages Group Report UCLA-ENG-7369, Computer Science Department, University of California (1973). Ph.D. Dissertation]] Google ScholarDigital Library
- 2.A. S. Tanenbaum, Design and Implementation of an Algol 68 Virtual Machine, AFDELING INFORMATICA, Amsterdam (June 1973).]]Google Scholar
- 3.P. S. Abrams, An APL Machine, Stanford University (1970). Ph.D. Dissertation]] Google ScholarDigital Library
- 4.A. Hassitt, J. W. Lageschulte, and L. E. Lyon, "Implementation of a High Level Language Machine," Communications of the ACM16(4). pp. 199-212 (April 1973).]] Google ScholarDigital Library
- 5.S. C. Schroeder and L. E. Vaughn, "A High Order Language Optimal Execution Processor (FIRST)," Proceedings of the ACM-IEEE Symposium on High-Level-Language Computer Architecture, pp. 109-116 (November 1973).]] Google ScholarDigital Library
- 6.J. J. Burkle, A. Frick, and C. Schlier, "Hardware Structures for the Interpretation of High Level Languages," Proceedings of a Conference on Struktur und Betrieb von Rechensystemen. Munich (1978).]]Google Scholar
- 7.H. J. Burkle, A. Frick, and C. Schlier, "High Level Language Oriented Hardware and the Post-von Neumann Era," Proceedings of the Fifth Annual Symposium on Computer Architecture, pp. 60-65 (April 1978).]] Google ScholarDigital Library
- 8.R. J. Chevance, "A Cobol Machine," ACM SIGPLAN/SIGMICRO Interface Meeting, New York, pp. 139-144 (1973).]] Google ScholarDigital Library
- 9.M. D. Shapiro, "The Criterion COBOL System," Proceedings of the 1978 AFIPS Conference, pp. 1049-1054, AFIPS Press (1978).]]Google Scholar
- 10.T. R. Bashkow, A. Sasson, and A. Kronfeld, "System Design of a FORTRAN Machine," IEEE Transactions on Computers EC-16(4), pp. 485-499 (August 1967).]]Google ScholarCross Ref
- 11.A. J. Melbourne and J. M. Pugmire, "A Small Computer for the Direct Processing of FORTRAN Statements," Computer Journal, pp. 24-27 (April 1965).]]Google Scholar
- 12.R. Greenblatt, T. Knight, J. Holloway, and D. Moon, The LISP Machine, In preparation.]]Google Scholar
- 13.L. P. Deutsch, Experience with a Microprogrammed Interlisp System, In preparation.]]Google Scholar
- 14.Western Digital Corporation, PASCAL Microengine Reference Manual, March 1979.]]Google Scholar
- 15.M. Sugimoto, "PL/I Reducer and Direct Processor," Proceedings of the 24th ACM National Conference, New York, pp. 519-538, ACM (1969).]] Google ScholarDigital Library
- 16.D. B. Wortman, A Study of Language Directed Computer Design, Stanford University (1972). Ph.D. Dissertation]] Google ScholarDigital Library
- 17.G. J. Myers, Advances in Computer Architecture, John Wiley & Sons (1978).]] Google ScholarDigital Library
- 18.M. D. Shapiro, "A SNOBOL Machine: A Higher-Level Language Processor in a Conventional Hardware Framework," Digest of the Sixth Annual IEEE Computer Society International Conference, pp. 41-44 (1972).]]Google Scholar
- 19.M. D. Shapiro, A SNOBOL Machine: Functional Architectural Concepts of a String Processor, Purdue University (June 1972). Ph.D. Dissertation]] Google ScholarDigital Library
- 20.R. Rice and W. R. Smith, "SYMBOL—A Major Departure from Classic Software Dominated von Neumann Computing Systems," Proceedings of the AFIPS 1971 Spring Joint Computer Conference, Montvale, N.J., pp. 575-587, AFIPS Press (1971).]]Google Scholar
- 21.H. Weber, "A Microprogrammed Implementation of EULER on IBM System/360 Model 30," Communications of the ACM 10(9), pp. 549-558 (September 1967).]] Google ScholarDigital Library
- 22.W. C. Nielsen, "Design of an Aerospace Computer for Direct HOL Execution," Proceedings of the ACM-IEEE Symposium on High-Level-Language Computer Architecture pp. 34-42 (November 1973).]] Google ScholarDigital Library
- 23.W. M. McKeeman, "Language Directed Computer Design," AFIPS 1967 Fall Joint Computer Conference, pp. 413-417 (1967).]]Google Scholar
- 24.B. W. Leverett, R. D. G. Cattell, S. O. Hobbs, J. M. Newcomer, A. H. Reiner, B. R. Schatz, and W. A. Wulf, "An Overview of the Production Quality Compiler-Compiler Project," Report CMU-CS-79-105, Carnegie-Mellon University (February 1979).]]Google ScholarCross Ref
- 25.M. E. Lesk, "Lex—A Lexical Analyzer Generator," Comp. Sci. Tech. Rep. No. 39, Bell Laboratories, Murray Hill, New Jersey (October 1975).]]Google Scholar
- 26.S. C. Johnson, Yacc: Yet Another Compiler-Compiler, Bell Laboratories internal memorandum (1978).]]Google Scholar
- 27.A. V. Aho and S. C. Johnson, "Optimal Code Generation for Expression Trees," J. Assoc. Comp. Mach.23(3), pp. 488-501 (1975). Also in Proc. ACM Symp. on Theory of Computing, pp. 207-217, 1975.]] Google ScholarDigital Library
- 28.J. L. Bruno and T. Lassagne, "The Generation of Optimal Code for Stack Machines," Journal of the ACM22(3), pp. 382-396 (July 1975).]] Google ScholarDigital Library
- 29.E. I. Organick, Computer System Organization: The B5700/B6700 Series, Academic Press (1973).]] Google ScholarDigital Library
- 30.R. N. Ibbett and P. C. Capon, "The Development of the MU5 Computer System," Communications of the ACM21(1), pp. 13-24(January 1978).]] Google ScholarDigital Library
- 31.T. A. Laliotis, "Implementation Aspects of the SYMBOL Hardware Compiler," Proceedings of the First Annual Symposium on Computer Architecture, pp. 111-115 (1973).]] Google ScholarDigital Library
- 32.J. W. Anderberg, "Source Program Analysis and Object String Generation Algorithms and their Implementation in the SYMBOL 2R Translator," Report NSF-OCA-GJ33097-CL7410, Cyclone Computer Laboratory, Iowa State University, Ames, Iowa (1974). NTIS number PB-230 614/AS]]Google Scholar
- 33.D. R. Ditzel, "Interactive Debugging Tools for a Block Structured Programming Language," Report MCS72-03642-CL7802, Cyclone Computer Laboratory, Iowa State University, Ames, Iowa (1978).]]Google Scholar
- 34.D. R. Ditzel, "High Level Language Debugging Tools on the SYMBOL Computer System," Submitted to the 1980 Workshop on High-Level Language Computer Architecture (January 1980).]] Google ScholarDigital Library
- 35.D. M. Ritchie and S.C. Johnson, Private Communication, Bell Laboratories (1979).]]Google Scholar
- 36.A. S. Tanenbaum, "Implications of Structured Programming on Machine Architecture," Communications of the ACM, pp. 237-246 (March 1978).]] Google ScholarDigital Library
- 37.E. C. R. Hehner, "Matching Program and Data Representations to a Computing Environment," Technical Report CSRG-44, Computer Systems Research Group, University of Toronto, Toronto, Canada (November 1974). Ph.D. Dissertation]] Google ScholarDigital Library
- 38.E. C. R. Hehner, "Computer Design to Minimize Memory Requirements," Computer 9(8), pp. 65-70 (1976).]]Google ScholarDigital Library
- 39.Y. Chu, "Concepts of High-Level Language Computer Architecture," in High Level Language Computer Architecture, ed. Y. Chu, Academic Press, New York (1975).]]Google Scholar
- 40.T. Tang and K. O'Flaugherty, "Virtual Machines and the NCR Criterion," Datamation, pp. 129-134 (April 1978).]]Google Scholar
- 41.M. Richards, "BCPL: A Tool for Compiler Writing and Structured Programming," Proceedings of the AFIPS 1969 SJCC (1969).]]Google Scholar
- 42.W. A. Wulf, D. B. Russell, and A. N. Haberman, "BLISS: A Language for Systems Programming," Communications of the ACM14(12), pp. 780-790 (December 1971).]] Google ScholarDigital Library
- 43.B. W. Kernighan and D. M. Ritchie, The C Programming Language, Prentice-Hall, Englewood Cliffs, New Jersey (1978).]] Google ScholarDigital Library
- 44.N. Wirth, "On "PASCAL", Code Generation, and the CDC 6000 Computer," Technical Report TR-257, Stanford University, Stanford, California.]] Google ScholarDigital Library
- 45.E. A. Feustal, "On the Advantages of Tagged Architecture," IEEE Transactions on ComputersC-22(7), pp. 644-656 (July 1973).]]Google Scholar
- 46.R. J. Zingg and H. Richards, Jr., "SYMBOL: A System Tailored to the Structure of Data," Proceedings of the National Electronics Conference, Oak Brook, Illinois 27, pp. 306-311, National Electronics Conference, Inc. (1972).]]Google Scholar
- 47.D. R. Ditzel and W. A. Kwinn, "Reflections on a High Level Language Computer System or Parting Thoughts on the SYMBOL Project," Submitted to the 1980 Workshop on High-Level Language Computer Architecture(January 1980).]] Google ScholarDigital Library
- 48.W. Wulf, R. K. Johnsson, C. B. Weinstock, S. O. Hobbs, and C. M. Geschke, The Design of an Optimizing Compiler. American Elsevier, New York, N. Y. (1975).]] Google ScholarDigital Library
- 49.A. V. Aho and J. D. Ullman, Principles of Compiler Design, Addison-Wesley, Reading, Mass. (1977).]] Google ScholarDigital Library
- 50.L. J. Shustek, "Analysis and Performance of Computer Instruction Sets," STAN-CS-78-658, Stanford University (May 1978).]]Google Scholar
- 51.C. R. Hollander, "Decompilation of Object Programs," Technical Report No. 54, Stanford University (January 1973). Ph.D. Dissertation]] Google ScholarDigital Library
- 52.D. W. Anderson, F. J. Sparacio, and R. M. Tomasulo, "The IBM System/360 Model 91: Machine Philosophy and Instruction Handling," IBM Journal of Reserch and Development11(1), pp. 8-24 (January 1967).]]Google Scholar
Index Terms
- Retrospective on high-level language computer architecture
Recommendations
Concepts of high-level-language computer architecture
High-level-language (HLL) computer architecture refers to those architecture which can accept one or more high-level languages (such as Fortran, Alogl, Snobol, etc.). This paper classifies the HLL computer architecture into four types (von Neumann ...
Concepts of high-level-language computer architecture
ACM '75: Proceedings of the 1975 annual conferenceHigh-level-language (HLL) computer architecture refers to those architecture which can accept one or more high-level languages (such as Fortran, Alogl, Snobol, etc.). This paper classifies the HLL computer architecture into four types (von Neumann ...
Interactive High-Level Language Direct-Execution Microprocessor System
It is our habit in writing an English composition that, as we write each word, each phrase, each sentence, and each paragraph, we consciously or unconsciously check the syntax and the semantics of the composition just written. Writing a computer program ...
Comments