2018
DOI: 10.1016/j.scico.2017.04.002
|View full text |Cite
|
Sign up to set email alerts
|

A modular foreign function interface

Abstract: Foreign function interfaces (FFIs) between high-level languages and system libraries typically intertwine the actions of describing the interface of a system library and selecting a binding strategy for linking to it. This tight coupling makes it difficult for programmers to switch between different binding strategies, and discourages the development of new approaches to binding, since more exotic approaches are unlikely to attract sufficient users to justify the cost of development.We present Cmeleon, a repla… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
5
0

Year Published

2018
2018
2024
2024

Publication Types

Select...
3
3
1

Relationship

1
6

Authors

Journals

citations
Cited by 11 publications
(5 citation statements)
references
References 16 publications
0
5
0
Order By: Relevance
“…Modular Macros [44] o ered a compile-time variant of BER MetaOCaml by introducing a new keyword to enable macro expansion. In their work they demonstrate that an existing staged library needs intrusive changes to sprinkle the code with the aforementioned keywords.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Modular Macros [44] o ered a compile-time variant of BER MetaOCaml by introducing a new keyword to enable macro expansion. In their work they demonstrate that an existing staged library needs intrusive changes to sprinkle the code with the aforementioned keywords.…”
Section: Related Workmentioning
confidence: 99%
“…Monnier et al [25] rst expressed inlining as staged computation but MacroML o ered a user-level perspective by reusing the same mechanisms of quotes and splices; where splices can appear at the top-level (not nested in a quote). Modular Macros [44] prototyped a compile-time variant of MetaOCaml which also comprises part of our inspiration. While the same line of work inspired many metaprogramming libraries and language features, to our knowledge builtin support for both run-time MSP and generative macros has not been implemented previously in a unifying manner.…”
Section: Introductionmentioning
confidence: 99%
“…Generalized algebraic data types (GADTs), whose usefulness once appeared to be restricted to length-indexed vectors and well-typed evaluators, are now commonplace in functional programming, appearing in applications from parsers [Pottier and Régis-Gianas 2006] to foreign function interfaces [Yallop et al 2018]. However, novices still find GADTs challenging to understand.…”
Section: Gadts In System Fωmentioning
confidence: 99%
“…Ctypes (Yallop et al, 2018) proposes an alternative way to bind libraries. Rather than writing C code, a specification of the library is described in OCaml code.…”
Section: Related Workmentioning
confidence: 99%