Luka Baša (2019) Development of Domain-Specific Language for the Slack bots. EngD thesis.
Abstract
The goal of the thesis is to present the development of Domain-Specific Language (DSL), which allows users to quickly, easily and reliably produce Slack bots. DSLs are programming languages for a specific domain. In our case, a DSL is developed for a smaller domain that covers the creation of the Slack bots. The key reasons for making such a DSL are the time-consuming production of the Slack bots and complex programming skills required. The analysis of the problem has shown an actual solution in the form of DSL is missing or at least not publicly available. We decided to develop an internal DSL based on the programming language Ruby. To design the architecture of our DSL as simple as possible, we have divided it into two parts: DSL parser and DSL client. The first one deals with the processing of DSL scripts while the other communicates with the Slack software. Together they make it easy to create Slack bots with different functionality. We can see and use these examples on the Slack bot Meppo, which was created as part of the thesis. The final DSL analysis proved that the goals were successfully fulfilled. DSL considerably simplifies and speeds up the production of Slack bots.
Actions (login required)