Show simple item record

dc.contributor.authorDomurad, Adam
dc.date.accessioned2017-05-01 19:51:15 (GMT)
dc.date.available2017-05-01 19:51:15 (GMT)
dc.date.issued2017-05-01
dc.date.submitted2017-04-28
dc.identifier.urihttp://hdl.handle.net/10012/11839
dc.description.abstractOptionally and gradually-typed languages allow types to be introduced to dynamic code as needed. While this approach allows some gradual movement from dynamically to statically-typed code, it requires rewriting object-constructing code to use conventional static types. We introduce a flexible notion of type, deemed "locus types", that aims to minimize syntactic burden and the need for refactoring when introducing types to dynamic code. Locus types are gained by objects that pass through an annotated code site, following the creed of "code is types". Their structure is inferred from local type information computed through flow-based type refinement. The design of LocusTypeScript, a language extending TypeScript with locus types, is detailed. Tooling support, building on that of TypeScript, for programming with locus types is described. As well, the general properties and applicability of locus types are explored. LocusTypeScript's simple algorithm for computing stable flow-based refinement types is presented. The implications and performance impact of making locus types sound are discussed.en
dc.language.isoenen
dc.publisherUniversity of Waterlooen
dc.subjectGradual typingen
dc.subjectprogramming languagesen
dc.subjecttype inferenceen
dc.subjectJavaScripten
dc.subjectoptional typingen
dc.subjectTypeScripten
dc.subjecttype systemsen
dc.titleStatic Types with Less Syntax: Locus Typesen
dc.typeMaster Thesisen
dc.pendingfalse
uws-etd.degree.departmentDavid R. Cheriton School of Computer Scienceen
uws-etd.degree.disciplineComputer Scienceen
uws-etd.degree.grantorUniversity of Waterlooen
uws-etd.degreeMaster of Mathematicsen
uws.comment.hiddenI have submitted past the usual cusp of acceptance for Spring convocation but was told that it could possibly still be considered. :)en
uws.contributor.advisorRichards, Gregor
uws.contributor.affiliation1Faculty of Mathematicsen
uws.published.cityWaterlooen
uws.published.countryCanadaen
uws.published.provinceOntarioen
uws.typeOfResourceTexten
uws.peerReviewStatusUnrevieweden
uws.scholarLevelGraduateen


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record


UWSpace

University of Waterloo Library
200 University Avenue West
Waterloo, Ontario, Canada N2L 3G1
519 888 4883

All items in UWSpace are protected by copyright, with all rights reserved.

DSpace software

Service outages