Home > Languages, Mobile, Talks > Domain-Specific Languages (Mobile Edition)

Domain-Specific Languages (Mobile Edition)

Last year, I gave a talk about domain-specific languages at Macoun, the biggest German-speaking conference for iOS and Mac OS developers.

Many software developers wish they could create their own programming language. A language that would exactly meet their taste and needs. However, language development is considered to be complex and laborious. Fortunately, there are frameworks for domain-specific and programming language development that make this a simple task. Domain-specific languages are widely used today. Just think of CSS, SQL, the visual format language of iOS and OS X Auto Layout constraints or the Objective-C predicate format. So let’s see, how we can easily create our own language, use an iOS device as an editor for it and generate source code or even a whole native app for multiple platforms from it.

In my talk, I gave a definition of problem domain and domain-specific language (DSL) and showed some examples of different domains. I also compared different kinds of domain-specific languages and pointed out the benefits of their use. My language implementation examples made use of the parser generator framework ParseKit and the IDE for language development Xtext. And finally, I demonstrated the Applause DSL and its usage for creating apps for different mobile platforms.

The video of my talk is in German. If you are interested in listening to this topic in English don’t hesitate to contact me. I’ll be happy to speak at your event.

Advertisements
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s