TY - JOUR
T1 - Formalizing homogeneous language embeddings
AU - Clark, T.
AU - Tratt, Laurence
N1 - Copyright 2011 Elsevier B.V., All rights reserved.
PY - 2010/9/17
Y1 - 2010/9/17
N2 - The cost of implementing syntactically distinct Domain Specific Languages (DSLs) can be reduced by homogeneously embedding them in a host language in cooperation with its compiler. Current homogeneous embedding approaches either restrict the embedding of multiple DSLs in order to provide safety guarantees, or allow multiple DSLs to be embedded but force the user to deal with the interoperability burden. In this paper we present the μ-calculus which allows parameterisable language embeddings to be specified and analysed. By reducing the problem to its core essentials we are able to show how multiple, expressive language embeddings can be defined in a homogeneous embedding context. We further show how variant calculi with safety guarantees can be defined.
AB - The cost of implementing syntactically distinct Domain Specific Languages (DSLs) can be reduced by homogeneously embedding them in a host language in cooperation with its compiler. Current homogeneous embedding approaches either restrict the embedding of multiple DSLs in order to provide safety guarantees, or allow multiple DSLs to be embedded but force the user to deal with the interoperability burden. In this paper we present the μ-calculus which allows parameterisable language embeddings to be specified and analysed. By reducing the problem to its core essentials we are able to show how multiple, expressive language embeddings can be defined in a homogeneous embedding context. We further show how variant calculi with safety guarantees can be defined.
UR - http://www.scopus.com/inward/record.url?partnerID=yv4JPVwI&eid=2-s2.0-77956417771&md5=5dce72263b970b60209e3fa9ca24386e
U2 - 10.1016/j.entcs.2010.08.033
DO - 10.1016/j.entcs.2010.08.033
M3 - Article
AN - SCOPUS:77956417771
SN - 1571-0661
VL - 253
SP - 75
EP - 88
JO - Electronic Notes in Theoretical Computer Science
JF - Electronic Notes in Theoretical Computer Science
IS - 7
ER -