> 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.

Reply via email to