Navigation
index
next
|
Programming Languages documentation
»
Programming Languages
Programming Languages
¶
Table of Contents:
1. Introduction
1.1. About this course
1.2. Evaluation
1.3. A Simple Question
1.4. Definition of a language
1.5. Differences in syntax
1.6. Differences in semantics
1.7. Differences in execution method
1.8. Criteria for good programming languages
1.9. Reasons to study the theory of programming language
2. Syntax and Semantics
2.1. Brief introduction to the formal language theory
2.2. Glance at the semantics theory
3. Names and Bindings
3.1. Names in a program
3.2. Namespace
3.3. Bindings
3.4. Scope
4. Variables
4.1. What is a variable?
4.2. Type
4.3. Left value
4.4. Memory management
4.5. Extent
5. Types
5.1. What is a type?
5.2. Type system
5.3. Various types
5.4. Type inference
5.5. Polymorphism
6. Expressions
6.1. Operator Precedence Grammar
6.2. Order of evaluation
6.3. Short-circuit evaluation
6.4. Lazy evaluation
7. Mid-semester paper
8. Control structures
8.1. Structured programming
8.2. Non-local exits
8.3. Exceptions
8.4. Continuation
9. Subprograms
9.1. What is a subprogram?
9.2. Parameter
9.3. Direction of parameter passing
9.4. Evaluation strategy of parameters
9.5. Closure
9.6. Coroutine
10. Object Oriented Programming
10.1. What is “Object Oriented”?
10.2. Abstract data type
10.3. Designing object oriented languages
11. Functional Programming
11.1. What is functional programming language?
11.2. referential transparency
11.3. Theoretical basis
11.4. Monad
Appendix
Answer
Index
Search Page
Next topic
1.
Introduction
This Page
Show Source
Quick search
Navigation
index
next
|
Programming Languages documentation
»
Programming Languages