Clean

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Clean
Clean logo.jpg
Семантика

функциональный

Класс языка

purely functional programming language[d] и язык программирования

Появился в

1987

Автор

Software Technology Research Group of Radboud University Nijmegen

Система типов

строгая

Основные реализации:

Clean

Испытал влияние

Lean

Лицензия

GNU LGPL

Сайт

clean.cs.ru.nl

Clean — чистый функциональный язык программирования, поддерживающий основные принципы парадигмы функционального программирования. Для вычислений использует традиционные математические способы вывода значений — унифицированную подстановку и математическую индукцию.

Характеристики языка[править | править код]

Язык Clean во многом похож (в том числе и синтаксически) на язык Haskell. Главным отличием Clean от Haskell является способ взаимодействия с внешним состоянием (т.е. способ ввода/вывода): вместо монад Clean использует систему уникальных типов[en]. Это обеспечивает более высокую эффективность в соответствующих фрагментах кода, т.к. абстрактные структуры данных деструктивно обновляются, а не замещаются.

Транслятор языка Clean использует переписывание[en] и редукцию[en] графов и порождает нативный код относительно высокой эффективности (то обгоняя Haskell, то отставая от него), используя Си в качестве промежуточного языка.

Примечания[править | править код]

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