Language shapes the way we think, and determines what we can think about. - Benjamin Whorf
Natural language computer processing programs have been around since the early 1960s. The most notable programs of their class are ELIZA (1966), PARRY (1972) and Alice (1995). However, whilst those programs focused on textual analysis to detect keywords in order to mimic human behaviour during a conversation, per contrary, modern programs, like virtual assistants and chatbots as we know them today use that foundation to extend the capabilities of their applications.
2016 is considered to be the year of conversational bots. After Slack, a popular chat platform for enterprises, had a significant success after its launch in 2013, it triggered the release of other platforms, some more popular than others. Additionally, many major messaging platforms such as Facebook Messenger (900 million users), Skype (600m) or kik (200m) have added similar capabilities to their apis which allow 3rd party vendors to integrate with and to build custom functionalities on top of their applications to create new user experiences, which provides them with a personal exclusive touch and makes them highly attractive to users.
Our world, its environment and the possibilities at our reach have evolved so dramatically, that at present a bunch of flowers can be bought with a mere click; and anyone has the facility to acquire clothes or other goods through those chat platforms without the necessity to navigate to the vendors web page or download their mobile applications.
Nevertheless, this project focuses on the the underlying principle of the trigger-response (pattern-action) model and how modern chat applications or smart assistants can be developed faster by the use of a dedicated scripting language such as botlang.
The purpose of the botlang project is to design a simple, non-complex and user friendly comprehensive scripting language to enable non technical personnel in an organization to be able to implement and maintain chatbots, smart FAQ systems etc. Companies using the language benefit from rapid application time and therefore have the ability to reduce potential development costs for such system compared to a traditional approach.