Skip to Content

Type checking by domain analysis in Ampersand

Posted on

Authors:

  • Joosten, Stef M. M.
  • Joosten, Sebastiaan J. C.

Get source code that accompanies the paper

Published in: International Conference on Relational and Algebraic Methods in Computer Science pp 225–240

DOI: 10.1007/978-3-319-24704-5_14

Paper

Slides

Abstract:

In the process of incorporating subtyping in relation algebra, an algorithm was found to derive the subtyping relation from the program to be checked. By using domain analysis rather than type inference, this algorithm offers an attractive visualization of the type derivation process. This visualization can be used as a graphical proof that the type system has assigned types correctly. An implementation is linked to in this paper, written in Haskell. The algorithm has been tried and tested in Ampersand, a language that uses relation algebra for the purpose of designing information systems.

BibTeX entry:

@inproceedings{Joosten15a,
 abstract = {In the process of incorporating subtyping in relation algebra, an algorithm was found to derive the subtyping relation from the program to be checked. By using domain analysis rather than type inference, this algorithm offers an attractive visualization of the type derivation process. This visualization can be used as a graphical proof that the type system has assigned types correctly. An implementation is linked to in this paper, written in Haskell. The algorithm has been tried and tested in Ampersand, a language that uses relation algebra for the purpose of designing information systems.},
 author = {Joosten, Stef M M and Joosten, Sebastiaan Jozef Christiaan},
 bdsk-url-1 = {https://doi.org/10.1007/978-3-319-24704-5_14},
 booktitle = {International Conference on Relational and Algebraic Methods in Computer Science},
 doi = {10.1007/978-3-319-24704-5_14},
 month = {Sep},
 organization = {Springer, Cham},
 pages = {225--240},
 title = {Type checking by domain analysis in {Ampersand}},
 year = {2015}
}