Зависимый ML

Зависимый ML ( DML ) — экспериментальный, многопарадигмальный , универсальный , высокоуровневый функциональный язык программирования, предложенный Хунвэем Си (Xi 2007) и Фрэнком Пфеннингом . Это диалект языка программирования ML . Зависимый ML расширяет ML с помощью ограниченного понятия зависимых типов : типы могут зависеть от статических индексов типа Nat( натуральных чисел ). Зависимый ML использует средство доказательства теорем об ограничениях для определения сильной эквациональной теории над выражениями индексов.

Типы DML не зависят от значений времени выполнения — по-прежнему существует фазовое различие между компиляцией и выполнением программы. [1] Ограничивая общность полностью зависимых типов, проверка типов остается разрешимой , но вывод типов становится неразрешимым.

Dependent ML был заменен на ATS и больше не находится в стадии активной разработки.

Ссылки

  1. ^ Аспиналл и Хофманн 2005. стр. 75.

Дальнейшее чтение

  • Си, Хунвэй (март 2007 г.). «Зависимый ML: подход к практическому программированию с зависимыми типами». Журнал функционального программирования . 17 (2): 215–286. doi : 10.1017/S0956796806006216 . S2CID  45996427.
  • Дэвид Аспиналл и Мартин Хофманн  [de] (2005). «Зависимые типы». В Pierce, Benjamin C. (ред.) Advanced Topics in Types and Programming Languages . MIT Press.
  • Официальный сайт , Хунвэй Си, проектировщик и разработчик ATS
  • Домашняя страница DML Архивировано 13 декабря 2009 г. на Wayback Machine


Retrieved from "https://en.wikipedia.org/w/index.php?title=Dependent_ML&oldid=1252804853"