CS350 :: Introduction
Table of Contents
1 Classification of Programming Languages
1.1 Special-Purpose Programming Language:
e.g. SQL, ?!TeX/LaTeX
1.1.1 Domain-Specific Programming Languages:
e.g. awk, m4
1.2 General-Purpose Programming Language:
some language that is not specific to a particular application or application area. Equivalent in power, to a universal TM. e.g. C, C++, Lisp, Java, Haskell.
2 Different Models of Programming
2.1 Declarative
2.1.1 Functional Programming
- Sequential
- Concurrent
2.2 Message-Passing
2.3 Relational
2.3.1 Logic Programming
2.4 Stateful Models
2.4.1 Object-oriented programming
- Shared-state concurrent model
3 Kernel Language Approach, Operational Semantics
- Each model has a kernel language
- Each kernel language is the subset of a larger kernel language
("Uniform" treatment of programming models)
- Uses Mozart programming platform, Oz programming language. GNU/Emacs!
Programming Paradigms as Computational Models