Download CM033 : ADVANCED PROGRAMMING MODELS

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Relational model wikipedia , lookup

Join-pattern wikipedia , lookup

Control flow wikipedia , lookup

Abstraction (computer science) wikipedia , lookup

Go (programming language) wikipedia , lookup

Falcon (programming language) wikipedia , lookup

Object-oriented programming wikipedia , lookup

C Sharp (programming language) wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

Programming language wikipedia , lookup

Reactive programming wikipedia , lookup

Logic programming wikipedia , lookup

Functional programming wikipedia , lookup

Structured programming wikipedia , lookup

Prolog wikipedia , lookup

Transcript
CM033 : ADVANCED
PROGRAMMING MODELS
Dave Harrison
Office : D202
Phone : 3224
E-Mail : [email protected]
WWW :
http://computing.unn.ac.uk/staff/cgdh1
1.1
Unit Objectives
• To introduce programming with a relational
language.
– Pedagogical vehicle : GNU PROLOG.
• To introduce the four main models of
computation and their associated programming
language paradigms.
– Turing machine.
– Von Neumann.
 Imperative languages.
– Predicate calculus.
 Relational languages.
– Lambda calculus.
 Functional languages.
1.2
Unit Structure
• Unit team :
– David Harrison (unit tutor).
– Alun Moon.
• 12 hours lectures. 12 hours practical / seminars.
– Weeks 1-10 : Relational programming
(PROLOG).
– Weeks 11-12 : Computational models and
language paradigms.
• Assessment : closed book examination.
– 2 hours.
– 4 questions.
– You must attempt 3.
1.3
Books
• Prolog Programming For Artificial Intelligence
I. Bratko
Addison-Wesley Publishing 2000
• Programming Language Concepts And Paradigms
D.A. Watt
Prentice-Hall International 1993
• Comparative Programming Languages
R.G. Clark (Third Edition)
Addison-Wesley Publishing 2001
• 1066 And All That
W.C. Sellar & R.J. Yeatman
Mandarin 1991
1.4
Internet & Intranet Resources
• From my home page you can get to a page
containing useful links :
– ~daveh/links
– Notably, the GNU PROLOG home page.
– Versions of GNU PROLOG are available for
Linux and Windows machines.
 It’s free.
• Usenet newsgroups :
– comp.lang.prolog
– comp.lang.functional
– comp.sigplan
– comp.risks
– comp.theory
1.5
Internet & Intranet Resources II
• Also from my home page you can get to a
directory for an old lecture course on
declarative programming :
– ~daveh/teaching/dp.
– PROLOG (1-13) and Miranda (14-24).
– All ASCII files.
• Several hundred pages :
– Lecture notes.
– Example programs.
– Example programming assignment.
• Lots more in this directory than you need
but worth a look.
– Don’t just print it all out!
1.6
Internet & Intranet Resources III
• The PROLOG code given in the lectures can be found in the
following directory on Linux/UNIX :
/usr/users/daveh/teaching/cm033apm/examples
• The answers to the practicals can be found in the following
directory on Linux/UNIX :
/usr/users/daveh/teaching/cm033apm/practicals
1.7