Dates
The seminar takes place during the semester on every Monday at 14:00 c.t. in the room R4 Institute for Mathematics, Building 64, OG3
- Meta programming by Alexander Schramm
Monday, 2015-11-02 at 14:00 c.t. – Room: R4 Inst. für Mathematik - Garbage collection by Merlin Laue
Monday, 2015-11-09 at 14:00 c.t. – Room: R4 Inst. für Mathematik - Intermediate represantations by Malte Skambath
Monday, 2015-11-16 at 16:00 s.t. – Room: R4 Inst. für Mathematik - Type inference by Moritz Welberg
Monday, 2015-11-23 at 14:00 c.t. – Room: R4 Inst. für Mathematik
Static vs. dynamic typing by Toni Schumacher
Monday, 2015-11-23 at 15:00 s.t. – Room: R4 Inst. für Mathematik - Memory models by Gunnar Bergmann
Monday, 2015-11-30 at 14:00 c.t. – Room: R4 Inst. für Mathematik
Stack based programming by Timo Luerweg
Monday, 2015-11-30 at 15:00 s.t. – Room: R4 Inst. für Mathematik - Evaluation strategies by Moritz Flucht
Monday, 2015-12-07 at 14:00 c.t. – Room: R4 Inst. für Mathematik - Logic programming by Gilian Henke
Monday, 2015-12-14 at 14:00 c.t. – Room: R4 Inst. für Mathematik - Parser by Larissa von Witte
Monday, 2016-01-11 at 14:00 c.t. – Room: R4 Inst. für Mathematik
Beispiele zur Typinferenz von Moritz Welberg
Montag, 2016-01-11 um 15:00 s.t. – Raum: R4 Inst. für Mathematik - Just in time compilation by Thiemo Bucciarelli
Monday, 2016-01-18 at 15:00 c.t. – Room: R4 Inst. für Mathematik
Array programming by Alexander Harms
Monday, 2016-01-18 at 16:00 s.t. – Room: R4 Inst. für Mathematik - Synchronous vs. asynchronous programming by Jan Pascal Maas
Monday, 2016-01-25 at 14:00 c.t. – Room: R4 Inst. für Mathematik
life←{⊃1 ⍵ ∨.∧ 3 4 = +/ +/ 1 0 ¯1 ∘.⊖ 1 0 ¯1 ⌽¨ ⊂⍵}
Montag, 2016-01-25 um 15:00 s.t. – Raum: R4 Inst. für Mathematik - Aspects of object orientation by Jan Niklas Rösch
Monday, 2016-02-01 at 14:00 c.t. – Room: R4 Inst. für Mathematik - Advanced Features of Type Systems by Sebastian Hungerecker
Monday, 2016-02-08 at 14:00 c.t. – Room: R4 Inst. für Mathematik
Modules
- CS3702, Bachelor-Seminar Informatik (BachSemInf)
- CS3703, Bachelor-Seminar Medizinische Informatik (BachSemMI)
- CS5480, Seminar Software Systems Engineering (SemSSE)
- CS5840, Englischsprachiges Seminar (SemiEngl)
Subjects
The aim of this seminar is to give an overview on a selection of topics within the field of programming languages. Available topics include but are not limited to
- Programming paradigms
- Functional
- Logical
- Stack based
- Aspect oriented
- Type systems
- Static vs. dynamic typing
- Type inference
- Object oriented (prototypical vs. class based, co- and contra variance, ...)
- Algebraic data types (Hindley-Milner)
- Advanced features (linear/uniqueness types, dependent types, refinement types, ...)
- Implementation concepts
- Parsers
- Intermediate representations (e.g. byte code)
- Optimization phases
- Just in time compilation
- Evaluation strategies (lazy, strict, ...)
- Memory management
- Garbage collection
- Reference semantics
- Memory models (e.g. C++'s RAII, Rust's ownership semantics, ObjectiveC's automatic reference counting)
Please, feel free to propose specific topics that fit the scope of the semniar.
Organization
Participants obtain a dedicated topic from their supervisor and are expected to
- Get acquainted with the individual topic on their own
- Write a technical report: 5 to 6 pages IEEE (two-column) format
- Hand in the report (in PDF) 2 weeks before the talk
- Give a presentation: 30-45 min, additional 15 min are reserved for discussion
- Hand in complete presentation material (slides as PDF) 1 week before the talk
- Attend all of the presentations
Templates
- The IEEE template for conferences (two-column) must be used for the article.
- If you use LaTeX you should use the document class
IEEEtran
with the optionconference
as shown in the examplebare_conf.tex
provided in the IEEE template. - You could add the document option
a4paper
to switch from the US paper size letter to european DIN A4. As this only affects the paper size and not the type area (which is the width and height of the columns) this doesn't matter much. - The title of your article should neither contain Concepts of Programming Languages nor CoPL or anything else which is not the title of your article. The current year or term should be omitted as well in the title area.
- Add your name as author of the article. You may add your email address. Omit any other information in the title area, such as addresses, institution or university names.
- Start your article with an abstract. Do not give index terms.
- Avoid page numbers and any other headers or footers.
- If you use LaTeX you should use the document class
- For the presentation the ISP LaTeX Beamer template or the universities corporate design can be used.