Angel \”Java\” Lopez on Blog

May 13, 2013

Domain-Specific Languages: Links, News And Resources (3)

Filed under: Domain-Specific Languages, Links, Programming Languages — ajlopez @ 10:58 am

Previous Post

Domain-Specific Languages, implemented in different languages.

dsl – Mini-languages in Python – Stack Overflow
http://stackoverflow.com/questions/1547782/mini-languages-in-python

Creating Domain Specific Languages in Python
http://www.slideshare.net/Siddhi/creating-domain-specific-languages-in-python

Building Your Own Java, Part 2
http://www.infoq.com/presentations/JetBrains-MPS-DSL-2
Alex Shatalin and Václav Pech continue their language building demo using JetBrains MPS started in Part 1 of this presentations (see “Building Your Own Java, Part 1” on InfoQ).

DSLs in Clojure
http://www.infoq.com/presentations/DSL-Clojure

Building Your Own Java, Part 1
http://www.infoq.com/presentations/JetBrains-MPS-DSL
Alex Shatalin and Václav Pech hold a hands on demonstration on using JetBrains MPS to generate a new language, including version control, debugging, testing, refactoring, etc.

Mission: Impossible–Purely Declarative User Interface Modeling
http://www.infoq.com/presentations/S4-Declarative-DSL-UI

A DSL for Scripting Refactoring in Erlang
http://www.infoq.com/presentations/Wrangler-Refactoring-Erlang

Webr-DNQ – Web Application Development with Pleasure
http://www.infoq.com/presentations/Webr-DNQ
Maxim Mazin and Evgenii Schepotiev discuss the advantages of using DSLs by exemplifying application development with JetBrains MPS (Meta Programming System) and the Webr-DNQ framework.

Emulating "self types" using Java Generics to simplify fluent API implementation | Passion For Code
http://passion.forco.de/content/emulating-self-types-using-java-generics-simplify-fluent-api-implementation

dlitvakb/deklarativna
https://github.com/dlitvakb/deklarativna
A Declarative HTML DSL for Ruby

clojure @ runa :: dynamic pricing through DSLs
http://www.infoq.com/presentations/clojure-runa-dynamic-pricing-through-DSLs
Domain Model – Reference Guide 4.0 – Mendix Community Platform
https://world.mendix.com/display/refguide4/Domain+Model

Petter’s Random Thoughts on Software: DSL’s, UIX and Agile Development, Lessons Learned
http://pettergraff.blogspot.it/2012/05/overview-over-last-8-months-ive-been.html

cgrand/parsley
https://github.com/cgrand/parsley
A DSL for creating total and truly incremental parsers in Clojure

InfoQ: How to Integrate Models And Code
http://www.infoq.com/articles/combining-model-and-code

My Links
http://delicious.com/ajlopez/dsl

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

May 10, 2012

Domain-Specific Languages: Links, News And Resources (2)

Filed under: Domain-Specific Languages, Links, Programming Languages — ajlopez @ 4:49 pm

Previous Post
Next Post

More links about Domain Specific Languages:

Language Workbench Challenge
http://www.languageworkbenches.net/

Dsl Intro
http://www.clojure.net/2012/02/15/DSL-Intro/

META II: A Syntax-Oriented Compiler Writing Language.
http://www.bayfronttechnologies.com/metaii.html

Tutorial: Metacompilers Part 1
http://www.bayfronttechnologies.com/mc_tutorial.html

Combinator Parsing
http://www.artima.com/pins1ed/combinator-parsing.html
Occasionally, you may need to process a small, special-purpose language.

New DSL Book
http://voelter.de/dslbook/

cl-dcf
http://code.google.com/p/cl-dcf/
Common Lisp DSL Compiler Framework. CL-DCF is a framework for building DSL compilers.

RailCasts, JBuilder
http://railscasts.com/episodes/320-jbuilder?language=es&view=asciicast
Jbuilder provides a DSL for generating JSON.

Case Study in DSL Development with Scala – Part 3
http://blog.engineering.vayana.in/case-study-in-dsl-development-with-scala-part-3/

Case Study in DSL Development with Scala – Part 2
http://blog.engineering.vayana.in/case-study-in-dsl-development-with-scala-part-2/

Case Study in DSL Development with Scala – Part 1
http://blog.engineering.vayana.in/case-study-in-dsl-development-with-scala-part-1/
In early high level languages such as Lisp and Forth, the programming style was to build meta-linguistic abstractions towards the domain, and then write programs using these abstractions.

Writing a DSL with Python
http://fmeyer.org/en/writing-a-DSL-with-python.html

Implement A Dsl
http://www.clojure.net/2012/03/02/Implement-a-DSL/

Problem-Oriented Mini-Languages
http://www.jpaulmorrison.com/fbp/minilang.htm

PROGRAMMING A PROBLEM-ORIENTED-LANGUAGE
http://www.colorforth.com/POL.htm

A DSL for Continuation Passing Style in Scala
http://glennosborne.blogspot.com.ar/2012/02/dsl-for-continuation-passing-style-in.html

MUDDL
http://www.mud.co.uk/muse/muddl.htm
A CAT for ‘Multi-User Dungeon Definition Language’, serendipitously punning on MDL, the language in which ‘Zork’ was written. MUDDL is the definition language of MUD1.

Clojure Robot DSL
http://david-mcneil.com/post/17044248397/clojure-robot-dsl

Backing up with Backup
http://freelancing-gods.com/posts/backing_up_with_backup
Backup provides a neat DSL for creating backup scripts with archiving files and databases through to common data stores (S3, Rackspace, SFTP, etc), with notifications via email, Campfire and others.

Offbeat: Scala by the end of 2011 – No Drama but Frustration is Growing
http://gridgaintech.wordpress.com/2011/12/11/offbeat-scala-by-the-end-of-2011-no-drama-but-frustration-is-growing/

Implementing existing DSLs with Xtext – a case study, part 1
http://dslmeinte.wordpress.com/2011/11/28/implementing-existing-dsls-with-xtext-a-case-study-part-1/

Groovy Goodness: Create Our Own Script Class
http://mrhaki.blogspot.com.ar/2011/11/groovy-goodness-create-our-own-script.html
Groovy is a great language to write DSL implementations. The Groovy syntax allows for example to leave out parenthesis or semi colons, which results in better readable DSL (which is actually Groovy code).

My Links
http://delicious.com/ajlopez/dsl

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

May 4, 2012

Domain-Specific Languages: Links, News and Resources (1)

Filed under: Domain-Specific Languages, Links, Programming Languages — ajlopez @ 10:14 am

Next Post

As a programming language fan, I’m interested in Domain Specific Languages, too. Some of the links I found about this topic.

http://en.wikipedia.org/wiki/Domain-specific_language

In software development and domain engineering, a domain-specific language (DSL) is aprogramming language or specification language dedicated to a particular problem domain, a particular problem representation technique, and/or a particular solution technique. The concept isn’t new—special-purpose programming languages and all kinds of modeling/specification languages have always existed, but the term has become more popular due to the rise ofdomain-specific modeling.

Why Program by Hand in Five Days what You Can Spend Five Years of Your Life Automating?
http://www.infoq.com/presentations/Automation-DSL
Terence Parr discusses using automation tools including DSLs to automate the software creation process as much as possible in order to increase output, effectiveness, correctness and velocity.

Korma
http://sqlkorma.com/
Korma is a domain specific language for Clojure that takes the pain out of working with your favorite RDBMS. Built for speed and designed for flexibility, Korma provides a simple and intuitive interface to your data that won’t leave a bad taste in your mouth.

2nd International Workshop on Domain-Specific Languages and models for ROBotic systems (DSLRob’11), September 2011
http://doesnotunderstand.org/wikka.php?wakka=DSLRob11

The Perils of Partially Powered Languages
http://www.yesodweb.com/blog/2011/08/perils-partially-powered-languages

Why Programming Languages?
http://soft.vub.ac.be/~tvcutsem/whypls.html

InfoQ: Complex Event Processing: DSL for High Frequency Trading
http://www.infoq.com/presentations/DSL-for-High-Frequency-Trading

Growing a DSL with Clojure
http://pragprog.com/magazines/2011-07/growing-a-dsl-with-clojure

DSL for the Uninitiated | July 2011 | Communications of the ACM
http://cacm.acm.org/magazines/2011/7/109910-dsl-for-the-uninitiated/fulltext

Ruminations of a Programmer: Composing Heterogeneous DSLs in Scala
http://debasishg.blogspot.com.ar/2011/06/composing-heterogeneous-dsls-in-scala.html

CiteSeerX — Evolve Frameworks into Domain-Specific Languages
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.56.4111

The Metalevel — Code Generation 2011: a personal review
http://pjmolina.com/metalevel/2011/05/code-generation-2011-a-personal-review/

Language Workbench Competition 2011 / Code Generation 2011 « New Thoughts
http://www.hulshout.nl/blog/2011/05/29/language-workbench-competition-2011-code-generation-2011/

Software Development Revolutionary Game Changer
http://abstractiondev.wordpress.com/2010/12/17/software-development-revolutionary-game-changer/

Combinators as the sublanguage of DSL syntax
http://debasishg.blogspot.com.ar/2011/05/combinators-as-sublanguage-of-dsl.html

Lisp Isn’t Really a Programming Language
http://lispy.wordpress.com/2007/10/24/lisp-isnt-really-a-programming-language/
In Lisp, DSL’s are free. In fact, practically any program written in Lisp could be considered to be a DSL.

Checklist for Xtext DSL implementations
http://dslmeinte.wordpress.com/2011/04/08/checklist-for-xtext-dsl-implementations/

MD*/DSL Best Practices
Update March 2011
http://www.voelter.de/data/pub/DSLBestPractices-2011Update.pdf

InfoQ: DSL Evolution for Groovy Developers
http://www.infoq.com/presentations/DSL-Evolution-for-Groovy-Developers

On the semantics of (real-time) Domain Specific Modeling Languages
http://modeling-languages.com/semantics-real-time-domain-specific-modeling-languages/

My Links
http://delicious.com/ajlopez/dsl

More links about DSLs are coming.

Keep tuned!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

The Shocking Blue Green Theme. Blog at WordPress.com.

Follow

Get every new post delivered to your Inbox.

Join 57 other followers