FunTAL: Reasonably Mixing a Functional Language with Assembly

11/10/2017
by   Daniel Patterson, et al.
0

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.

READ FULL TEXT
POST COMMENT

Comments

There are no comments yet.

Authors

page 1

page 2

page 3

page 4

03/28/2021

Lessons Learned Developing an Assembly System for WRS 2020 Assembly Challenge

The World Robot Summit (WRS) 2020 Assembly Challenge is designed to allo...
06/03/2018

MaestROB: A Robotics Framework for Integrated Orchestration of Low-Level Control and High-Level Reasoning

This paper describes a framework called MaestROB. It is designed to make...
04/09/2019

The Last Mile: High-Assurance and High-Speed Cryptographic Implementations

We develop a new approach for building cryptographic implementations. Ou...
03/15/2019

Get rid of inline assembly through trustable verification-oriented lifting

Formal methods for software development have made great strides in the l...
02/15/2021

Interface Compliance of Inline Assembly: Automatically Check, Patch and Refine

Inline assembly is still a common practice in low-level C programming, t...
12/13/2021

ROMEO: Exploring Juliet through the Lens of Assembly Language

Automatic vulnerability detection on C/C++ source code has benefitted fr...
08/05/2021

Learning to Design and Construct Bridge without Blueprint

Autonomous assembly has been a desired functionality of many intelligent...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.