FunTAL: Reasonably Mixing a Functional Language with Assembly release_dk3elukcpjh6lhygked5x266ki

by Daniel Patterson, Jamie Perconti, Christos Dimoulas, Amal Ahmed

Released as a article .

2017  

Abstract

We present FunTAL, the first multi-language system to formalize safe interoperability between a high-level functional language and low-level assembly code while supporting compositional reasoning about the mix. A central challenge in developing such a multi-language is bridging the gap between assembly, which is staged into jumps to continuations, and high-level code, where subterms return a result. We present a compositional stack-based typed assembly language that supports components, comprised of one or more basic blocks, that may be embedded in high-level contexts. We also present a logical relation for FunTAL that supports reasoning about equivalence of high-level components and their assembly replacements, mixed-language programs with callbacks between languages, and assembly components comprised of different numbers of basic blocks.
In text/plain format

Archived Files and Locations

application/pdf  1.3 MB
file_gghzezhccfg7vkxxiylkkwly6e
arxiv.org (repository)
web.archive.org (webarchive)
Read Archived PDF
Preserved and Accessible
Type  article
Stage   submitted
Date   2017-11-10
Version   v1
Language   en ?
arXiv  1711.03871v1
Work Entity
access all versions, variants, and formats of this works (eg, pre-prints)
Catalog Record
Revision: 1a4bc92e-15eb-4039-98ee-e4e6f37a07bd
API URL: JSON