DSL Introduction

There is a common thread throughout this site - concise textual languages should be used to describe business logic, processes, business aims and architectural solutions. Pictures are great to communicate high-level concepts but detailed thinking needs an exact textual description - we do not use flow charts to design programs, not in the last 30 years anyway.

The are called Domain Specific Language (DSL) - and this part of the site explores different languages and uses.

A key concept is that they will have a common metaphor / style and will be modular - will allow a new language to be build using pre-built DSL sub-languages.

Moreover the common compute technology (a common bytecode interpretor) will also support some of the more detailed system architecture - a common compute machine will support distributed computing, for example supporting thin clients and distributed BPM processing.

The CoreLang section of this site, provides the ground rules for the different DSL languages. It provides the common syntax metaphor that will allow developers to feel that all the DSL have a common heritage. It will also allow us to define the superset bytecode and assembler language needed for the [bulk of the] runtime of the DSLs.