Post

The Pieces of Programming Languages

Essential “pieces” necessary for defining and learning any programming language:

  • Syntax: How do you write the various parts of the language?
  • Semantics: What do the various language features mean? For example, how are expressions evaluated?
  • Idioms: What are the common approaches to using the language features to express computations?
  • Libraries: What has already been written for you? How do you do things you could not do without library support (like access files, data structers)?
  • Tools: What is available for manipulating programs in the language (compilers, read-eval-print loops, debuggers, …)
This post is licensed under CC BY 4.0 by the author.