Dependent Types: Level Up Your Types

Syfrig, Marco (2017) Dependent Types: Level Up Your Types. Masters thesis, HSR Hochschule für Technik Rapperswil.

[thumbnail of MarcoSyfrigDependentTypes_eprints.pdf]
Preview
Text
MarcoSyfrigDependentTypes_eprints.pdf - Supplemental Material

Download (163kB) | Preview

Abstract

Dependent types make types into first-class language constructs and ensure type safety depending on values and not only types. They help to get rid of all unit tests because dependent types require a proof that a function behaves as expected. This proof needs to be written by the developer himself and verifies that the function works correctly for all possible inputs. So a type, in the end, is a proof for the compiler and no unit tests are needed. Type checking may become undecidable since these types can depend on any value or expression.
This paper gives an overview what problem dependent types solve, kinding, dependent type theory and then a fairly big part about the differences to other systems. It then shows some current ongoing research and finally explains why dependent types may play a bigger role in the far future.

Item Type: Thesis (Masters)
Subjects: Topics > Software > Performance
Topics > Software > Testing and Simulation > Unit-Testing
Technologies > Programming Languages
Divisions: Master of Science in Engineering (MRU Software and Systems)
Depositing User: Stud. I
Contributors:
Contribution
Name
Email
Thesis advisor
Mehta, Farhad D.
UNSPECIFIED
Date Deposited: 10 Apr 2017 11:05
Last Modified: 02 Nov 2017 08:58
URI: https://eprints.ost.ch/id/eprint/577

Actions (login required)

View Item
View Item