Lambda-calculus combinators and functional programming
Lambda-calculus combinators and functional programming
Concepts of programming languages
Concepts of programming languages
Realistic compiler generation
Introduction to the theory of programming languages
Introduction to the theory of programming languages
The formal semantics of programming languages: an introduction
The formal semantics of programming languages: an introduction
The anatomy of programming languages
The anatomy of programming languages
Effectiveness of a language implementation project in building appreciation for formal specification
Journal of Computing Sciences in Colleges - Papers of the twelfth annual CCSC Northeastern Conference
Hi-index | 0.00 |
While the power of formal semantics is well recognized, it is not usually considered a teaching tool. This paper describes the use of denotational semantics in a course on programming language design for beginning graduate students. The course introduces the semantic and implementation issues underlying such concepts as naming, block structure, scope rules, parameter passing, flow control, and exception handling. The approach taken is to specify the semantics of these mechanisms, using a simplified form of denotational semantics, and use these descriptions as the basis for discussion. Implementations are developed from the specifications, and are available to students for experimentation.