Средства разработки приложений



     шалавы в москве. |          

Базовые принципы языка Scheme


Одной из ключевых черт языка Scheme является возможность работы с функциями как со значениями: их можно создавать динамически в процессе выполнения программы, присваивать переменным, сохранять как элементы в структурных типах данных, передавать как значения параметров в функции и возвращать как результат вычисления выражения. Про уравнивание функций в правах с другими значениями говорят, что это делает их «значениями первого класса».

В языке Scheme значения (такие как числа, строки, векторы, функции) неявно характеризуются местом, где они расположены - местоположением (location),- или последовательностью таких мест. Например, строка характеризуется последовательностью местоположений каждого символа этой строки. Для простоты восприятия под местоположением можно понимать некоторый адрес оперативной памяти, однако заметим, что в стандарте языка понятие местоположения не уточняется. Язык Scheme предоставляет средства доступа к значениям и их модификации по их местоположению. Например, стандартная функция string-set! позволяет сохранить новое значение по определенному местоположению в строке (местоположение задается его порядковым номером). Переменной в языке Scheme называется идентификатор, именующий некоторое местоположение. Говорят, что переменная связана с местоположением. Таким образом, переменная языка Scheme связана с местоположением, а не с тем значением, которые находится по этому местоположению. Переменная может быть использована для изменения значения, находящегося по соответствующему местоположению, при помощи оператора присваивания set!. Фактически, введение понятия местоположения и соответствующих операций изменения значений по местоположению, выводит Scheme за рамки чисто функционального языка и допускает императивный стиль программирования. Тем не менее, если придерживаться чисто функционального стиля программирования, можно забыть про понятие местоположения и считать, что переменная связана непосредственно со значением.

Множество связываний, которые видны в некоторой точке программы, называется активным окружением (environment in effect).


Содержание  Назад  Вперед