> On Dec 19, 2018, at 11:07 PM, wanderley.guimar...@gmail.com wrote: > > Can you give an example of a simple eDSL language? Not that I am not lazy but > I don’t have an idea of what to search.
People consider stand-alone DSLs from embedded DSLs, and they also distinguish how programs written in eDSLs interact with their context. AWK is a stand-alone DSL. Many ad hoc configuration languages for sw systems are stand-alone DSLs. The format language of Racket is an embedded DSL. The only things that make sense of programs written in the format languages are its Racket interpreters (for example _format_ and _printf_) and the Racket string operations. Its interface is rigid; Racket values flow into the interpreter and, in the case of format, a string comes back. The language of Racket’s match is also an embedded DSL, and its interface to Racket is fluid. Racket programs can use match in arbitrary expression positions, match can all out to Racket (for example via ? clauses), and Racket can send values into match via ? and match expanders. The languages of syntax and syntax-parse are also embedded DSLs, and their interfaces are even more fluid than match’s. A syntax variable can be used in a syntax-parse match, created outside, flow into syntax templates, etc. The pattern language of syntax-parse interacts with the language of syntax variables and Racket and Racket’s template language. This example is a bit extreme but for those of you who know the languages, it is also quite clarifying. — Matthias -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.