κDOT: A DOT Calculus with Mutation and Constructors

dc.contributor.authorKabir, Ifaz
dc.date.accessioned2018-09-26T16:23:58Z
dc.date.available2018-09-26T16:23:58Z
dc.date.issued2018-09-26
dc.date.submitted2018-09-19
dc.description.abstractScala is a functional and object-oriented programming language which unifies concepts from object and module systems by allowing for objects with type members which are referenced via path-dependent types. The Dependent Object Types (DOT) calculus of Amin et al. [2016] models only this core part of Scala, but does not have many fundamental features of Scala such as strict and mutable fields. Since the most commonly used field types in Scala are strict, the correspondence between DOT and Scala is too weak for us to meaningfully prove static analyses safe for Scala by proving them safe for DOT. This thesis presents the κDOT calculus, a calculus in the DOT family which supports mutable fields and constructors. κDOT can emulate both lazy and strict fields, and the constructor calls in κDOT emulate how objects are created in Scala. We present the key features of κDOT, the key ideas required for type safety, and discuss how the operational semantics of κDOT relates to that of Scala. κDOT is proven type safe via a mechanized proof in Coq.en
dc.identifier.urihttp://hdl.handle.net/10012/13953
dc.language.isoenen
dc.pendingfalse
dc.publisherUniversity of Waterlooen
dc.subjecttype safety, dependent object types, mutationen
dc.titleκDOT: A DOT Calculus with Mutation and Constructorsen
dc.typeMaster Thesisen
uws-etd.degreeMaster of Mathematicsen
uws-etd.degree.departmentDavid R. Cheriton School of Computer Scienceen
uws-etd.degree.disciplineComputer Scienceen
uws-etd.degree.grantorUniversity of Waterlooen
uws.contributor.advisorLhoták, Ondřej
uws.contributor.affiliation1Faculty of Mathematicsen
uws.peerReviewStatusUnrevieweden
uws.published.cityWaterlooen
uws.published.countryCanadaen
uws.published.provinceOntarioen
uws.scholarLevelGraduateen
uws.typeOfResourceTexten

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Kabir_Ifaz.pdf
Size:
490.21 KB
Format:
Adobe Portable Document Format
Description:
Thesis

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
6.08 KB
Format:
Item-specific license agreed upon to submission
Description: