Fundamentals of Programming Languages

" .. .1 always worked with programming languages because it seemed to me that until you could understand those, you really couldn't understand computers. Understanding them doesn't really mean only being able to use them. A lot of people can use them without understanding them."...

Full description

Bibliographic Details
Main Author: Horowitz, E.
Format: eBook
Language:English
Published: Berlin, Heidelberg Springer Berlin Heidelberg 1983, 1983
Edition:1st ed. 1983
Subjects:
Online Access:
Collection: Springer Book Archives -2004 - Collection details see MPG.ReNa
Table of Contents:
  • 6. Scope And Extent
  • 6.1 The Basics
  • 6.2 Run-time Implementation
  • 6.3 An Extended Example
  • 6.4 Binding, Scope and Extent Revisited
  • 6.5 A Look at Ada and Scope
  • 7. Procedures
  • 7.1 General Features
  • 7.2 Parameter Evaluation and Passing
  • 7.3 Call-By-Name
  • 7.4 Specification of Objects in a Procedure
  • 7.5 Aliasing
  • 7.6 Overloading
  • 7.7 Generic Functions
  • 7.8 Coroutines
  • 8. Data Abstraction
  • 8.1 An Introduction
  • 8.2 MODULA
  • 8.3 Euclid
  • 8.4 Ada
  • 8.5 SIMULA 67
  • 8.6 Abstract Data Types
  • 9. Exception Handling
  • 9.1 Design Issues
  • 9.2 PL/I ON-Conditions
  • 9.3 Exception Handling in CLU
  • 9.4 Exception Handling in MES A
  • 9.5 Exception Handling in Ada
  • 10. Concurrency
  • 10.1 Basic Concepts
  • 10.2 Semaphores
  • 10.3 Monitors
  • 10.4 Message Passing
  • 10.5 Concurrency in Ada
  • 11. Input-Output
  • Concepts Discussed in This Chapter
  • Exercises
  • 12. Functional Programming
  • 12.1 What is Functional Programming
  • 12.2 The Basics of LISP
  • 12.3 The LISP Interpreter
  • 12.4 FUNARGs and FEXPRs
  • 12.5 The PROG Feature 378 12.6 Delayed Evaluation
  • 13. Data Flow Programming Languages
  • 13.1 The Data Flow Model
  • 13.2 Language Design Goals
  • 13.3 VAL — A Data Flow Programming Language
  • 14. Object Oriented Programming Languages
  • 14.1 What Is Object Oriented Programming
  • 14.2 The Smalltalk Programming Language
  • 14.3 The Smalltalk Environment
  • 14.4 A Retrospective
  • References
  • 1. The Evolution Of Programming Languages
  • 1.1 Early History
  • 1.2 Early Modem History
  • 1.3 FORTRAN and ALGOL 60
  • 1.4 The Stormy’60s
  • 1.5 Advances in the 70s
  • 2. The Challenge Of Programming Language Design
  • 2.1 Criteria for Language Design
  • 2.2 Some Possible Solutions
  • 2.3 Imperative vs. Applicative Languages
  • 3. Defining Syntax
  • 3.1 The Character Set
  • 3.2 BNF
  • 3.3 Snytax Graphs
  • 3.4 Syntax and Program Reliability
  • 4. Variables, Expressions And Statements
  • 4.1 Variables and the Assignment Statement
  • 4.2 Binding Time and Storage Allocation
  • 4.3 Constants and Initialization
  • 4.4 Expressions
  • 4.5 Conditional Statements
  • 4.6 Iterative Statements
  • 4.7 The GOTO Statement and Labels
  • 4.8 A First Look at Ada
  • 5. Types
  • 5.1 Data Types and Typing
  • 5.2 Enumerated Data Types
  • 5.3 Elementary Data Types
  • 5.4 Pointer Data Type
  • 5.5 Structured Data Types
  • 5.6 Type Coercion
  • 5.7 Type Equivalence
  • 5.8 A Look at Ada and Types