File Download
Supplementary
-
Citations:
- Appears in Collections:
postgraduate thesis: Higher-rank polymorphism : type inference and extensions
Title | Higher-rank polymorphism : type inference and extensions |
---|---|
Authors | |
Advisors | Advisor(s):Dos Santos Oliveira, BC |
Issue Date | 2021 |
Publisher | The University of Hong Kong (Pokfulam, Hong Kong) |
Citation | Xie, N. [謝宁宁]. (2021). Higher-rank polymorphism : type inference and extensions. (Thesis). University of Hong Kong, Pokfulam, Hong Kong SAR. |
Abstract | Type inference, as implemented in various modern programming languages,
reconstructs missing types in expressions and increases programmers'
productivity. Modern functional languages such as Haskell come with powerful
forms of type inference. The global type-inference algorithms employed in those
languages are derived from the Hindley-Milner type system, with multiple
extensions. As the languages evolve, researchers also formalize the key aspects
of type inference for the new extensions.
This dissertation studies predicative implicit higher-rank
polymorphism, where polymorphic types can be arbitrarily nested, and
monomorphic types can be inferred automatically. Predicative implicit
higher-rank polymorphism is a common extension that has been studied extensively
in the literature, and has been used pervasively in modern statically typed
programming languages.
The goal of this dissertation is to explore the design space of type inference
for implicit predicative higher-rank polymorphism, as well as to study its
integration with other advanced type system features. The first contribution of
this dissertation is a new type inference algorithm for implicit higher-rank
polymorphism which can accepts programs that many existing type inference
algorithms cannot. The proposed application mode provides new insights for
bidirectional type checking. The second contribution is the first
combination of predicative implicit higher-rank polymorphism with
gradual typing, which provides a step forward in gradualizing modern
functional programming languages. The third contribution is an arguably simpler
algorithmic implementation of subtyping for higher-rank polymorphism.
The technique developed is then further applied to the kind inference
problem for datatypes, which provides a first known formal model of
datatype declarations in modern functional programming languages. |
Degree | Doctor of Philosophy |
Subject | Programming languages (Electronic computers) |
Dept/Program | Computer Science |
Persistent Identifier | http://hdl.handle.net/10722/307011 |
DC Field | Value | Language |
---|---|---|
dc.contributor.advisor | Dos Santos Oliveira, BC | - |
dc.contributor.author | Xie, Ningning | - |
dc.contributor.author | 謝宁宁 | - |
dc.date.accessioned | 2021-11-03T04:36:42Z | - |
dc.date.available | 2021-11-03T04:36:42Z | - |
dc.date.issued | 2021 | - |
dc.identifier.citation | Xie, N. [謝宁宁]. (2021). Higher-rank polymorphism : type inference and extensions. (Thesis). University of Hong Kong, Pokfulam, Hong Kong SAR. | - |
dc.identifier.uri | http://hdl.handle.net/10722/307011 | - |
dc.description.abstract | Type inference, as implemented in various modern programming languages, reconstructs missing types in expressions and increases programmers' productivity. Modern functional languages such as Haskell come with powerful forms of type inference. The global type-inference algorithms employed in those languages are derived from the Hindley-Milner type system, with multiple extensions. As the languages evolve, researchers also formalize the key aspects of type inference for the new extensions. This dissertation studies predicative implicit higher-rank polymorphism, where polymorphic types can be arbitrarily nested, and monomorphic types can be inferred automatically. Predicative implicit higher-rank polymorphism is a common extension that has been studied extensively in the literature, and has been used pervasively in modern statically typed programming languages. The goal of this dissertation is to explore the design space of type inference for implicit predicative higher-rank polymorphism, as well as to study its integration with other advanced type system features. The first contribution of this dissertation is a new type inference algorithm for implicit higher-rank polymorphism which can accepts programs that many existing type inference algorithms cannot. The proposed application mode provides new insights for bidirectional type checking. The second contribution is the first combination of predicative implicit higher-rank polymorphism with gradual typing, which provides a step forward in gradualizing modern functional programming languages. The third contribution is an arguably simpler algorithmic implementation of subtyping for higher-rank polymorphism. The technique developed is then further applied to the kind inference problem for datatypes, which provides a first known formal model of datatype declarations in modern functional programming languages. | - |
dc.language | eng | - |
dc.publisher | The University of Hong Kong (Pokfulam, Hong Kong) | - |
dc.relation.ispartof | HKU Theses Online (HKUTO) | - |
dc.rights | The author retains all proprietary rights, (such as patent rights) and the right to use in future works. | - |
dc.rights | This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. | - |
dc.subject.lcsh | Programming languages (Electronic computers) | - |
dc.title | Higher-rank polymorphism : type inference and extensions | - |
dc.type | PG_Thesis | - |
dc.description.thesisname | Doctor of Philosophy | - |
dc.description.thesislevel | Doctoral | - |
dc.description.thesisdiscipline | Computer Science | - |
dc.description.nature | published_or_final_version | - |
dc.date.hkucongregation | 2021 | - |
dc.identifier.mmsid | 991044437612203414 | - |