Carrot is not the first XSLT-inspired project to provide a shorter syntax than XSLT itself. Syntax shorthands have included Paul Tchistopolskii's XSLScript, Sam Wilmott's RXSLT, and another project called XSLTXT. Although none of these projects provided direct inspiration for Carrot, they all address one of the same desires that Carrot addresses: being able to program in XSLT more concisely
Since programmers often build task-specific tools, one way to make them more productive is to give them better tool-making tools. When tools take the form of program generators, this idea leads to libraries for creating languages that are directly extensible. Programmers may even be encouraged to think about a problem in terms of a language that would better support the task. This approach is sometimes called language-oriented programming
Im Gespräch mit Tim Pritlove gibt Clemens Schrimpe einen Einblick in die Geschichte der Netzversorgung, die heutige Technik und die Gründe, warum die DSL-Anschlüsse häufig nicht das liefern, was sie könnten und was in der Zukunft für neue Probleme hinsichtlich der Dienstgüte und Netzneutralität zu erwarten ist.
You might have read (about) the book Domain-Specific Languages written by Martin Fowler. As the name suggests it is about these little useful programming languages you can built very easily with Xtext.
demonstrates that sprintf and sscanf can indeed use exactly the same formatting specification, which is a first-class value. We demonstrate typed sprintf and typed sscanf sharing the same formatting specification. Our solution is surprisingly trivial: it defines a simple embedded domain-specific language of formatting patterns. The functions sprintf and sscanf are two interpreters of the language, to build or parse a string according to the given pattern. Our solution relies only on GADTs. We demonstrate that lambda-abstractions at the type level are expressible already in the Hindley-Milner type system; GADT with the included polymorphic recursion help us use the abstractions.
K. Miksa, M. Kasztelnik, P. Sabina, and T. Walter. Models in Software Engineering, volume 6002 of Lecture Notes in Computer Science, Springer Berlin Heidelberg, (2010)