Hasso-Plattner-Institut20 Jahre HPI
Hasso-Plattner-Institut20 Jahre HPI
  
Login
 

Polyglot Programming (Sommersemester 2019)

Lecturer: Prof. Dr. Robert Hirschfeld (Software-Architekturen) , Fabio Niephaus (Software-Architekturen)

General Information

  • Weekly Hours: 4
  • Credits: 6
  • Graded: yes
  • Enrolment Deadline: 26.04.2019
  • Teaching Form: Project / Seminar
  • Enrolment Type: Compulsory Elective Module
  • Course Language: English

Programs & Modules

IT-Systems Engineering MA
Data Engineering MA
  • SCAL-Konzepte und Methode
  • SCAL-Techniken und Werkzeuge
  • SCAL-Spezialisierung

Description

Polyglot programming is the practice of writing code in multiple programming languages, which gives software engineers a much broader choice in terms of software libraries and frameworks they can use for building applications.

In this seminar, students will explore the domain of polyglot programming with focus on the programming experience. For this, they will build novel polyglot applications for different use cases using GraalVM, a high-performance polyglot virtual machine. There will be weekly individual student project meetings (held in German or English) as well as occasional meetings with all groups during the seminar slots (held in German or English) to exchange ideas and present results.

Requirements

Students should be relatively familiar with at least two of the following programming languages:

  • C, C++, Java, JavaScript, Python, R, Ruby, Smalltalk (in alphabetical order)

Literature

Examination

The grading will be based on:

  • Participation in discussions (20%)
  • Mid-term presentation (20%)
  • Final presentation (20%)
  • Project work and implementation (40%)

Dates

The preliminary schedule is as follows:

9. April 2019 Introduction and project proposal presentations
11. April 2019 Project proposal discussions
16. April 2019 Introduction to GraalVM
18. April 2019 Polyglot API
  ...
21. May 2019 Mid-term presentations
23. May 2019 Mid-term presentations
  ...
9. July 2019 Final presentations
11. July 2019 Final presentations
   

Zurück