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.

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

Properties

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

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.

Mode of examination

Immanent

Additional information

ECTS breakdown: 3 ECTS = 75 hours

  • 15h: Lectures and aquiring the covered topics
  • 50h: Programming tasks
  • 10h: Exam and preparation for exam

Registration

A registration for an exercise group in TISS (from March 1 to March 11) is regarded as registration for the course. Exercise groups consist of at least two students, groups of three or four students are preferable. Groups consisting of only a single student will be combined to larger groups after the registration deadline, groups with only two members will be enlarged if possible. To arrage groups, please use the discussion forum in TUWEL; please keep in mind that you get access to TUWEL only after registration for an arbitrary group. You can change group membership at any time until the registration deadline.

Lectures

12 lectures are on Fridays from 11 to 12 a.m. (c.t.) online over Zoom meetings accessible through TUWEL. Recordings of the lectures will be provided through TUWEL.

Exercise tasks

Three programming tasks will be provided in TUWEL after registration has ended and groups are determined. These tasks have to be performed until the end of June 2021. To demonstrate that you did the work, please upload the following files and documents (which build the basis for rating the exercise part of the course) in TUWEL before this deadline:

  • source code (including comments) of the programs written by the exercise group,
  • these programs in a variant directly executable on Windows or Linux together with a brief description of how to start and use these programs,
  • a testing protocol describing briefly how the programs were tested and summarizing the results (including concrete data like, e.g., run times).
  • a short description of the most important design decisions behind these programs,
  • a short text giving answers to the questions in exercises 2 and 3,
  • 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.

Details on online exams

Oral exams shall be taken online under the following conditions:

  • Appointment and registration are arranged by mail. In general, there will be exams each Wednesday (except during holidays) from 11 a.m. to 12 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. Exams on Wednesdays from 11 a.m. to 12 a.m. will be done in a Zoom meeting accessible through TUWEL. Exams arranged at other times use Zoom or GoToMeeting, and access data will be provided by mail.
  • You need a computer (e.g., laptop) with microphone and video cam. Zoom as well as GoToMeeting need a specific app (will be installed automatically at the first time, for GoToMeeting not available under Linux) or the Chrome browser (available on all major operating systems). Please take care that your browser or app gets the right to access microphone and cam. Enter the meeting at the time the exam is scheduled for (see https://colab.tuwien.ac.at/pages/viewpage.action?pageId=11634937).
  • 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 access data for the meeting session to them. This person shall enter the meeting at about the same time being in another room as you. Please inform the lecturer at the begin of the exam about the witness. 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 as requested).
  • 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 meeting 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, provided this is possible under Corona restrictions. 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.

Lecturers

Institute

Examination modalities

  • The exercise part of the course will be rated based on the files and documents uploaded by the end of June (see Additional information - Exercise tasks).
  • Missing or insufficient files and documents (up to about 1/4 of the total volume) of the exercise part can be handed in later until July 15, 2021.
  • Additionally, each student takes an oral online exam (until January 2022) using Zoom or GoToMeeting. See "Further information - Details on online exams" for details.
  • For a positive overall rating there must be positive ratings for both, the exercise part and the oral exam. If the overall rating is positiv, the mark is computed as the average of the ratings for the interview meeting and the oral exam.
  • The oral exam can be retried once if negative within the scope of the lecture (and within the given time period).
  • All parts of the course are configured for distance learning. If the Corona situation allows us to do so, an oral online exam can be replaced by an oral exam in presence.

Course registration

Begin End Deregistration end
01.03.2021 00:00 11.03.2021 23:59

Registration modalities

Please register for a group (TISS). A registration for a group in this course is regarded as registration for the course.

Group Registration

GroupRegistration FromTo
PS A01.03.2021 00:0011.03.2021 23:59
PS B01.03.2021 00:0011.03.2021 23:59
PS C01.03.2021 00:0011.03.2021 23:59
PS D01.03.2021 00:0011.03.2021 23:59
PS E01.03.2021 00:0011.03.2021 23:59
PS F01.03.2021 00:0011.03.2021 23:59
PS G01.03.2021 00:0011.03.2021 23:59
PS H01.03.2021 00:0011.03.2021 23:59
PS I01.03.2021 00:0011.03.2021 23:59
PS J01.03.2021 00:0011.03.2021 23:59
PS K01.03.2021 00:0011.03.2021 23:59
PS L01.03.2021 00:0011.03.2021 23:59
PS M01.03.2021 00:0011.03.2021 23:59
PS N01.03.2021 00:0011.03.2021 23:59
PS O01.03.2021 00:0011.03.2021 23:59
PS P01.03.2021 00:0011.03.2021 23:59
PS Q01.03.2021 00:0011.03.2021 23:59
PS R01.03.2021 00:0011.03.2021 23:59
PS S01.03.2021 00:0011.03.2021 23:59
PS T01.03.2021 00:0011.03.2021 23:59
PS U01.03.2021 00:0011.03.2021 23:59
PS V01.03.2021 00:0011.03.2021 23:59
PS W01.03.2021 00:0011.03.2021 23:59
PS X01.03.2021 00:0011.03.2021 23:59
PS Y01.03.2021 00:0011.03.2021 23:59
PS Z01.03.2021 00:0011.03.2021 23:59

Curricula

Study CodeObligationSemesterPrecon.Info
066 931 Logic and Computation Mandatory elective
066 937 Software Engineering & Internet Computing Mandatory elective

Literature

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.

Language

German