О теориях имен и ссылок в формальных языках и последствиях для функционального и объектно-ориентированного программирования
Аннотация:
Обсуждается давняя проблема адекватной формализации понятия локальных имен в математических формулах и семантики ссылок в объектно-ориентированных языках, взятых «в чистом виде» без объектов. Объясняется, почему существующие подходы нельзя считать подходящими решениями. Дается введение в сравнительно свежие работы по теориям имен и ссылок группы, которую возглавляет Andrew Pitts. Разбирается понятие референциальной прозрачности, в которой вместо обычного равенства значений используется контекстуальная эквивалентность. Это основное свойство, на которое опираются указанные теории: оно сохраняется при расширении чисто функционального языка именами и ссылками как данными. Утверждается, что такая референциальная прозрачность вместе со многими другими свойствами может быть сохранена и для объектов с ограниченно изменяемыми состояниями. Это приводит к модели вычислений между функциональной и объектно-ориентированной, которая позволяет детерминированную параллельную реализацию.
Ключевые слова:
связанные переменные, локальные имена, ссылки на объекты, номинальная теория множеств, номинальные методы, референциальная прозрачность, контекстуальная эквивалентность, монотонные объекты