DAT 501
Functional Programming
Object Oriented Programming

News

August 25

I put the last OOP exam (June 6) online, see below under Materials. Please ignore the last exercise, it is nonsense.

June 20

The OOP exam is (finally) graded. The results are on the Wailing Wall (anslagstavlan). You can pick up your exam at Sonja’s as usual.

June 12

Mandatory exercise 6 (calendar application) is graded and available from Sonja Hensel. Give her a phone call to see how it went if you live far outside Lund. There is a make-up exercise for this as well: the same exercise with deadline July 1.

May 22

Additional Java notes: [S'].

May 9

Mandatory exercise 6. Some Make-Up exercises.

May 2

Some old exam questions, [ex2], uploaded. See below under Materials.

Apr 23 2003

FP re-exams graded (all six passed with grade ‘G’). New exercise: Hunt the Wumpus! (see the schedule page). Combined both TA groups into one.

Apr 7 2003

Some comments on the FP exam (and even a few solutions!), see under Materials. And the second volume of Schmidt’s book is printed, and available from the secretaries for 180 SEK.

Apr 2 2003

Mandatory exercise 4, deadline Apr 15.

Apr 1 2003

Parent–Teacher meetings (utvecklingssamtal). I want to meet with the parents of those students who received the grade underkänd at the FP exam next Friday, 3 PM, in my office. (Note: cancelled)

Old News

See the news archives.

Format

The best place to keep up to date for week-by-week information is the

Lectures

Tue10-12(!)E:1406Lecture
Wed13-15E:1406Lecture (occasionally)
Fri13-15E:1406Lecture

4 hours per week, sometimes 6 hours per week. The lecturer covers this week’s topics very concisely. Attendance is voluntary.

TA sessions (Övningar)

Mon13-15E:3315 TA Group A
Mon13-15E:3315 TA Group B (now the same as Group A!)

2 hours per week. In class, students discuss a number of exercises that were selected by the lecturer. The class is headed by a teaching assistant. Normally there is no time to solve exercises during the session, so students are expected to have spent a few hours with the exercises beforehand—it is a good idea to do this in groups. This is doubly true of the programming exercises, which you are expected to solve at a computer whenever you find it convenient.

Attendance is voluntary. Attending a TA session unprepared is probably a waste of time: if you want to study for two hours, solve some exercises yourself; if you want to be entertained for two hours, go net-surfing.

Lab sessions (laborationer)

Wed9-12E:2119 (alfa)Grp A1
Thu9-12E:2119 (alfa)Grp A2
Fri9-12E:2119 (alfa)Grp B1
Fri9-12E:2117 (beta)Grp B2

3 hours per week. A small number of programming exercises is solved under supervision in the computer lab. You may find this entertaining, and may even feel you learned something, but don't expect too much—it is tempting to have the lab assistant solve a problem for you.

Lab attendance is mandatory! However, everybody can miss a lab or two due to exceptional cirumstances like illness. So if you miss a lab (or don’t finish on time) then you can hand in the solution to you lab assistant the following week—but this works only twice during the entire course!

For every lab session, the schedule page tells you what to do every week.

Mandatory programming exercises

During the course, a number of mandatory programming exercises have to be handed in at 13:15 on the day of the deadline. Mandatory exercises are, of course, mandatory.

The schedule page tells you what exercise to do and when.

Personnel

Thore HusfeldtLecturer
Eva-Marta Lundell Övningsgrupp A
Johan Gustavson Övningsgrupp B, labbgrupp A2 & B1, admin
Slawomir Nowaczyk Labbgrupp A1 & B1
Magdalene GrantsonLabbgrupp A1 & A2
Anna AnderssonKursombud grupp A
Caroline MårdgrenKursombud grupp B

Meetings

Lecturer and assistants meet Friday 15.15–16 every week in the meeting room E:2405 (the Fish Bowl).

Lecturer and student representatives will meet

Materials

References
[HR]Hansen and Rischel, Introduction to programming using SML. Addison–Wesley.
[S]David Schmidt, Programming principles in Java. Available eletronically, to be handed out.
[unix1]Lecture notes: Unix intro
[unix2]Lab 1: Unix login
[unix3]Lab 2: Unix
[unix4]Lab 3: Emacs
[unix5]Lecture notes: More about Unix
[unix6]Lab: More about Unix
[adm1]Riktlinjer för OOP inlämningsuppgifter
[adm2]Försättsblad för OOP Inlämningsuppgifter (PDF). Also available as LaTeX source.
[ex1]Additional exercises
[ex2]Old exam exercises (PDF)
[t030321]Exam from 3 Mar 2003 (PDF), and some comments.
[R]Rosen, Discrete Mathematics and its Applications. (This is the DM text book; we’ll use 3.6 only.)
[S']Additional Java notes (get them at Sonja Hensel’s office).
[t030606]Exam from 6 Jun 2003 (PDF).

External links

Moscow ML Homepage
Ludat Info
Java API Documentation (1.4, local copy)
Java Homepage (at sun.com)

Examination

The course consists of a number of seperate entries in the Ladok system, totalling 10 points.

PointsCodeGradesDescription
0 points 0201U, GLabs in functional programming.
1 points0202 U, GMandatory exercises 1–2, in functional programming
2 points0203 U, G, VGWritten exam in functional programming: Fri 21 Mar 2003, 14-19 in KH:Gasque.
1 point0204 U, GLabs in object-oriented programming.
3 points0205 U, GMandatory exercise 3–6, in object-oriented programming.
3 points0206 U, G, VGWritten exam in object-oriented programming. Fri Jun 6, 14-19, MA:10. Omtenta: 27/8, 14-19, MA:10J.

There is also a final grade for the entire Dat501 course (including DM and AD) once you have completed it, using U, G, VG.