Static analyses and transformations are an important part of programming and domain specific languages. For example; integrated development environments analyze programs for semantic errors such as incorrect names or types to warn the programmer about these errors. Compilers translate high-level programs into programs of another language or machine code, with the purpose of executing the program. Programmers make frequent and small edits to code fragments during development, making it infeasible to do analysis of the entire program for every change. To cope with this, each change must only trigger re-analysis of the changed fragment and its dependencies while keeping a consistent knowledge base of the program. In other words, the analysis m...
We aim to specify program transformations in a declarative style, and then to generate executable pr...
Semantic specifications do not make a systematic connection between the names and scopes in the stat...
Program transformations in terms of abstract syntax trees compromise referential integrity by introd...
A refactoring is a program transformation that improves the design of the source code, while preserv...
This paper is a pre-print of: Guido H. Wachsmuth, Gabriel D.P. Konat, Vlad A. Vergu, Danny M. Groene...
We describe a language-independent theory for name binding and resolution, suitable for programming ...
We describe a language-independent theory for name binding and resolution, suitable for programming ...
All computers run software, such as operating systems, web browsers, and video games, which are used...
Recently scope graphs were introduced as a formalism to specify the name binding structure of a prog...
Compilers that can type check compilation units in parallel can make more efficient use of multi-cor...
Semantic analysis is a central part of the compilation process. The main subproblems include name an...
Grace is a dynamic object oriented programming languagedesigned to aid programming education. We pre...
Statix is a language which generates a type checker from a declarative specification. However, Stati...
DynSem is a domain-specific language for concise specification of the dynamic semantics of programmi...
We extend and combine two existing declarative formalisms, the scope graphs of Neron et al. and type...
We aim to specify program transformations in a declarative style, and then to generate executable pr...
Semantic specifications do not make a systematic connection between the names and scopes in the stat...
Program transformations in terms of abstract syntax trees compromise referential integrity by introd...
A refactoring is a program transformation that improves the design of the source code, while preserv...
This paper is a pre-print of: Guido H. Wachsmuth, Gabriel D.P. Konat, Vlad A. Vergu, Danny M. Groene...
We describe a language-independent theory for name binding and resolution, suitable for programming ...
We describe a language-independent theory for name binding and resolution, suitable for programming ...
All computers run software, such as operating systems, web browsers, and video games, which are used...
Recently scope graphs were introduced as a formalism to specify the name binding structure of a prog...
Compilers that can type check compilation units in parallel can make more efficient use of multi-cor...
Semantic analysis is a central part of the compilation process. The main subproblems include name an...
Grace is a dynamic object oriented programming languagedesigned to aid programming education. We pre...
Statix is a language which generates a type checker from a declarative specification. However, Stati...
DynSem is a domain-specific language for concise specification of the dynamic semantics of programmi...
We extend and combine two existing declarative formalisms, the scope graphs of Neron et al. and type...
We aim to specify program transformations in a declarative style, and then to generate executable pr...
Semantic specifications do not make a systematic connection between the names and scopes in the stat...
Program transformations in terms of abstract syntax trees compromise referential integrity by introd...