Jump to content

Oz

Мавод аз Википедиа — донишномаи озод

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