Read-eval-print-loops (REPLs) allow programmers to test out snippets of code, explore APIs, or even incrementally construct code, and get immediate feedback on their actions. However, even though many languages provide a REPL, the relation between the language as is and what is accepted at the REPL prompt is not always well-defined. Furthermore, implementing a REPL for new languages, such as DSLs, may incur significant language engineering cost. In this paper we survey the domain of REPLs and investigate the (formal) principles underlying REPLs. We identify and define the class of sequential languages, which admit a sound REPL implementation based on a definitional interpreter, and present design guidelines for extending existing language i...
We present techniques of compiling a reflective concurrent object-oriented language, ABCL/R3, by usi...
Manually verifying the behavior of software systems with respect to a set of requirements is a time-...
We propose a combination of partial evaluation and staged interpretation with MetaOCaml for rapid pr...
Read-eval-print-loops (REPLs) allow programmers to test out snippets of code, explore APIs, or even ...
A frequent programming pattern for small tasks, especially expressions, is to repeatedly evaluate th...
The Spoofax Language Workbench supports the definition of all aspects of textual languages using hig...
Exploratory programming is a form of incremental program development in which the programmer can try...
Given a tower of interpreters, i.e., a sequence of multiple interpreters interpreting one another as...
© 2019 Neural information processing systems foundation. All rights reserved. We present a neural pr...
The use of modern and complex programming languages requires dedicated development environments to s...
In this paper we present Repo, an interpreted language for exploratory programming of distributed in...
International audienceDebugging reactive programs requires to provide a lot of inputs – at each reac...
Replicode is a language designed to encode short parallel programs and executable models, and is cen...
Human-computer communication can be achieved through different interfaces such as Graphical User Int...
This paper describes a completely automated method for generating efficient and competitive interpre...
We present techniques of compiling a reflective concurrent object-oriented language, ABCL/R3, by usi...
Manually verifying the behavior of software systems with respect to a set of requirements is a time-...
We propose a combination of partial evaluation and staged interpretation with MetaOCaml for rapid pr...
Read-eval-print-loops (REPLs) allow programmers to test out snippets of code, explore APIs, or even ...
A frequent programming pattern for small tasks, especially expressions, is to repeatedly evaluate th...
The Spoofax Language Workbench supports the definition of all aspects of textual languages using hig...
Exploratory programming is a form of incremental program development in which the programmer can try...
Given a tower of interpreters, i.e., a sequence of multiple interpreters interpreting one another as...
© 2019 Neural information processing systems foundation. All rights reserved. We present a neural pr...
The use of modern and complex programming languages requires dedicated development environments to s...
In this paper we present Repo, an interpreted language for exploratory programming of distributed in...
International audienceDebugging reactive programs requires to provide a lot of inputs – at each reac...
Replicode is a language designed to encode short parallel programs and executable models, and is cen...
Human-computer communication can be achieved through different interfaces such as Graphical User Int...
This paper describes a completely automated method for generating efficient and competitive interpre...
We present techniques of compiling a reflective concurrent object-oriented language, ABCL/R3, by usi...
Manually verifying the behavior of software systems with respect to a set of requirements is a time-...
We propose a combination of partial evaluation and staged interpretation with MetaOCaml for rapid pr...