Oz (язык программирования)

Материал из Википедии — свободной энциклопедии

Перейти к: навигация, поиск
Oz
Семантика: функциональный, процедурный, декларативный, объектно-ориентированный, вычисления с ограничениями, Н-модели, параллельные вычисления
Класс языка: {{{paradigm}}}
Тип исполнения: компилируемый
Появился в: 1991 г.
Автор(ы): Gert Smolka & his students
Типизация данных: {{{typing}}}
Основные реализации: Mozart
Диалекты: отсутствуют
Создан под влиянием: Пролог
Оказал влияние на: нет или не известно

Ozязык программирования высокого уровня, в котором совмещены функциональная, процедурная, декларативная семантики. На уровне языка поддерживается решение задач математического программирования, в частности задач дискретной оптимизации. Языковые конструкции допускают простое и естественное распараллеливание задач.

Высококачественная открытая реализация языка Oz — Mozart включает IDE на основе расширения редактора Emacs, компилятор, отладчик, профайлер и другие утилиты.

  • Пример программы на языке Oz, решающей ребус
 ФУТ
+БОЛ
 ---
ИГРА
Где И=0 и все различные буквы означают различные цифры.

Программа:

local Fut Res in
proc {Fut C} 
 F#U#T#B#O#L#G#R#A = C 
in 
 C ::: 0#9 
 {FD.distinct C} 
 F \=: 0 
 B \=: 0 
 100 * F + 10* U + T + 100*B + 10*O + L =: 100*G + 10*R + A 
 {FD.distribute ff C} 
end 
{SearchAll Fut Res} 
{Browse Res} 
end 

покажет все решения данного ребуса в виде таблицы.

[править] См. также

[править] Ссылки