Главная
»
Информационные системы
»
Представление знаний в ИС
»
Язык Prolog. Области действия имен.
Язык Prolog. Области действия имен.
В Прологе программист свободен в выборе имён констант, переменных, функций и предикатов. Исключение составляют резервированные имена и числовые константы. Переменные не объявляются, отличаясь от констант первой буквой (строчная или прописная). Разные обозначения представляют разные объекты. Есть довольно очевидные исключения. Например, 133.1 и 133.10 - одно и то же число.
Область действия имени представляет собой часть программы, где это имя имеет один и тот же смысл (как во всех языках программирования). В Прологе:
· для переменной областью действия является выражение (факт, правило или вопрос), её содержащее,
· для остальных имён (констант, функций или предикатов) - вся программа.
Многократно можно использовать в одной программе лишь имена переменных. В приводимом ниже фрагменте из БД семья имеются: два вхождения имени каролина - это одна и та же константа, четыре вхождения имени (предикатного) мать - один и тот же предикат (всюду двухместный). Но переменные первого и вотрого правил независимы (это интуитивно ясно).
мать(каролина,юлия).
мать(каролина, альбертина).
дед(Х,Y):-отец(Х,Z), отец(Z,Y).
бабка(Х,Y):-мать(Х,Z), мать(Z,Y).
Друзья! Приглашаем вас к обсуждению. Если у вас есть своё мнение, напишите нам в комментарии.