Domain-Specific Languages
Beyond DSLs: Business Natural Languages (BNLs) for a High Abstraction Level
Since being founded in the year 2003, a French software development company had focused on developing applications based on domain-specific languages (DSL) for the finance sector as well as Web 2.0 and Web 3.0 applications for niche markets (such as transactions and simulations). The company’s high-end services range from consulting, project planning and project management to application maintenance services. To speed up and facilitate the development of new DSLs and DSL-based applications, using VisualWorks.
For their projects, they focus on developing DSLs that integrate into their middleware platform. But their software developers go even one step beyond creating new DSLs; their objective is to develop so-called business natural languages (BNL). The major aspect of creating a BNL is to reach a very high abstraction level based on a semantically rich, general-purpose programming language such as Lisp or Smalltalk. This will provide maximum flexibility and the opportunity to re-use certain primary elements such as numbers, dates, Booleans, etc. Once the expert defined the required vocabulary, the application can be developed very quickly. It is easy to maintain and can be rapidly improved and adapted to future evolutions. Furthermore, its verifiable technological and logical reliability is another big plus.
When asked for the reasons for selecting VisualWorks,the Director of Application Development explains:
First of all, we decided to use VisualWorks for its maturity, availability and homogeneity, which is not reached by other object-oriented languages. In addition, we needed a dynamic language providing a just-in-time optimiser while guaranteeing maximum stability with effective support.VisualWorks completely meets these requirements. Besides, we want to provide our customers with anintegrated development environment (IDE) that allows them to use their DSL in the easiest way possible, on whatever platform they choose. Smalltalk is very well suited for this particular deployment.
Cincom Smalltalk has proven to be clearly more cost-effective and versatile. Furthermore, the VisualWorks IDE is easier to extend. The developers who used to work with Eclipse or NetBeans feel very familiar with it within the shortest period of time.