185.208 Programming Languages
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2020S, VU, 2.0h, 3.0EC, to be held in blocked form


  • Semester hours: 2.0
  • Credits: 3.0
  • Type: VU Lecture and Exercise

Learning outcomes

After successful completion of the course, students are able to

  • describe programming language concepts of current and some historic programming languages,
  • give reasons for some design decisions in programming languages,
  • write simple programs also in unusual programming languages,
  • develop simple interpreters for small programming languages.

Subject of course

  • concepts and paradigms of programming languages
  • calling conventions
  • abstractions
  • genericity
  • programming in the large
  • links between several paradigms / languages


Teaching methods

  • In lectures we discuss the contents.
  • In exercise groups (two to four persons) students write three programs in order to internalize and practically apply the learning matter.

Teaching methods changed because of Corona restrictions

  • Since mid March there are no lectures because of legal restrictions. Alternatively you will be able to find slides and additional resources suitable for private study (in addition to the book we use) in TUWEL.

Mode of examination


Additional information

ECTS-Breakdown: 3 ECTS = 75 hours

  • 15h: Lecture and aquiring the covered topics
  • 10h: Exam and preparation for exam
  • 48h: Programming assignments
  • 02h: Interview meeting and preparation therefore



Examination modalities

  • In an interview meeting for each exercise group (that has to take place until end of September 2020) programs to be written by the exercise group will be discussed and rated. In the meeting the development of the programs, the source code and program executions are presented.
  • Additionally, each student takes an oral exam (until January 2021).
  • For a positive overall rating there must be positive ratings for both, the interview meeting and the oral exam. If the overall rating is positiv, it is computed as the average of the ratings for the interview meeting and the oral exam.
  • The interview meeting and the oral exam can each be retried once if negative within the scope of the lecture (and within the given time period).

Examination modalities changed because of Corona restrictions

  • Interview meetings have to be prevented in this semester. Instead, each exercise group submits documents and files with the following contents to the lecturer:
    • source code of the programs written by the exercise group,
    • these programs executable on Windows or Linux,
    • a short description of how to execute the programs,
    • a short description of the most important design decisions behind these programs,
    • a short description of who in the exercise group was responsible for which parts of the work and saying that the documents and programs have been created by members of the exercise group personally,
    • and a testing protocol describing briefly how the programs were tested and summarizing the results (including concrete data like, e.g., run times).
    Please let the lecturer know if you cannot provide some of this information; maybe alternative ways can be found in special situations. In any case, the lecturer will ask for additional information if the submitted documents  are insufficient.
  • The deadline for submitting these documents is September 30, 2020.
  • Oral exams will preferably be done online using GoToMeeting as long as Corona restrictions indicate us to do so, under the following conditions:
    • Appointment and registration are arranged by mail. In general, there will be exams each Monday and Wednesday (except during holidays) from 10 a.m. to 11 a.m., but can also be arranged at other times. Registrations must be made at least 14 days before the exams. It is possible to unregister until the exam starts.
    • Few days before the exam you will get access data to GoToMeeting (essentially a link) by mail. You need a computer (e.g., laptop) with microphone and video cam. Please take care that your browser (or the GoToMeeting App if you use it) have the right to access microphone and cam. Enter the GoToMeeting session at the time the exam is scheduled for (see https://colab.tuwien.ac.at/pages/viewpage.action?pageId=11634937#Schritt-für-Schritt-AnleitungenfürOnline-Prüfungen-TeilnahmeaneinemGoToMeeting-WebmeetingimKontextvonOnline-Prüfungen).
    • Use a room for the exam where you are undisturbed. Close to your working place there can only be objects that are allowed to be in front of you also in usual oral exams (e.g., ID card, white paper, pen, water glas) as well as technical equipment used for the exam, but nothing else (especially no cell phone or text book). Further away from you there can be anything. However, there must not be other persons in the room.
    • If you want to invite another person as a witness to the exam, you can give your access data for the GoToMeeting session to them. This person shall enter the session at about the same time as you. Please inform the lecturer at the begin of the exam about the invitation of a witness in order to ensure that nobody enters the session during the exam. Examinee and lecturer can each invite at most one witness to avoid unnecessary complexity. Microphones and cams of witnesses shall be switched off.
    • At the begin of the exam you are asked to show your ID card (preferably Studierendenausweis) and your room (by moving around your cam or laptop).
    • You have to answer questions. However, we have to expect that the audio and video quality is far away from being perfect. The gesture may not be identifiable. Therefore, it may be necessary to repeat questions and answers as well as to ask additional questions. Please be prepared that the exam may last longer than expected for such reasons.
    • If a question was not understandable because of bad audio or video quality, please ask to repeat it. If the connection is lost, please enter the GoToMeeting session again using the same access data as before. If that does not work, please contact the lecturer by mail. In that case the exam will be continued at a later time according to new arrangements.
    • There are no recordings of video or audio. If you want to record the exam, it is necessary to have a written bilateral commitment about that in advance (by mail). Otherwise recordings are prohibited.
    • If you are not able or do not want to take an online exam, you can also take a usual oral exam instead, as soon this is possible under Corona constraints. In the same way it is possible to continue an interrupted online exam as a usual oral exam.
    • As soon als oral exams are allowed to take place without special means to protect against Corona infections, online exams will in general be replaced by usual oral exams. In that case, online exams can take place only in special situations where exams at the university are not feasible or would require large extra effort.

Course registration

Begin End Deregistration end
02.03.2020 00:00 14.05.2020 23:59

Registration modalities:

Because of Corona regulations it is not possible to bild exercise groups during lectures. Instead, please register for an exercise group in TISS until Mai 15. Your participation in the course can be confirmed only if you are a member of an exercise group.

Group Registration

GroupRegistration FromTo
PS 121.04.2020 00:0015.05.2020 23:59
PS 221.04.2020 00:0015.05.2020 23:59
PS 321.04.2020 00:0015.05.2020 23:59
PS 421.04.2020 00:0015.05.2020 23:59
PS 521.04.2020 00:0015.05.2020 23:59
PS 621.04.2020 00:0015.05.2020 23:59
PS 721.04.2020 00:0015.05.2020 23:59
PS 821.04.2020 00:0015.05.2020 23:59
PS 921.04.2020 00:0015.05.2020 23:59
PS 1021.04.2020 00:0015.05.2020 23:59
PS 1121.04.2020 00:0015.05.2020 23:59
PS 1221.04.2020 00:0015.05.2020 23:59
PS 1321.04.2020 00:0015.05.2020 23:59
PS 1421.04.2020 00:0015.05.2020 23:59
PS 1521.04.2020 00:0015.05.2020 23:59
PS 1621.04.2020 00:0015.05.2020 23:59
PS 1721.04.2020 00:0015.05.2020 23:59
PS 1821.04.2020 00:0015.05.2020 23:59
PS 1921.04.2020 00:0015.05.2020 23:59
PS 2021.04.2020 00:0015.05.2020 23:59
PS 2121.04.2020 00:0015.05.2020 23:59
PS 2221.04.2020 00:0015.05.2020 23:59
PS 2321.04.2020 00:0015.05.2020 23:59
PS 2421.04.2020 00:0015.05.2020 23:59
PS 2521.04.2020 00:0015.05.2020 23:59



Book: Carlo Ghezzi, Mehdi Jazayeri: Programming Language Concepts. John Wiley & Sons, 1998, 3. edition, ISBN 0-471-10426-4.

Previous knowledge

Programming skills are required.