Alice (язык программирования)
-
Обзор Alice ML
- Alice ML — это функциональный язык программирования с поддержкой параллелизма, отложенного вычисления и программирования ограничений.
- Язык расширяет стандартный ML, добавляя функции параллелизма и отложенной оценки.
-
Особенности Alice ML
- Алиса использует тип future для представления значений, вычисляемых независимыми потоками.
- Поток, использующий future, блокируется до завершения вычисления.
- Promise позволяет потоку предоставлять future значение другому потоку.
- Типизированные переменные Future и promise используются для синхронизации потоков данных.
-
Компиляция и взаимодействие
- Alice ML использует виртуальную машину Abstract Machine (SEAM) для компиляции в байт-код и машинный код.
- Ранние версии работали на виртуальной машине Mozart Programming System (Oz).
- Удаленный вызов процедуры возможен благодаря виртуальной машине.
-
Пример использования
- Приведен пример использования Alice ML для вычисления чисел Фибоначчи с использованием потоков и отложенного вычисления.
-
Дополнительные ресурсы
- Ссылки на Oz (язык программирования) и рекомендации по использованию Alice ML.
- Официальный веб-сайт и публикации о языке.