InfoQ Homepage Domain Specific Languages Content on InfoQ
-
Separating business logic from technology: Kathleen Dollard on a new view of code generation
Even the most successful project becomes a failure when a new technology comes out and everything has to be rewritten from the ground. This is why business logic has to be separated from technology. And, according to Kathleen Dollard, code generation is a promising approach to achieve it.
-
Interview: Charles Simonyi on Intentional Software
Charles Simonyi, the President of Intentional Software and a recent space traveller presents his views on the future of software development. He talks about how to include domain experts in the development cycle by letting them express their intentions in domain specific languages, about Intentional's view on DSLs and Domain Driven Design and about what it was like to be a space tourist.
-
InfoQ Presentation: MetaProgramming Ruby
InfoQ presents a video of Dave Thomas' QCon London presentation "MetaProgramming Ruby". Dave presents the basic Ruby language features for implementing Ruby on Rails features such as has_many. Class methods, open classes, Mixins, and more tools for metaprogramming are demonstrated and explained.
-
Interview: Guillaume Laforge on Groovy and DSLs
Groovy project manager Guillaume Laforge discusses the history of Groovy, it's relationship to Java, where Groovy fits into Java development, how Groovy compares to Ruby, how Groovy enables domain-specific languages, and what future Groovy development will focus on.
-
Why do Java developers hate BPM?
John Raynolds asked recently the question: "Why do java developers hate BPM?". His controversial post generated a lot of comments that speak more generally about the growing divide between modeling environments and development environments, and the role of the business in traditional development cycles.
-
InfoQ Minibook: Composite Software Construction
In a new InfoQ minibook, InfoQ SOA Editor and SOA Enterprise Architect Jean-Jacques Dubray describes the state of the art and emerging new approaches in building "Composite Software", solutions created by assembling existing services. The book is available as an InfoQ Minibook, i.e. free of charge in PDF format for InfoQ users. A printed version is available too.
-
Extension Methods, DSLs, and Fluent Interface
A brief look at Domain Specific Langauges, Fluent Interfaces, and how Extension Methods allow them to be used from C# and VB. Plus a tip on using extension methods in the .NET 2.0 framework.
-
Martin Fowler unveils details of his upcoming DSL book
Martin Fowler unveiled some details about his upcoming book on DSLs through his Work In Progress gateway. In the draft of its introductory part, Fowler gives an example of a Domain Specific Language case and provides some new insights on DSLs, their implementation and use.
-
Is a picture always worth a thousand words?
<p>Is a picture always worth a thousand words?</p> <p>In his recent article, “Why we write code and don’t just draw diagrams”, Dean Wampler argues that in software development the opposite is more often true. </p>
-
Should you be using RELAX-NG?
10 reasons to consider using RELAX-NG in place of W3C XML Schemas as your XML schema language.
-
Interview: Jay Fields and Zak Tamsen on Domain Specific Languages
Jay Fields and Zak Tamsen talked with InfoQ about Domain Specific Languages (DSLs), and how they have successfully used them in their projects at ThoughtWorks to empower businesses, reduce development time, and increase the agility of projects.
-
High abstraction level of DSLs to reduce the testing burden?
Inconsistencies between the user interface and user’s expectations can be an important source of bugs. According to Leonardo Vernazza, this is due the fact that the user and the UI do not talk the same language. Using a DSL, characterized by a high abstraction level, would be instrumental for avoiding the risk of translation errors and would therefore reduce the testing burden.
-
Moving away from exclusive use of OOP and Curly Brace Languages to reduce code waste?
According to Bob Warfield, at least 70% of code is wasted because it’s written to build components which would add no competitive differentiation to the final product. To reduce this "waste", programmers should practice code reuse instead of repeatedly building the same components. However, to facilitate code reuse it is necessary to move away from exclusive use of OOP and Curly Brace Languages.
-
Java, Ruby, and the Continuous Tax
Recently as part of a debate on ActiveRecord and Hibernate, Bob Lee of Google used the term "continuous tax" to describe the pros and cons of using a dynamically typed language like Ruby in respect to a statically typed language such as Java.
-
Charles Simonyi reveals production use of Intentional Software @ JAOO
Charles Simonyi (recent space tourist, and ex-Microsoft lead architect of Word & Excel) presented Intentional Software at the JAOO conference today. Intentional is building a domain language workbench, which allows business experts write domain code in their own familiar notations, that code then being used to generate the rest of an application.