This book is a much more appropriate book for a modern
programming languages course than a traditional one based on paradigms.
Topics covered includes: Parsing, Interpretation, Desugaring, Adding
Functions to the Language, From Substitution to Environments, Functions
Anywhere, Mutation: Structures and Variables, Recursion and Cycles:
Procedures and Data, Objects, Memory Management, Representation Decisions,
Desugaring as a Language Feature, Control Operations, Checking Program
Invariants Statically: Types, Checking Program Invariants Dynamically:
Contracts and Alternate Application Semantics.
This
note covers the following topics: Parsing, Interpretation, Adding Functions to
the Language, From Substitution to Environments, Functions, Mutation: Structures
and Variables, Recursion and Cycles: Procedures and Data, Objects, Memory
Management, Representation Decisions, Desugaring as a Language Feature, Control
Operations, Checking Program Invariants Statically: Types, Checking Program
Invariants Dynamically: Contracts, Alternate Application Semantics.
This note presents
major features of programming languages, with primary emphasis on the role of
particular language features in writing good software; programming language
design alternatives; various programming paradigms embodied in languages, such
as procedural, data-flow, functional and object-oriented languages.
Objective of
this note is to teach the fundamental principles of programming, making use of
the typical aspects of the object-oriented, functional, and imperative
programming paradigms. Such basic principles are presented by referring to the
Java programming language.
This note covers the
following topics: Functional Languages, Imperative Languages, Object-Oriented
Languages, Constraint Languages and Logic Programming Languages.
The Dictionary of Programming Languages is a compendium of computer
coding methods assembled to provide information and aid your appreciation
for computer science history. The dictionary currently has over 120
entries.