Применение Denotational Semantics к разработке программ

Я немного читал о денотационной семантике (DS), и я очень заинтригован процессом проектирования компьютерные программы, где типы и функции имеют сильные и четкие сопоставления с математикой.

Есть ли какие-либо ресурсы, которые подробно обсуждают разработку программ на основе DS? Я видел несколько поверхностных обработок предмета.

Я знаком с Haskell, Scala, Common Lisp и немного с Scheme, поэтому мы будем благодарны за любые ресурсы, которые используют эти языки.

30 голосов | спросил Tim Stewart 16 Jam1000000amWed, 16 Jan 2013 04:01:56 +040013 2013, 04:01:56

2 ответа


13

Denotational design (дизайн программы, внедренный и вытекающий из денотационной семантики) - моя основная методология. Несколько лет назад, когда я писал о FRP, мне стало намного понятнее, что я делал. См. Функциональное программируемое программирование . Более подробное описание парадигмы и множества примеров см. В Денотационный дизайн с морфизмами типа класса . Как только я осознал образец, я начал искать его повсюду. Когда он терпит неудачу, я знаю, что у меня есть абстракция. Для раннего неофициального описания см. Сообщение блога Люка Палмера Семантический дизайн .

Меня всегда интересуют приложения денотационного дизайна, поэтому я хотел бы услышать о ваших исследованиях.

ответил Conal 19 Jpm1000000pmSat, 19 Jan 2013 21:59:17 +040013 2013, 21:59:17
7

Мы применили денотационную семантику к самому языковому дизайну, утверждая, что дизайн языков, в частности, доменных языков, должен начинаться с определения семантики. Если вас интересуют детали, вы можете взглянуть на дизайн DSL с семантикой и Семантика First! Пересмотр процесса разработки языка .

ответил Martin Erwig 24 Jpm1000000pmThu, 24 Jan 2013 20:11:45 +040013 2013, 20:11:45

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132