CS 6905 Advanced
Topics in Computer Science:
|
|
Course Outline Jan.-Apr. 2004 |
|
|
|
Functional programming starts with nested function applications, as
found in most programming languages, and leads to powerful higher-order and
concurrent languages: it developed from Lisp and Scheme to Standard ML,
Haskell, Erlang, and Pizza (a version of Java). Logic programming starts with
Horn-logic facts and rules and leads to logic markup languages for business
rules: it developed from Prolog to BRML, RuleML, and Common Logic. This
course will treat the core of functional and logic programming in an
integrated manner as an example of declarative programming. Applications
include Web Services that provide logic inferences and/or functional
transformations over XML data. These notions are introduced using the small
functional-logic language Relfun. |
|
|
Instructor |
NRC |
||||||||||||||
Classes |
Thursdays 1:00-2:10 PM and
2:15-3:20 PM Jan
15 and Feb 5: Head Hall, Room H 303 Apr
1 :
NRC Building, Training Room B All other times : Head Hall, Room ADI C25 Detailed instructions
on the locations of Functional and Logic Programming classes: Room H 303: One level above the E level,
accessed via the stairs 'uphill' the Head Rest restaurant, and also known as the 'Airplane room' (because a large
airplane model hangs down from the ceiling). Room ADI C25: Enter Head Hall using the main entrance (from Dineen Drive), and enter the lobby, then go through the doors to the left (beside the stairs and elevator). The room is the third door on the left, and has a plaque clearly identifying it as the ADI lab. |
||||||||||||||
Course Web Site |
http://www.cs.unb.ca/~boley/FLP
|
||||||||||||||
|
|||||||||||||||
Marking |
30% assignments (3) 20% project documentation (ca. 10 soft pages) 20% project presentation (ca. 12 soft
slides) 30% exam |
||||||||||||||
|
|||||||||||||||
Lecture Schedule Overview |
|
||||||||||||||
|
|||||||||||||||
Reference Material
|
|||||||||||||||
Books and Articles |
The Integration of Functions into Logic Programming: From Theory to PracticeMichael Hanus Journal of Logic Programming, Vol. 19,20,
pp. 583-628, 1994 http://www.informatik.uni-kiel.de/~mh/publications/papers/JLP94.html Functional and Logic Programming - Proceedings of the Third Fuji International Symposium Masahiko Sato and Yoshihito Toyama (Eds.) http://www.wspc.com/books/compsci/3709.html A Tight, Practical Integration of Relations and FunctionsHarold Boley http://smi-web.stanford.edu/people/boley/lnai1712.html
|
||||||||||||||
Journal |
The Journal of Functional and Logic Programming (JFLP) http://danae.uni-muenster.de/lehre/kuchen/JFLP/
|
||||||||||||||
Online Resources |
Functional Logic Programminghttp://www.informatik.uni-kiel.de/~mh/FLP/ Functional Logichttp://directory.google.com/Top/Computers/Programming/Languages/Logic-based/Functional_Logic/ http://dmoz.org/Computers/Programming/Languages/Logic-based/Functional_Logic/ Integrations of functional and logic programming subject areahttp://www.dcs.qmul.ac.uk/SEL-HPC/Articles/GeneratedHtml/functional.logic.html Curryhttp://www.informatik.uni-kiel.de/~mh/curry/ Relfun |
Maintained by Harold Boley