Defunctionalization with Dependent Types

04/10/2023
by   Yulong Huang, et al.
0

The defunctionalization translation that eliminates higher-order functions from programs forms a key part of many compilers. However, defunctionalization for dependently-typed languages has not been formally studied. We present the first formally-specified defunctionalization translation for a dependently-typed language and establish key metatheoretical properties such as soundness and type preservation. The translation is suitable for incorporation into type-preserving compilers for dependently-typed languages

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/09/2021

Native Type Theory

We present a method to construct "native" type systems for a broad class...
research
06/13/2018

Dependently Typed Folds for Nested Data Types

We present an approach to develop folds for nested data types using depe...
research
01/20/2023

System F^μ_ω with Context-free Session Types

We study increasingly expressive type systems, from F^μ – an extension o...
research
03/21/2023

A more general categorical framework for congruence of applicative bisimilarity

We prove a general congruence result for bisimilarity in higher-order la...
research
05/22/2021

Normalising Lustre Preserves Security

The synchronous reactive data flow language LUSTRE is an expressive lang...
research
12/10/2018

Relational Cost Analysis for Functional-Imperative Programs

Relational cost analysis aims at formally establishing bounds on the dif...
research
02/17/2020

Denotational semantics as a foundation for cost recurrence extraction for functional languages

A standard method for analyzing the asymptotic complexity of a program i...

Please sign up or login with your details

Forgot password? Click here to reset