"Grammar Manipulation in a Broad Sense"
Grammar theory is well-known for being a useful and mature instrument to
investigate the structure of software: since software languages often turn out
to be infinite, it is useful to have those reflected and defined by finite
specifications (i.e., grammars). However, structural commitments have a much
broader scope than textual syntactic conformance. Protocols, data types,
schemata, API, metamodels, etc can be viewed as grammars in a broad sense.
Such a uniform view allows us to develop methods (almost) universally
applicable to various areas of software language engineering, and --- even
more interestingly --- investigate and enforce consistency across several
definitions of the same intended language.
In this talk, we will show various examples of grammars in a broad sense, as
well as techniques that work on them. In particular, the focus will be on
programmable grammar transformation, grammar mutation and grammar convergence.
Bio: Dr. Vadim Zaytsev is a lecturer at the University of Amsterdam (The
Netherlands) who acquired his PhD in 2010 at the Free University of Amsterdam
in the field of software language engineering and has worked in the meantime
in University of Koblenz (Germany) and Centrum Wiskunde & Informatica. Besides
hardcore software language engineering with grammar(ware) technology, his
interests and research activities tend to invade such topics as source code
analysis and transformation, modelling, metamodelling and megamodelling,
programming paradigms, declarative and functional programming, programming
design rules, maintenance and renovation of legacy systems, reverse and
re-engineering and others. More information can be found on
http://grammarware.net/ and http://grammarware.github.io