Kari | |
---|---|
Jazyková třída | funkční programovací jazyk a logický programovací jazyk |
Uvolnění | |
Byl ovlivněn | Haskell a Prolog |
webová stránka | curry-language.org |
Curry je univerzální vložitelný programovací jazyk , který implementuje dvě deklarativní programovací paradigmata – funkční a logická . Pojmenována po americkém vědci Haskellu Currym .
Výpůjčky z funkcionálního programování - vnořené výrazy, funkce vyššího řádu , líné vyhodnocování ; prvky logického programování - logické proměnné, dílčí datové struktury, vestavěný vyhledávací systém. Mezi rysy patří použití technik pro paralelní systémy, jako je paralelní vyhodnocování výrazů se synchronizací na booleovských proměnných. Jazyk také poskytuje další mechanismy ve srovnání s čistými programovacími jazyky: ve srovnání s funkčními jazyky - vyhledávání a výpočty na neúplných datech, ve srovnání s logickými - efektivnější výpočetní mechanismus díky determinismu a volání podle potřeby funkcí .
Existuje několik implementací jazyka: PAKCS (University of Portland, University of Aachen , University of Kiel ) kompiluje Curry programy do kódu Prologu ; implementace KiCS a KiCS2 z University of Kiel kompilují programy do kódu Haskell ; implementace MCC na univerzitě v Münsteru zajišťuje kompilaci do strojového kódu .
Programovací jazyky | |
---|---|
|