A Modular Rewriting Approach to Language Design, Evolution and Analysis. door Mark A. Hills