Software Technology Group
We focus on code intelligence and programming models, applied in artificial intelligence and software engineering, and in programming language design and implementation. We develop models, tools, and platforms for more efficient, reliable, and secure software systems.
Research Topics

We explore how advances in AI and software engineering can mutually reinforce and enhance the software development process.
Projects: SSM Native • SecureCoder

We design novel methods, tools, and platforms for programming languages to improve ease of use, reliability, correctness, and efficiency.
Projects: REScala
Team
Head of Group
Administrative, Project and Technical Staff
Guest Researchers
Postdoctoral Researchers
Doctoral Researchers
Courses
Our courses put a strong emphasis on integrating with our research activities.
Tucan: 20-00-1117-iv
Concepts of Programming Languages (COPL)
Language concepts like functions, scopes, and heap storage, made concrete by implementing a family of increasingly advanced toy languages.
Tucan: 20-00-1246-iv
Type Systems (TYPES)
Type systems that statically rule out entire classes of errors: from the typed lambda calculus to polymorphism, type inference, and dependent types, mechanized in Lean4
Tucan: 20-00-0306-pr
Implementation of Programming Languages (IMPL)
Hands-on project implementing a program from current language research: e.g. DSLs, distributed abstractions, or dependent types.
Tucan: 20-00-0673-pr
Software Development Tools (SDT)
Small-group project implementing software development tools: including AI-based approaches: connected to our current research.
Tucan: 20-00-0182-se
Design and Implementation of Programming Languages (DAIMPL)
Try out novel programming languages, libraries, and abstractions from research; write a tutorial paper and present what you learned.
Tucan: 20-00-1139-se
Artificial Intelligence for Coding Assistance (AI4CA)
AI-powered coding assistance: code completion, bug detection, and the research behind tools like Copilot, explored in small groups.
Tucan: 20-00-1252-se & 20-00-1253-pr
Type Systems, Programming Language and Functional Programming Research
This course is meant for advanced students, after having done the TYPES lecture.
























