InfoQ Homepage DSLs Content on InfoQ
-
Haskell at Barclays: Exotic Tools for Exotic Trades
Tim Williams describes one of the world's largest commercial Haskell deployments (Barclays) and shares some experiences and insights gained using Haskell to build domain specific languages.
-
Building a Language for Spreadsheet Refactoring
Felienne Hermans introduces BumbleBee, a refactoring and metaprogramming spreadsheets tool based on a DSL that can perform transformations against spreadsheet formulas.
-
Plugging the Users in - Extend Your Application with Pluggable Groovy DSL
Baruch Sadogursky discusses creating DSLs which support plugins written both in Groovy or Java, addressing good public API design practices, security, and classpath isolation.
-
A Relational Exploration of the Chomsky Hierarchy
Friedman and Byrd explain how to encode deterministic and non-deterministic finite automata, push-down automata, and Turing Machines in miniKanren, a DSL for relational (pure logic) programming.
-
Turtle Graphics in Groovy - Extending Groovy with DSL techniques
Jim Driscoll shows how to create Napili, a small program accepting user scripts to control a turtle using GroovyShell, the Binding, overriding behavior with set/getVariable and invokeMethod, and more.
-
Thinking DSLs for Massive Visualization
Leo Meyerovich introduces Superconductor, a browser-based language for massive interactive visualizations using end-to-end parallel DSLs and a synthesis DSL for parallel layout.
-
Leveraging Groovy for Capturing Business Rules
Paul King illustrates various DSLs written in Groovy, highlighting several logic solving APIs and looks at the pros and cons of the various approaches (including tool support, flexibility, lock-in).
-
Creating Groovy DSLs that Developers Can Actually Use
Guillaume Laforge and Paul King show how to leverage Groovy to build a Mars rover controlling DSL, including metaprogramming techniques and integration mechanisms.
-
Implementing a DSL for Social Modeling: an Embedded Approach Using Scala
Juan Manuel and Jesús López González share their experience gathered over five years designing and implementing Speech, a DSL for programming social processes.
-
RText: A Cross-editor DSL Framework
Martin Thiede introduces and demoes RText, an open source textual DSL framework that can be used with almost any text editor or IDE.
-
Racket: Metaprogramming Time!
Matthew Flatt introduces Racket, an extensible programming language useful to create new syntactic forms and construct entirely new programming languages.
-
Piplin – A DSL for Describing Silicon in Clojure
David Greenberg introduces Piplin, a DSL that allows a subset of Clojure to be automatically converted into a hardware description, which can then be placed onto an FPGA or made into a silicon chip.