Introduction to Programming Languages

Table of contentsEdit

Introduction to Programming LanguagesEdit

75% developed  as of Jun 28, 2012 Preface
75% developed  as of Jun 28, 2012 Programming Language Paradigms

SyntaxEdit

75% developed  as of Jun 28, 2012 Grammars
75% developed  as of Jun 28, 2012 Parsing
75% developed  as of Jun 28, 2012 Ambiguity
75% developed  as of Jun 28, 2012 Precedence and Associativity

Grammars in PracticeEdit

75% developed  as of Jun 28, 2012 Logic Grammars
75% developed  as of Jun 28, 2012 Syntax Directed Interpretation
75% developed  as of Jun 28, 2012 Syntax Directed Translation
75% developed  as of Jun 28, 2012 Syntax Directed Type Checking

Execution EnvironmentsEdit

75% developed  as of Jun 28, 2012 Compiled Programs
75% developed  as of Jun 28, 2012 Interpreted Programs
75% developed  as of Jun 28, 2012 Binding

Introduction to Functional ProgrammingEdit

Pattern MatchingEdit

TypesEdit

25% developed  as of July 23, 2012 Data Types
25% developed  as of July 23, 2012 Primitive Types
25% developed  as of July 23, 2012 Constructed Types

Typing DisciplinesEdit

25% developed  as of July 23, 2012 Dynamically vs Statically Typed Languages
25% developed  as of July 23, 2012 Nominal vs Structural Typing Equivalence
25% developed  as of July 23, 2012 Safe vs Unsafe Typing
25% developed  as of July 23, 2012 Type Inference vs Type Annotations

PolymorphismEdit

25% developed  as of July 10, 2012 What is Polymorphism
25% developed  as of July 10, 2012 Ad-Hoc Polymorphism
25% developed  as of July 10, 2012 Universal Polymorphism

The Lambda CalculusEdit

High-Order FunctionsEdit

75% developed  as of Jun 28, 2012 Definition and Examples
75% developed  as of Jun 28, 2012 Closures
75% developed  as of Jun 28, 2012 Partial Application
75% developed  as of Jun 28, 2012 Noticeable High-Order Functions
75% developed  as of Jun 28, 2012 Template Oriented Programming

ScopeEdit

25% developed  as of Ago 24, 2012 Definitions and Types of Scope
25% developed  as of Ago 24, 2012 Scoping with Blocks
25% developed  as of Ago 24, 2012 Scoping with Namespaces

Functional Data StructuresEdit

75% developed  as of Dec 10, 2013 Algebraic Data Types
75% developed  as of Dec 10, 2013 Functional Data Structures

Memory AllocationEdit

Imperative Programming in PythonEdit

Memory ManagementEdit

75% developed  as of Dec 30, 2013 Types of Storage
75% developed  as of Dec 30, 2013 Static Memory
75% developed  as of Dec 30, 2013 Stack
75% developed  as of Dec 30, 2013 Heap
75% developed  as of Dec 30, 2013 Garbage Collection

Abstract Data TypesEdit

Object-Oriented ProgrammingEdit

ExceptionsEdit

Parameter PassingEdit

75% developed  as of Jun 28, 2012 Parameter Matching
75% developed  as of Jun 28, 2012 Evaluation Strategies

Introduction to Logic ProgrammingEdit

UnificationEdit

Cost ModelsEdit

Math in PrologEdit

Last modified on 3 February 2014, at 16:41