|
Synopsis Purpose. Study of the multiple forms of expression in artificial computer-related languages. Books and other resources.
Evaluation. Homework/lab projects (1/3) + Midterm (1/3) + Exam (1/3)
|
Master Sorceress:
Prof. Cristina Lopes, ICS2 216, lopes
at ics dot uci
dot edu; Office hours: Tuesdays
and Thursdays, 11-noon.
Wizardry Assistants: Trung Ngo
Lectures: Tues & Thur 12:30-1:50p, CS 180
Syllabus
| Week | Lecture | Date |
Topics |
Homework | Readings / Notes |
| 1 | 1 | 1/10 | Course goals and description. Computer languages: diversity and categories. | HW1: Brook's HOPL paper. | |
| 2 | 1/12 | Playing with languages: the metacircular interpreter. Review of INF 101 in the context of metalinguistic abstraction. | 4.1 | ||
| 2 | 3 | 1/17 | The metacircular interpreter (cont). |
HW2 |
4.1 |
| 4 | 1/19 | Functional programming languages. Scheme, Haskell, Ocaml. Strengths of functional programming style. | OCAML tutorial | ||
| 3 | 5 | 1/24 |
Declarative programming. SQL. Deductive data query in logic programming. The logic programming interpreter. |
W3's SQL tutorial SQL examples |
|
| 6 | 1/26 |
4.4 qry-eval |
|||
| 4 | 7 | 1/31 | The logic programming interpreter (cont). SQL revisited. | HW3 | |
| 8 | 2/2 | No class. | |||
| 5 | 9 | 2/7 | Revision. | ||
| 10 | 2/9 | Midterm | |||
| 6 | 11 | 2/14 | Aspect-oriented programming. The aspect interpreter. | HW4 | aspect-eval |
| 12 | 2/16 | The languages of the Web: Scripting and dynamic languages. JavaScript. | JavaScript tutorial | ||
| 7 | 13 | 2/21 |
The languages of the Web: Scripting and dynamic languages: Ruby. |
HW5 hw5.rar |
Pragmatic Ruby Poignant Ruby |
| 14 | 2/23 | Ruby on Rails | |||
| 8 | 15 | 2/28 | The languages of the Web: Scripting and dynamic languages: Perl. | ||
| 16 | 3/2 |
The languages of the Web:
Markup languages. XML, XML-based langs. |
XML tutorial XSL: XSLT, XPath, XSL-FO XQuery |
||
| 9 | 17 | 3/7 |
Visual languages: Max,
LabView. Programs as structures: SubText |
Max/MSP | |
| 18 | 3/9 | SubText | |||
| 10 | 19 | 3/14 | Modeling and specification languages. | ||
| 20 | 3/16 | Revision. | |||
| Friday | 3/24 | Exam starts at 10:30 |