• Home
  • Search
  • Teaching Type Systems Implementation with Stella, an Extensible Statically Typed Programming Language
  • Open Access IconOpen Access
  • https://doi.org/10.4204/eptcs.405.1Copy DOI Icon

Teaching Type Systems Implementation with Stella, an Extensible Statically Typed Programming Language

Show More
  • Abstract
  • Literature Map
  • References
  • Similar Papers
Abstract

We report on a half-semester course focused around implementation of type systems in programming languages. The course assumes basics of classical compiler construction, in particular, the abstract syntax representation, the Visitor pattern, and parsing. The course is built around a language Stella with a minimalistic core and a set of small extensions, covering algebraic data types, references, exceptions, exhaustive pattern matching, subtyping, recursive types, universal polymorphism, and type reconstruction. Optionally, an implementation of an interpreter and a compiler is offered to the students. To facilitate fast development and variety of implementation languages we rely on the BNF Converter tool and provide templates for the students in multiple languages. Finally, we report some results of teaching based on students' achievements.

Similar Papers
  • PDF
  • Research Article
  • Citations2

Predicting Fork Visibility Performance on Programming Language Interoperability in Open Source Projects

  • Jan 01, 2018
  • International Journal of Advanced Computer Science and Applications
  • Bee Bee +1
  • Research Article
  • Citations2

Machine Tongues X: Prolog

  • Jan 01, 1985
  • Computer Music Journal
  • Mira Balaban +1
  • Research Article
  • Citations6

Effective strategic programming for Java developers

  • Oct 04, 2012
  • Software: Practice and Experience
  • Emilie Balland +2
  • Book Chapter
  • Citations5

Extensions to type systems can preserve operational equivalences

  • Jan 01, 1994
  • Jon G Riecke +1
  • Research Article

Представлення монадичних ефектів у немонадичній формі

  • Sep 01, 2024
  • PROBLEMS IN PROGRAMMING
  • R.S Shevchenko
  • Research Article
  • Citations5

Visitor-based Attribute Grammars with Side Effect

  • Jul 01, 2011
  • Electronic Notes in Theoretical Computer Science
  • Arie Middelkoop +2
  • Supplementary Content

Co-Contextual Type Systems: Contextless Deductive Reasoning for Correct Incremental Type Checking

  • Mar 02, 2020
  • TUbilio (Technical University of Darmstadt)
  • Edlira Kuci
  • Research Article
  • Citations24

Featherweight generic confinement

  • Sep 14, 2006
  • Journal of Functional Programming
  • Alex Potanin +3
  • Research Article
  • Citations25

Knowledge-based computer vision-integrated programming language and data management system design

  • Dec 01, 1989
  • Computer
  • A.M Goodman +2
  • Conference Article
  • Citations19

A DSL for writing type systems for Xtext languages

  • Aug 24, 2011
  • Lorenzo Bettini
  • Single Book
  • Citations132

Encyclopedia of Language Development

  • Jan 01, 2014
  • Patricia Brooks +1
  • Research Article
  • Citations3

Case study of multiple trace transform implementations

  • May 08, 2015
  • The International Journal of High Performance Computing Applications
  • Tim Besard +3
  • Book Chapter
  • Citations7

Diglossia

  • Feb 15, 1996
  • Charles A Ferguson
  • Research Article
  • Citations5

Dynamic optimization for functional reactive programming using generalized algebraic data types

  • Sep 12, 2005
  • ACM SIGPLAN Notices
  • Henrik Nilsson
  • Book Chapter
  • Citations3

Towards a Language for Defining Reusable Programming Language Components

  • Jan 01, 2022
  • Cas Van Der Rest +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.