"Type Qualifiers as Catalysts for Language Evolution" by Jasper Kahn

Date of Award

3-2025

Degree Name

MS in Computer Science

Department/Program

Computer Science

College

College of Engineering

Advisor

Aaron Keen

Advisor Department

Computer Science

Advisor College

College of Engineering

Abstract

Mainstream programming languages continually evolve to make correct and perfor- mant programs authored in the language easier to write. Successful new languages often succeed by improving on these qualities over existing languages that have not evolved fast enough. Many improvements derive from research in Static Analysis, but there is often a significant lag between the research and features becoming available in mainstream languages. This thesis focuses on the theory of type qualifiers as a possible means of accelerating the adoption of research results into common usage. Type Qualifiers have a two-decade lineage of static analysis tools, with active research today, but are not yet available in a major programming language.

This thesis discusses some of the adoption barriers novel language features face, with a particular focus on barriers stemming from how these tools integrate into a host language. We then explore type qualifiers, the tools built on top of them, and why they may not have seen greater adoption. Finally, we examine some modern attempts to transfer features from one language to another, and how these attempts could be facilitated by type qualifiers. We posit that this form of transference is a valuable pathway for feature adoption, and that type qualifiers could, paired with a set of other language features, unlock this potential. We hope this discussion might inspire work to finally make Type Qualifiers available to the masses as a high-value mechanism for language evolution.

Share

COinS