[Colloq] MS Thesis Defense: "Typed Contracts for Gradual Typing" | Speaker: Brian LaChance | Date: 6/29/16 Time: 12pm Location: 366 WVH

Walker, Lashauna la.walker at northeastern.edu
Tue Jun 28 15:01:33 EDT 2016


Title: Typed Contracts for Gradual Typing
Speaker: Brian LaChance
Date: 6/29/16    Time: 12pm   Location: 366 WVH

Title: Typed Contracts for Gradual Typing

Abstract:

Programmers use contracts to articulate a program's invariants in a familiar language. Usually boolean expressions in the same language as the program, contracts allow programmers to formulate readable and executable specifications. These invariants then become a runnable manifestation of the program's design.

When maintainers of scripts want static assurances about the code, they turn to a gradual type system. Such systems allow parts of a program to be migrated to a typed sister language one component at a time. To make migration practical, the type system must support the idioms of the untyped language.

Unfortunately, no work on gradual type systems has addressed how to support contracts in a gradually typed language. Even though contracts convey important design details, programmers cannot migrate these crucial parts of their system's specification. When faced with this disconnect, programmers have to change their program in an error-prone way by either removing the contracts entirely or inlining the underlying assertions.

Gradual typing can effectively and efficiently support contracts, which I validate in my MS dissertation in two parts. First, I design and implement an extension to Typed Racket. Typed Racket is the gradually typed sister-language of Racket, a programming language where contracts are frequently used. Second, I evaluate the effectiveness and efficiency of this design through four case studies in which I migrate modules with contracts from Racket to Typed Racket.

Committee:

Matthias Felleisen
Asumu Takikawa


Thank You.

LaShauna Walker
Events and Project Coordinator
College of Computer and Information Science
Northeastern University
617-373-2763
Facebook<https://www.facebook.com/ccisatnu?ref=hl> | Instagram<https://instagram.com/ccisatnu/> | LinkedIn<https://www.linkedin.com/groups/Northeastern-University-College-Computer-Information-1943637?gid=1943637&mostPopular=&trk=tyah&trkInfo=idx%3A1-1-1%2CtarId%3A1426606862845%2Ctas%3ANortheastern+University+College+of+Com> | Twitter<https://twitter.com/CCISatNU>



More information about the Colloq mailing list