The project topics are assigned individually and in a dialogue between student and teacher. Each project will have different requirements as to what should be included in the report. Here are some general guidelines, though:
- discuss the programming concepts you will apply in sufficient details for the other students of the course to be able to follow the rest of your report
- focus on the interesting aspects (e.g. how to employ a language feature or a programming framework for a specific task)
- provide the reader with an idea of what you wanted to achieve in your project and where the journey actually led you
- you should end up with approx. 10-15 pages (not including references and appendices, but including figures, screenshots, important code snippets etc.)
- latest deadline for delivery is June 30 (but early delivery is appreciated)
|Mo 16-18 (U49B)||Lecture
|Wed 08-10 ||Exercise
|Thu 08-10 (IMADA Sem. Room)||Lecture
|Thu 12-14 (IMADA Sem. Room)||Presentations 7,8,9
Just come to my office. If you want to make sure I'm there, contact me before (by e-mail, jabber, phone).
|2||Jeppe Schmidt||The Google App Engine||presentation slides||project reports|
|3||Christian Funder Sommerlund||Creating Dynamic Web Pages using AJAX||presentation slides||project reports|
|4||Michael Franz||Platform-Independent USB Communication in Java||presentation slides||project reports|
|5||Philip Pontoppidan Thyssen||XML DOM Trees and SVG Generation from Point Data||presentation slides||project reports|
|6||Martin Dissing-Hansen||Graphical User Interface for SVG Manipulation||presentation slides||project reports|
|7||Bjarke Niemann Hansen||Objective-C and the iOS Csound Library||presentation slides||project reports|
|8||Fredrik Alkærsig||Audio Hashing using Low-level Interfaces in Python||presentation slides||project reports|
|9||Christian Damsgaard Jörgensen||Semantic Web Query Interface using SPARQL||presentation slides||project reports|
|10||Mikkel Secher||Android App Programming for a Wet Business Environment||presentation slides||project reports|
|11||Christian Kudahl||Winning Strategies and Theorem Proving using TOY||presentation slides||project reports|
|12||Anders Knudsen||Graphical Presentation in Android Apps||presentation slides||project reports|
Course Material: Handed out during the course and individually.
You can download the introductory slides from the pizza meeting.
The contents of DM509 Programming Languages should be known.
a) Oral presentation of an assigned topic. Pass/fail, internal evaluation by the teacher.
b) Project based on individually assigned tasks, that have to be solved by using at least one of the advanced topics. The tasks consist of an implementation and a written report. Grades according to the 7-point marking scale. External examiner.
Reexam after the 4th quarter.
Withdrawal from the exam must be 7 days before the first exam date.
Lectures: 20 hours. Discussion and presentations: 22 hours.
4th quarter, spring 2012
The goal of this course is to give the participants an understanding of advanced concepts in imperative, object-oriented, logic-based, and functional programming languages. The participants should also gain further programming experience by applying these advanced concepts to small practical problems.
Scripting languages, multi-paradigm languages, advanced type systems, reflection and meta programming, extensible programming, program verification, domain specific languages, aspect-oriented programming, distributed programming, foreign language interfaces, parser generation, graphical user interfaces.
After the course, the student is expected to be able to:
- use advanced features in standard programming languages.
- write programs in a modern scripting language.
- write programs that cooperate beyond language and system barriers.
- classify unknown programming languages.