Well-typed Islands Parse Faster
Erik Silkensen, Jeremy G. Siek

TL;DR
This paper introduces a type-oriented island parsing system that efficiently handles composable domain-specific languages, enabling faster parsing by maintaining constant time complexity regardless of the number of imported DSLs.
Contribution
It presents a novel type-oriented island parsing approach that improves parsing efficiency for modular, composable DSLs, especially when integrated with host languages like Typed Racket.
Findings
Parsing time remains constant regardless of the number of DSLs imported.
The system effectively combines external and internal DSL syntax.
Implementation demonstrates practical integration with Typed Racket.
Abstract
This paper addresses the problem of specifying and parsing the syntax of domain-specific languages (DSLs) in a modular, user-friendly way. That is, we want to enable the design of composable DSLs that combine the natural syntax of external DSLs with the easy implementation of internal DSLs. The challenge in parsing composable DSLs is that the composition of several (individually unambiguous) languages is likely to contain ambiguities. In this paper, we present the design of a system that uses a type-oriented variant of island parsing to efficiently parse the syntax of composable DSLs. In particular, we show how type-oriented island parsing is constant time with respect to the number of DSLs imported. We also show how to use our tool to implement DSLs on top of a host language such as Typed Racket.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Model-Driven Software Engineering Techniques · Formal Methods in Verification
