Software languages are everywhere: library designers, DSL engineers, domain experts, MDE practitioners, communication protocol implementers, compiler specialists, ontology makers - everyone appreciates the ability to express their thoughts in code/models written in a language specifically tailored for the problem domain. In the recent years, creating such a new language stopped being the career-deciding work of a lifetime and turned into a normal software engineering recipe. Now the time has come to focus on making software language creation methods reliable and repeatable.However, language design (as opposed to language implementation) is largely a form of art and has resisted most attempts to turn it into a form of science or engineering. In this talk one will see an alternative approach to language design: one where the designers fully accept the responsibility and readily agree that making design choices has traceable consequences in influencing the behaviour of language users. In fact, it is this ability to cause changes in user behaviour what we refer to as “language design” — a definition borrowed from product designers and graphic designers.To exemplify the ideas of persuasive language design intended to change users’ behaviour, we will consider DYOL (pronounced like “duel”) http://slebok.github.io/dyol/, a toolkit containing cards with design components that were extracted from 24 books on parsing techniques, compiler construction, compiler design, language implementation, language documentation, programming languages, software languages, etc, as well as from the original set of Design with Intent cards and papers on DSL design. The resulting language design card toolkit can be used by DSL designers to cover important design decisions and make them with more confidence.
Fri 27 OctDisplayed time zone: Tijuana, Baja California change
10:30 - 12:00 | |||
10:30 30mTalk | DYOL: Design a Language, Know the Consequences SPLASH-I Vadim Zaytsev Raincode Labs, Belgium |