2018
DOI: 10.1007/978-3-319-89366-2_8
|View full text |Cite
|
Sign up to set email alerts
|

Fab ous Interoperability for ML and a Linear Language

Abstract: Instead of a monolithic programming language trying to cover all features of interest, some programming systems are designed by combining together simpler languages that cooperate to cover the same feature space. This can improve usability by making each part simpler than the whole, but there is a risk of abstraction leaks from one language to another that would break expectations of the users familiar with only one or some of the involved languages. We propose a formal specification for what it means for a gi… 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

2019
2019
2023
2023

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 9 publications
(5 citation statements)
references
References 29 publications
0
5
0
Order By: Relevance
“…Another line of work based is multi-language semantics [14][15][16][17] where a language combining all source, intermediate and target language is used to formalize the semantics and compiler correctness is stated using contextual equivalence or logical relations.…”
Section: Modular Verification Of Compilers For Higher-order Languagesmentioning
confidence: 99%
“…Another line of work based is multi-language semantics [14][15][16][17] where a language combining all source, intermediate and target language is used to formalize the semantics and compiler correctness is stated using contextual equivalence or logical relations.…”
Section: Modular Verification Of Compilers For Higher-order Languagesmentioning
confidence: 99%
“…Matthews and Findler [32] studied the question of the interoperability of source languages, developing the idea of a syntactic multi-language with boundary terms (c.f., contracts [18,19]) that mediate between the two languages. They focused on a static language interacting with a dynamic one, but similar techniques have been applied widely (e.g., object-oriented [20,21], affine and unrestricted [48], simple and dependently typed [40], functional language and assembly [41], linear and unrestricted [43]) and used to prove compiler properties (e.g., correctness [42], full abstraction [2,36]). More recently, there has been an effort understand this construction from a denotational [15] and categorical [14] perspective.…”
Section: Related Work and Conclusionmentioning
confidence: 99%
“…One can then prove that the entire multi-language type system is sound by proving type safety for the multi-language, which includes the typing rules of both the embedded languages and the boundaries. This multi-language framework has inspired a significant amount of work on interoperability: between simple and dependently typed languages [40], between languages with unrestricted and substructural types [43,48], between a high-level functional language and assembly [41], and between source and target languages of compilers [2,36,42].…”
Section: Introductionmentioning
confidence: 99%
“…Matthews and Findler provide a seminal work of this field [10]. Recent works in multi-language semantics are [15,16,19]. All these works apply to two languages selected beforehand, and do not handle arbitrary languages specified by users.…”
Section: Related Workmentioning
confidence: 99%