Obsah:
Definice - Co to znamená Clojure?
Clojure je dynamický programovací jazyk, který je dialektem nebo variantou programovacího jazyka Lisp. Je navržen tak, aby byl univerzální a kombinuje interaktivní vývoj a přístupnost skriptovacího jazyka s robustní a účinnou infrastrukturou používanou pro vícevláknové programování.
Je to také kompilovaný jazyk, který se kompiluje přímo do JVM bajtkódu a přitom zůstává zcela dynamický.
Techopedia vysvětluje Clojure
Clojure vyvinul Rich Hickey jako dialekt Lispa, který se přímo zaměřuje na Java Virtual Machine (JVM). Z tohoto důvodu sdílí filozofii code-as-data a výkonný makro systém Lisp. Je to převážně považováno za funkční programovací jazyk, který obsahuje sadu neměnných a perzistentních datových struktur.
Clojure má také softwarový transakční paměťový systém, je-li vyžadován mutabilní stav, a systém reaktivních agentů, který zajišťuje, že návrhy s více vlákny jsou správné a čisté.
Mezi funkce Clojure patří:
- Úzká integrace Java, kde jsou aplikace snadno zabaleny a nasazeny do JVM a dalších aplikačních serverů
- Funkce jsou považovány za prvotřídní objekty
- Dynamický vývoj se smyčkou čtení-eval-tisk
- Důraz je kladen na rekurzi a další funkce vyššího řádu na rozdíl od smyčky založené na vedlejších účincích
- Poskytuje neměnné a trvalé datové struktury, jako jsou hashmapy, seznamy a sady
- Systém agentů, dynamický systém var a softwarová transakční paměť umožňují současné programování
- Multimethods umožňují dynamické odesílání hodnot nebo typů argumentů
