Emergent Mind

A Type Checking Algorithm for Higher-rank, Impredicative and Second-order Types

(1711.04718)
Published Nov 13, 2017 in cs.LO and cs.PL

Abstract

We study a type checking algorithm that is able to type check a nontrivial subclass of functional programs that use features such as higher-rank, impredicative and second-order types. The only place the algorithm requires type annotation is before each function declaration. We prove the soundness of the type checking algorithm with respect to System $\mathbf{F}{\omega}$, i.e. if the program is type checked, then the type checker will produce a well-typed annotated System $\mathbf{F}{\omega}$ term. We extend the basic algorithm to handle pattern matching and let-bindings. We implement a prototype type checker and test it on a variety of functional programs.

We're not able to analyze this paper right now due to high demand.

Please check back later (sorry!).

Generate a summary of this paper on our Pro plan:

We ran into a problem analyzing this paper.

Newsletter

Get summaries of trending comp sci papers delivered straight to your inbox:

Unsubscribe anytime.