Мова функціонального програмування ЛІСП

За однiєю з класифiкацiй мови програмування (МП) дiляться на процедурнi, якi також називаються операторними або iмперативними та декларативнi мови. До класу декларативних мов вiдносяться функцiональнi або апплiкативнi - Лiсп,.

Функцiональна програма складається з сукупностi визначених функцiй. Функцiї, в свою чергу, можуть викликати iншi функцiї. Обчислення починається з виклику деякої функцiї. Чисте функцiональне програмування не має присвоєнь та засобiв передачi керування. Повторнi обчислення здiйснюються за допомогою рекурсiї, яка є основним засобом функцiонального програмування.

Робота з Лiспом нагадує роботу з карманним калькулятором: користувач вводить вираз (вiн обов'язково повинен закiнчуватися символом та мати збалансовану кiлькiсть дужок), який читає машина, потiм обчислює (iнтерпретує), та видає результат. Цей процес введення-читання-обчислення-видачi результату буде вiдбуватися в циклi доти, доки користувач не введе команду (SYSTEM), яка завершує роботу з muLisp i передає керування операцiйнiй системi.

Приклад програми:

Напишемо функцію MEMBER, яка має два аргументи: nam - символ та lst - список і яка повинна перевірити чи належить символ списку.

(DEFUN MEMBER (nam lst)

((NULL lst) NIL)

((EQL nam (CAR lst)) T)

(MEMBER nam (CDR lst)))


Системи штучного інтелекту

Мова логічного програмування ПРОЛОГ

Числення предикатiв - математична основа мови.

В основі Прологу лежить поняття відношення, яке взяте з предикатних логік. Слово “предикат” відноситься до розділу математичної логіки, в якому досліджуються операції над логічними висловленнями. В логіці предикатів під предикатом розуміється деяка властивість, логічна функція від довільного числа аргументів, яка приймає тільки два значення - “істина” або ж “хибність”.

Логiку предикатiв, в деякiй мiрi, можна вважати спецiальним математичним апаратом формалiзацiї людського мислення. Звiдки, мови програмування логiчного типу є найбiльш зручними, для роботи з базами знань.

Факти та правила.

При побудовi речень Прологу використовується той же пiдхiд що й в предикатних логiках. Спочатку вiдкидаємо всi несуттєвi слова. Потiм трансформуємо речення, виставляючи на перше мiсце вiдношення.

Факти

В Пролозi зв'язок мiж об'єктами називається фактом. Факти можуть виражати як властивостi, так i вiдношення.

Запити

Враховуючи, що Пролог складається з множини фактiв, ми можемо задавати йому питання про цi вiдношення у виглядi запитiв. Пролог будує вiдповiдь i виводить її до друку.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: