A certified extension of the Krivine machine for a call-by-name higher-order imperative language

In this paper we present a compiler that translates programs from an imperative higher-order language into a sequence of instructions for an abstract machine. We consider an extension of the Krivine machine for the call-by-name lambda calculus, which includes strict operators and imperative features...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Rodríguez, Leonardo Matías, Fridlender, Daniel Edgardo, Pagano, Miguel María
Formato: article
Lenguaje:Inglés
Publicado: 2022
Materias:
Acceso en línea:http://hdl.handle.net/11086/30119
http://dx.doi.org/10.4230/LIPIcs.TYPES.2013.230
Aporte de:
Descripción
Sumario:In this paper we present a compiler that translates programs from an imperative higher-order language into a sequence of instructions for an abstract machine. We consider an extension of the Krivine machine for the call-by-name lambda calculus, which includes strict operators and imperative features. We show that the compiler is correct with respect to the big-step semantics of our language, both for convergent and divergent programs.