We describe a language-independent theory for name binding and resolution, suitable for programming languages with complex scoping rules including both lexical scoping and modules. We formulate name resolution as a two stage problem. First a language-independent scope graph is constructed using language-specific rules from an abstract syntax tree. Then references in the scope graph are resolved to corresponding declarations using a language-independent resolution process. We introduce a resolution calculus as a concise, declarative, and language-independent specification of name resolution. We develop a resolution algorithm that is sound and complete with respect to the calculus. Based on the resolution calculus we develop language-independent definitions of alpha-equivalence and rename refactoring.
Tue 14 Apr
16:30 - 17:00 Talk | Pierre NeronTU Delft, Andrew TolmachPortland State University, Eelco VisserDelft University of Technology, Guido WachsmuthDelft University of Technology | |||||||||||||||||||||||||||||||||||||||||
17:00 - 17:30 Talk | Giuseppe CastagnaParis Diderot University & CNRS, Hyeonseung ImINRIA Grenoble Rhône-Alpes, Kim NguyễnLRI, Université Paris-Sud, Véronique BenzakenLRI, Université Paris-Sud | |||||||||||||||||||||||||||||||||||||||||
17:30 - 18:00 Talk | Ravi ChughUniversity of Chicago |