Claire (programovací jazyk) - Claire (programming language)
![]() | Tento článek má několik problémů. Prosím pomozte zlepšit to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
Paradigma | multi-paradigma: funkční, objektově orientovaný (třídní ), zpracování pravidel, reflexní |
---|---|
Navrhl | Yves Caseau |
Poprvé se objevil | 1994 |
Stabilní uvolnění | 3.3.46 / 17. února 2009 |
Psací disciplína | silný, oba statický a dynamický |
OS | Cross-platform |
Licence | Povolená bezplatná softwarová licence |
Přípony názvu souboru | .cl |
webová stránka | www |
Hlavní, důležitý implementace | |
Claire (referenční implementace ), WebClaire | |
Ovlivněno | |
Pokec, SETL, OPS5, Lisp, ML, C, LORE, LAURE |
Claire je na vysoké úrovni funkční a objektově orientovaný programovací jazyk s zpracování pravidel schopnosti. Byl navržen uživatelem Yves Caseau v Bouygues „Výzkumná laboratoř e-Lab a konečnou definici obdržela v roce 2004.
Claire poskytuje:
- jednoduchý objektový systém s parametrické třídy a metody
- polymorfní a parametrické Funkcionální programování
- výrobní pravidla spuštěn Události
- verzované snímky stavu celého systému nebo jakékoli jeho podpůrné části vrácení zpět a snadné zkoumání hledat mezery
- explicitní vztahy mezi entitami; například dvě entity mohou být prohlášeny za inversy jeden druhého
- první třída sady s pohodlným syntax pro programování na základě sady
- expresivní systém typu set umožňující obojí druhá objednávka statický a dynamický psaní na stroji
Claire referenční implementace, skládající se z tlumočníka a překladače, byl plně open-source vydáním verze 3.3.46 v únoru 2009. Další implementace, WebClaire, je komerčně podporována.
Přehled
Claire je univerzální programovací jazyk, nejvhodnější pro aplikační software vyžadující sofistikované modelování dat, zpracování pravidel nebo řešení problémů. WebClaire přidává rozšíření pro úplnější integraci s operační systém a pro programování webové aplikace.
Ačkoli Claire lze použít pro kompletní projekty, je navržen tak, aby hladce integroval do C ++ nebo Jáva: Programy Claire mohou obsahovat kód C ++ nebo Java a kód Claire lze přeložit do C ++ nebo Java pro použití v projektech C ++ nebo Java.
Klíčová sada funkcí, která odlišuje Claire od jiných programovacích jazyků, byla diktována zkušenostmi s řešením složitých optimalizačních problémů. Dvě funkce, které nebyly nalezeny v jiných smíšených funkčních / objektově orientovaných jazycích, například OCaml, Scala a F#, jsou správa verzí a výrobní pravidla.
Verze lze považovat za hromadu snímků některé části systému, které lze podle potřeby vytvořit jako velké (pro expresivitu) nebo malé (pro efektivitu). Vytváření a vrácení verzí umožňují ustoupit, jak je uvedeno v logické programování, ačkoli Claireovo zpětné sledování může pokrývat jakoukoli uživatelem definovanou strukturu, nikoli jen sadu logických proměnných.
Pravidlo produkce v Claire se skládá z události, podmínky a odpovědi, která se má vyhodnotit, pokud je podmínka splněna. Událostí může být jakákoli změna ve slotu objektu nebo vytvoření instance třídy a samotná odpověď může spustit další události. Taková produkční pravidla jsou zvláště užitečná při popisu reaktivních algoritmů, jako jsou například pro omezení propagace.
Claire byla vytvořena jako nástupce LAURE, expresivního, ale složitého jazyka, který navrhl Caseau v 80. letech a který kombinoval mnoho paradigmat. Claire měla být jak snadněji se učit než její předchůdce, tak neukládat žádnou režii výkonu ve vztahu k C ++; jedná se tedy o mnohem menší jazyk, který vynechává funkce jako omezení a deduktivní pravidla, a je blíže C v duchu a syntaxi. Jeho hlavními uživateli v průmyslu byli Bouygues a Thales skupiny.
Příklad
Funkce pro výpočet nčíslo Fibonacciho:
fib (n: integer): integer-> (if (n <2) 1else fib (n - 1) + fib (n - 2))
externí odkazy
- Oficiální webové stránky
- Nejnovější verze Claire a její dokumentace jsou k dispozici na webu „claireprogramminglanguage“ Yahoo! skupina, která vyžaduje bezplatnou registraci.
- Dokumentace pro Claire a WebClaire.
- "Úvod do programovacího jazyka CLAIRE verze 3.2 „Yves Caseau a François Laburthe.
- "CLAIRE: Kombinace sad, vyhledávání a pravidel pro lepší expresní algoritmy[trvalý mrtvý odkaz ]„Yves Caseau, François-Xavier Josset a François Laburthe (2002). 26stránkový přehled určený pro akademické publikum s referenčními hodnotami.