2006
DOI: 10.1016/j.entcs.2005.11.047
|View full text |Cite
|
Sign up to set email alerts
|

A Type-Safe Embedding of XDuce into ML

Abstract: We consider the problem of integrating XDuce into ML. This is difficult because of incompatible type and value representations. Our solution is a type-driven translation scheme from XDuce to ML based on a structured representation of XDuce values. XDuce type inference guides the insertion of appropriate coercion functions to translate regular expression pattern matching and uses of semantic subtyping. We can extend our translation scheme to include ML function calls and patterns into XDuce. Thus, we can embed … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
10
0

Year Published

2008
2008
2019
2019

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 13 publications
(10 citation statements)
references
References 22 publications
0
10
0
Order By: Relevance
“…We consider that RETs are a straightforward type representation of syntax trees, and RETs can make a theoretical bridge between declarative parsing, tree automata, and programming language design. Indeed, binding RETs with ML and OCaml has been reported in [5,22].…”
Section: Related Workmentioning
confidence: 93%
“…We consider that RETs are a straightforward type representation of syntax trees, and RETs can make a theoretical bridge between declarative parsing, tree automata, and programming language design. Indeed, binding RETs with ML and OCaml has been reported in [5,22].…”
Section: Related Workmentioning
confidence: 93%
“…Several systems integrate external data into a programming language. Those include XML [9,21] and databases [5]. In both of these, the system requires the user to explicitly define the schema (using the host language) or it has an ad-hoc extension that reads the schema (e.g.…”
Section: Related and Future Workmentioning
confidence: 99%
“…Indeed, both type systems (ML and XDuce) are kept apart, and a value is either seen as on the ML side -and can then be polymorphic-or on the XDuce side -and can then be precisely typed (with XDuce pattern matching for example)-. Finally, in the same spirit of combining two type systems, a more general approach was defined by Sulzmann and Lu [27] for Haskell where the authors mix Haskell type classes with XDuce regular expression types into a system called XHaskell [28]. They provide a semantics via a type-directed rewriting of the language into System F. While the decidability of the general version is not clear, some restrictions make it tractable and lead to an implementation of this work using the GHC Haskell compiler as backend.…”
Section: Related Workmentioning
confidence: 99%