Algol-like Languages

Algol-like Languages
Author: Peter O'Hearn
Publisher: Springer Science & Business Media
Total Pages: 345
Release: 2013-03-14
Genre: Computers
ISBN: 147573851X

Download Algol-like Languages Book in PDF, Epub and Kindle

To construct a compiler for a modern higher-level programming languagel one needs to structure the translation to a machine-like intermediate language in a way that reflects the semantics of the language. little is said about such struc turing in compiler texts that are intended to cover a wide variety of program ming languages. More is said in the Iiterature on semantics-directed compiler construction [1] but here too the viewpoint is very general (though limited to 1 languages with a finite number of syntactic types). On the other handl there is a considerable body of work using the continuation-passing transformation to structure compilers for the specific case of call-by-value languages such as SCHEME and ML [21 3]. ln this paperl we will describe a method of structuring the translation of ALGOL-like languages that is based on the functor-category semantics devel oped by Reynolds [4] and Oles [51 6]. An alternative approach using category theory to structure compilers is the early work of F. L. Morris [7]1 which anticipates our treatment of boolean expressionsl but does not deal with procedures. 2 Types and Syntax An ALGOL-like language is a typed lambda calculus with an unusual repertoire of primitive types. Throughout most of this paper we assume that the primi tive types are comm(and) int(eger)exp(ression) int(eger)acc(eptor) int(eger)var(iable) I and that the set 8 of types is the least set containing these primitive types and closed under the binary operation -.

Algol-like Languages

Algol-like Languages
Author: Peter O'Hearn
Publisher: Springer Science & Business Media
Total Pages: 285
Release: 2013-03-12
Genre: Computers
ISBN: 1461241189

Download Algol-like Languages Book in PDF, Epub and Kindle

In recent years there has been a remarkable convergence of interest in programming languages based on ALGOL 60. Researchers interested in the theory of procedural and object-oriented languages discovered that ALGOL 60 shows how to add procedures and object classes to simple imperative languages in a general and clean way. And, on the other hand, researchers interested in purely functional languages discovered that ALGOL 60 shows how to add imperative mechanisms to functional languages in a way that does not compromise their desirable properties. Unfortunately, many of the key works in this field have been rather hard to obtain. The primary purpose of this collection is to make the most significant material on ALGoL-like languages conveniently available to graduate students and researchers. Contents Introduction to Volume 1 1 Part I Historical Background 1 Part n Basic Principles 3 Part III Language Design 5 Introduction to Volume 2 6 Part IV Functor-Category Semantics 7 Part V Specification Logic 7 Part VI Procedures and Local Variables 8 Part vn Interference, Irreversibility and Concurrency 9 Acknowledgements 11 Bibliography 11 Introduction to Volume 1 This volume contains historical and foundational material, and works on lan guage design. All of the material should be accessible to beginning graduate students in programming languages and theoretical Computer Science.

Algol-like Languages

Algol-like Languages
Author: Peter O'Hearn
Publisher:
Total Pages: 349
Release: 1996
Genre: ALGOL (Computer program language)
ISBN:

Download Algol-like Languages Book in PDF, Epub and Kindle

To construct a compiler for a modern higher-level programming languagel one needs to structure the translation to a machine-like intermediate language in a way that reflects the semantics of the language. little is said about such struc turing in compiler texts that are intended to cover a wide variety of program ming languages. More is said in the Iiterature on semantics-directed compiler construction [1] but here too the viewpoint is very general (though limited to 1 languages with a finite number of syntactic types). On the other handl there is a considerable body of work using the continuation-passing transformation to structure compilers for the specific case of call-by-value languages such as SCHEME and ML [21 3]. ln this paperl we will describe a method of structuring the translation of ALGOL-like languages that is based on the functor-category semantics devel oped by Reynolds [4] and Oles [51 6]. An alternative approach using category theory to structure compilers is the early work of F. L. Morris [7]1 which anticipates our treatment of boolean expressionsl but does not deal with procedures. 2 Types and Syntax An ALGOL-like language is a typed lambda calculus with an unusual repertoire of primitive types. Throughout most of this paper we assume that the primi tive types are comm(and) int(eger)exp(ression) int(eger)acc(eptor) int(eger)var(iable) I and that the set 8 of types is the least set containing these primitive types and closed under the binary operation -.

History of Programming Languages

History of Programming Languages
Author: Richard L. Wexelblat
Publisher: Academic Press
Total Pages: 784
Release: 2014-05-27
Genre: Reference
ISBN: 1483266168

Download History of Programming Languages Book in PDF, Epub and Kindle

History of Programming Languages presents information pertinent to the technical aspects of the language design and creation. This book provides an understanding of the processes of language design as related to the environment in which languages are developed and the knowledge base available to the originators. Organized into 14 sections encompassing 77 chapters, this book begins with an overview of the programming techniques to use to help the system produce efficient programs. This text then discusses how to use parentheses to help the system identify identical subexpressions within an expression and thereby eliminate their duplicate calculation. Other chapters consider FORTRAN programming techniques needed to produce optimum object programs. This book discusses as well the developments leading to ALGOL 60. The final chapter presents the biography of Adin D. Falkoff. This book is a valuable resource for graduate students, practitioners, historians, statisticians, mathematicians, programmers, as well as computer scientists and specialists.

Engineering a Compiler

Engineering a Compiler
Author: Keith D. Cooper
Publisher: Elsevier
Total Pages: 825
Release: 2011-01-18
Genre: Computers
ISBN: 0080916619

Download Engineering a Compiler Book in PDF, Epub and Kindle

This entirely revised second edition of Engineering a Compiler is full of technical updates and new material covering the latest developments in compiler technology. In this comprehensive text you will learn important techniques for constructing a modern compiler. Leading educators and researchers Keith Cooper and Linda Torczon combine basic principles with pragmatic insights from their experience building state-of-the-art compilers. They will help you fully understand important techniques such as compilation of imperative and object-oriented languages, construction of static single assignment forms, instruction scheduling, and graph-coloring register allocation. In-depth treatment of algorithms and techniques used in the front end of a modern compiler Focus on code optimization and code generation, the primary areas of recent research and development Improvements in presentation including conceptual overviews for each chapter, summaries and review questions for sections, and prominent placement of definitions for new terms Examples drawn from several different programming languages

Informal Introduction to ALGOL 68

Informal Introduction to ALGOL 68
Author: C. H. Lindsey
Publisher: North-Holland
Total Pages: 0
Release: 1977
Genre: ALGOL (Computer program language)
ISBN: 9780720405040

Download Informal Introduction to ALGOL 68 Book in PDF, Epub and Kindle

ALGOL 60 implementation

ALGOL 60 implementation
Author: Brian Randell
Publisher:
Total Pages: 418
Release: 1971
Genre:
ISBN:

Download ALGOL 60 implementation Book in PDF, Epub and Kindle

A Guide to ALGOL Programming

A Guide to ALGOL Programming
Author: Daniel D. McCracken
Publisher:
Total Pages: 124
Release: 1962
Genre: Computers
ISBN:

Download A Guide to ALGOL Programming Book in PDF, Epub and Kindle

A book covering ALGOL 60. An early general-audience manual on the language.

Essentials of Programming Languages, third edition

Essentials of Programming Languages, third edition
Author: Daniel P. Friedman
Publisher: MIT Press
Total Pages: 433
Release: 2008-04-18
Genre: Computers
ISBN: 0262062798

Download Essentials of Programming Languages, third edition Book in PDF, Epub and Kindle

A new edition of a textbook that provides students with a deep, working understanding of the essential concepts of programming languages, completely revised, with significant new material. This book provides students with a deep, working understanding of the essential concepts of programming languages. Most of these essentials relate to the semantics, or meaning, of program elements, and the text uses interpreters (short programs that directly analyze an abstract representation of the program text) to express the semantics of many essential language elements in a way that is both clear and executable. The approach is both analytical and hands-on. The book provides views of programming languages using widely varying levels of abstraction, maintaining a clear connection between the high-level and low-level views. Exercises are a vital part of the text and are scattered throughout; the text explains the key concepts, and the exercises explore alternative designs and other issues. The complete Scheme code for all the interpreters and analyzers in the book can be found online through The MIT Press web site. For this new edition, each chapter has been revised and many new exercises have been added. Significant additions have been made to the text, including completely new chapters on modules and continuation-passing style. Essentials of Programming Languages can be used for both graduate and undergraduate courses, and for continuing education courses for programmers.