Денотаційна семантика

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Денотати́вна сема́нтика — це підхід до формалізації семантики програмних систем за допомогою математичних об'єктів, які описують зміст системи. Кожній конструкції мови програмування відповідає якась математична інтерпретація[1].

Денотаційна семантика виникла в роботах Кристофера Стречи[en] та Дана Скотта на початку 60-х років минулого століття. У їх ранніх роботах денотат (зміст) комп'ютерної системи інтерпретувався функцією яка відображає вхідні дані у вихідні. Пізніше Скотт перейшов до денотативної семантики заснованої на доменах. Опис системи у денотативній семантиці здійснюється за допомогою математичних об'єктів та абстрагований від її реалізації конкретною мовою програмування.

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

До того як Еугеніо Моджі відкрив що побічні ефекти можна описувати монадами, денотаційна семантика не підходила для опису таких програм, які щоправда дуже просто описувались операційною семантикою[1].

Див. також[ред. | ред. код]


Зноски[ред. | ред. код]

  1. а б Архівована копія. Архів оригіналу за 16 березня 2018. Процитовано 15 березня 2018. 

Посилання[ред. | ред. код]

  1. Denotational Semantics [Архівовано 9 лютого 2018 у Wayback Machine.] на WikiWikiWeb
  2. Процик Петро Павлович. "Методи та засоби специфікації програмних систем"