Compiler generators : what they can do, what they might do, and what they will probably never do

書誌事項

Compiler generators : what they can do, what they might do, and what they will probably never do

Mads Tofte

(EATCS monographs on theoretical computer science, v. 19)

Springer-Verlag, c1990

  • : u.s.
  • : gw

大学図書館所蔵 件 / 35

この図書・雑誌をさがす

注記

Based on the author's thesis (Ph. D.)--Copenhagen, 1984

Includes bibliographical references and index

Translated from Danish

内容説明・目次

内容説明

The OrIgIn of this monograph is a course entitled "Semantics directed Compiler Generation" which Professor Neil D. Jones gave in 1982 at Copenhagen University, where I was a student at the time. In this course, he described a compiler generator, called CERES, which he was developing. I immediately felt attracted to the unusual combination of mathematical reasoning about com pilers and the small intricate building blocks that made up the running system. As I came to understand the system I discovered that within the existing mathematical framework one could express compiler generation as a special case of compilation; this led to a specification of a compiler generator which was bootstrapped on itself resulting in a machine-generated compiler generator. The purpose of this monograph is to describe the CERES system we produced in 1983-84 and compare it with other systems, includ ing more recent ones. Also, it is as relevant today as it was then to discuss the role of compiler generators as an aid in the design and implementation of programming languages; this I do in Chap. 5. This monograph is a strongly revised version of the cando scient.

目次

1 Introduction.- 1.1 The Scope of This Monograph.- 2 Report on the Compiler Generator CERES.- 2.1 Overview of CERES.- 2.1.1 On Composition of Programs.- 2.2 Description of Input to CERES.- 2.2.1 On "Concrete" Versus "Abstract" Syntax.- 2.2.2 The Semantic Language S.- 2.2.3 Writing Language Definitions.- 2.2.3.1 An Example: the Definition of LOOP.- 2.2.3.2 Extension with Products.- 2.2.3.3 Important Terminology Concerning Definitions.- 2.2.3.4 The Differences Between the Languages D and DS.- 2.2.4 Writing Interpretations.- 2.3 The Object Language T.- 2.4 The Compilers Generated by CERES.- 2.4.1 Translation from S into T by dS2T.- 2.4.2 Compilers Written as "Compiling Definitions".- 2.4.3 Compilers Written as Object Programs.- 2.4.4 Summary.- 2.5 The Compiler Generator.- 2.5.1 Compiler Generation Considered as Compilation.- 2.5.2 Definitions Regarded as Programs.- 2.5.2.1 The Abstract Syntax D of Definitions.- 2.5.2.2 The Language D.- 2.5.3 Translation from ? to D? by d' S2T.- 2.5.4 Translation from D? to S by dD?2S.- 2.5.5 The Definition ? of ?.- 2.5.6 The Compiler Generator cocom.- 2.5.7 How cocom Itself Was Generated.- 2.6 Implementation and Experience.- 2.6.1 Hardware and Software.- 2.6.2 Performance.- 2.6.3 The CERES Project.- 3 Compiler Generation, Composability, and Self-composability.- 3.1 Programming Languages and Compilers.- 3.2 The Compiler Generation Problem.- 3.3 Using a Semantic Language to Define Programming Languages.- 3.4 Composability and Self-composability.- 4 Discussion of Technical Aspects of Compiler Generation.- 4.1 The Algebraic Connection.- 4.1.1 Basic Concepts.- 4.1.2 Compiler Algebras and Homomorphic Translation.- 4.1.3 The Difference Between Compiler Algebras and Target Language Algebras.- 4.1.4 On the Need for Powerful Compiler Algebra Operations.- 4.1.5 Conclusion.- 4.2 On Choosing Good Semantic Languages.- 4.2.1 Mosses' "Semantics Implementation System" (SIS).- 4.2.2 Paulson's Compiler Generator (PCG).- 4.2.3 CERES and LAMBDA-CERES.- 4.2.4 The SAM System.- 4.2.5 Conclusion.- 4.3 Interface Problems.- 5 On Semantics, Compiler Generation, and Hacking.- 5.1 On the Nature of Machine-Readable Language Definitions.- 5.2 On Writing Language Definitions.- 5.3 On the Role of Mathematical Proofs.- Appendix 1 The LOOP Interpretation.- Appendix 4 The SelfComposer.- References.- Table of Symbols and Their Meanings.

「Nielsen BookData」 より

関連文献: 1件中  1-1を表示

詳細情報

  • NII書誌ID(NCID)
    BA10516874
  • ISBN
    • 0387514716
    • 3540514716
  • LCCN
    90009432
  • 出版国コード
    gw
  • タイトル言語コード
    eng
  • 本文言語コード
    eng
  • 原本言語コード
    dan
  • 出版地
    Berlin ; New York
  • ページ数/冊数
    xi, 146 p.
  • 大きさ
    25 cm
  • 分類
  • 件名
  • 親書誌ID
ページトップへ