Abstract | ||
---|---|---|
Many functional programming languages compile to low-level languages such as C or assembly. Numerous security properties of those compilers, however, apply only when the compiler compiles whole programs. This paper presents a compilation scheme that securely compiles a standalone module of ModuleML, a light-weight version of an ML with modules, into untyped assembly. The compilation scheme is secure in that it reflects the abstractions of a ModuleML module, for every possible piece of assembly code that it interacts with. This is achieved by isolating the compiled module through a low-level memory isolation mechanism and by dynamically type checking its interactions. We evaluate an implementation of the compiler on relevant test scenarios. |
Year | DOI | Venue |
---|---|---|
2015 | 10.1007/978-3-319-26529-2_3 | PROGRAMMING LANGUAGES AND SYSTEMS, APLAS 2015 |
Field | DocType | Volume |
Inline expansion,Interprocedural optimization,Programming language,Functional compiler,Computer science,Compile time,Compiler correctness,Bootstrapping (compilers),Compiler,Compiler construction | Conference | 9458 |
ISSN | Citations | PageRank |
0302-9743 | 3 | 0.37 |
References | Authors | |
10 | 3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Adriaan Larmuseau | 1 | 12 | 1.92 |
Marco Patrignani | 2 | 116 | 11.58 |
Dave Clarke | 3 | 416 | 26.19 |