Return to site

d0SL Semantic language

advantages over traditional BRE

d0SL is a next step generation of so called Business Rules Engines (BRE). Just like regular BRE’s d0SL allows you to implement business logic of your system by using declarative logical specifications language.

Main components of d0SL are:

  1. d0SL language itself
  2. d0VM – semantic virtual machine which executes semantic models written in d0SL language
  3. d0SDK – an IDE for creating semantic models, which also includes d0SL examples
  4. Domain models (or so called drivers) which serve to link the semntic models with external systems, and allow you to define logical rules, using terms of the subject area.
There are several important advantages over traditional BRE:
  1. d0SL has very simple purely logical syntax, which does not require any programming skills from users who use it to specify business logic. Everyone who has basic understanding of logic can start using it in a matter of several hours unlike other BREs, which require significant investment of time to learn and special programming skills to understand and write business rules.

  2. d0SL scales from embedded systems to enterprise level. Its footprint is very lightweight and can be deployed even on embedded systems like Raspberry PI. On the other hand, d0SL can be used on enterprise level (we have carrier grade version of d0SL called Eyeline SDP, which is used by several mobile telcos, banks etc).

  3. d0SL has very clear intuitive semantics for non programmers, because d0SL is based on a pure Delta 0 subset of first order predicate logic and has mathematically proven semantics. Unlike d0SL other BREs have non clear semantics which makes them much more difficult to use.

  4. d0SL allows to create DSLs (domain specific languages) which can be used to create business rules not only by your employees, but also by your end users.

  5. d0SL provides IDE out of the box, which simplifies creation of logical rules. We supply this in a form of d0SL plugin for JetBrains MPS. This simplifies the creation of semantic logical models because this plugin helps the user to create syntactically correct semantic models.

  6. d0SL allows easy integration with your existing software by implementing integration drivers (so called domain models).

  7. d0SL allows to implement one set of logical rules on top of the other sets of logical rules (a set of logical rules is called semantic model). In turn this allows to increase level of abstraction as much as you need. And this is important for you to create a Domain Specific Language for your users/employees which is easy to learn and easy to use.

We like the word d0SL and we will use it both for the language itself and for the system as a whole, or even for the components mentioned above. The meaning should be clear from the context, for example, d0SL language, d0SL virtual machine etc.

You can think of d0SL as a logical operating system which can execute semantic models written in d0SL language. As any OS d0SL needs drivers to communicate with an environment: such drivers in d0SL are called domain models. Another similar analogy is the JDBC drivers, which connect to the database.

All Posts

Almost done…

We just sent you an email. Please click the link in the email to confirm your subscription!

OKSubscriptions powered by Strikingly