Hide menu

TDDC74 Programming: Abstraction and Modelling

Laboratory Assignments

Vt1 2008

This page describes the course given 2008 and some years earlier.

The Lab Assignments in a programming course are an opportunity for students to apply the techniques and concepts they have learned. In this course, we encourage regular delivery, quality work, and good effort.

Registration

Students register in pairs for the labs at IDA's webreg-system https://www.ida.liu.se/webreg/TDDC74-2008/LAB1

Students should then setup their accounts so that they have the proper directores and are able to run Dr. Scheme. Type the following:

~TDDC74/setup

This should make it possible for the student to run Dr. Scheme by simply typing in a terminal widow (without quotes): "drscheme &"

It will also create the appropriate Lab sub-directories for the student. Please use these to store Lab files.

Dr. Scheme
In this course we will support and assume that you are using Dr. Scheme (version 360), which is an IDE (Integrated Development Enviroment) which includes Pretty Big, one of many implementations of the programming language Scheme.
Using Dr. Scheme at IDA

To start Dr Scheme open a terminal window and type: drscheme &

Dr. Scheme should now start. You are first asked to choose the appropriate language, then you should do the following when asked for a programming language: Under the heading 'Professional Languages' choose PLT and select Pretty Big, then click ok.

If you fail to choose the correct language the first time you can always do it from within Dr. Scheme under the language menu. Remember to click run when you are done with this, otherwise any code you type in the Interactions window (the lower one) will still use the old language setting.

The next time you log in to your account you only need to type drscheme & in a terminal.

Installing Dr.Scheme at home
If you want to use Dr. Scheme at home you can download from the PLT Website. Select the version and platform appropriate for you, download and install. We use version 360 at IDA, therefore it is recommended that you use that at home as well.
Dr. Scheme tutorial
There is a brief tour of the Dr. Scheme environment; the same information can be found within Dr. Scheme itself. (Obs! The tour emphasizes different "language levels". Using Dr. Scheme with the language level set to "Beginning Student" can be helpful if you would like to use Dr. Scheme's "Stepper" tool. However, be aware that many of our course exercises assume that you are using Dr. Scheme with the language level set at "Advanced Student" or higher. Switching language levels is easy.)
Printing from DrScheme
When you want to print from DrScheme check the printbox. It may happen that it does not contain the correct parameters. Check the following
  • Set destination to Printer (it may show Prewiew).
  • Set paper to A4 (it may show ppaper size Letter).
  • Print command should be lp (it may show lpr) or other unix command you prefer to print with.
Scheduled times

On average, there are 2 scheduled Lab Sessions (LA) every week; these are times when specific computer-rooms are available to students in the course.

For most students, the 4 hours of scheduled computer-room time during the week may not be enough to complete a Lab Assignment. If students need more time, they need to make their own arrangements (work at home, find an available computer at LIU, etc.)

Instuctions and materials
Instructions for the Lab Assignments and other related material can be found on the webpage titled "Kursmaterial".
Delivery

There are 4 required Lab Assignments. It is very unlikely that students will be able to "keep up" with the course if they do not make regular progress on their programming skills. Therefore, each Lab Assignment has a deadline of kl. 17:00 on a Friday -- and students are expected to deliver a completed Lab Assignment by its deadline. In most cases, students will be notified if the Lab Assignment was acceptable or not by kl. 17:00 the following Wednesday; if a Lab Assignment was not acceptable, there will be information about how to fix it.

Lab Assignments are handed in on paper and the code should also be sent by e-mail to the lab assistant.

Obs! In order to get points/grades for this term, Lab Assignment 4 and incomplete Lab Assignments should be submitted by 17:00 hours Friday, 16/3. If we require any additional revisions to Lab Assignments submitted by Friday, 16/3, students will have until the following Friday 30/3 at 17:00 hours to complete and submit them.

Evaluation

Each Lab Assignment includes a specification of what needs to be done. In order to pass the course, all Lab Assignments need to be acceptable. In some cases there will be minor problems with a submitted Lab Assignment, in which case we will simply tell the team about the issue without requiring them to re-submit the Lab Assignment. If there are significant problems with a submitted Lab Assignment, we will provide information about what needs to be revised ("komplettering") -- and how the revision should happen (verbal presentation, re-submit Lab Assignment document, etc.).

Obs! It is important to understand that although there is a clearly defined specification for a Lab Assignment, there is also a "spirit of intent." For example, in many cases, there already exist Scheme libraries (or primitives) that will greatly reduce (or eliminate) the coding requirements of the Lab Assignment; using these would violate the spirit of the assignment. Therefore, our evaluations are just like the evaluations that occur in real life: they include elements that are subjective and personal. The evaluations are subjective in the sense that the evaluators have to make their own judgments about how well the result follows the "spirit of the assignment." The evaluations are personal because the evaluators are also trying to adapt the feedback and suggestions to the specific needs of different students.


Page responsible: Anders Haraldsson
Last updated: 2013-01-15