Clojure
Clojure | |
---|---|
Paradigma | funktionaalinen |
Tyypitys | vahva, dynaaminen |
Yleinen suoritusmalli | käännettävä |
Muistinhallinta | roskienkeräys |
Julkaistu | 2007 |
Kehittäjä | Rich Hickey |
Vakaa versio | 1.10 |
Merkittävimmät toteutukset | Clojure, ClojureCLR, ClojureScript |
Vaikutteet | Common Lisp, Scheme, Erlang, Haskell, ML, Prolog, Java, Go |
Käyttöjärjestelmä | alustariippumaton |
Verkkosivu | clojure.org |
Uutisryhmä | Google Groups -ryhmä |
Clojure on funktionaalinen Lisp-murre. Rich Hickey julkaisi Clojuren ensimmäisen version vuonna 2007. Clojure on ensisijaisesti toteutettu Java-virtuaalikoneen päälle. Muita tuettuja alustoja ovat Microsoftin CLR sekä JavaScript.
Yleistä
[muokkaa | muokkaa wikitekstiä]Clojure on moderni Lisp-murre, joka painottaa funktionaalista ohjelmointityyliä. Clojuressa keskeisessä asemassa on identiteetin käsite ja sen yhteys arvoihin ja tilaan[1].
Clojuren merkittävä yksilöivä piirre Lisp-murteiden joukossa on sen tiivis symbioosi toteutusalustansa kanssa. Clojuren JVM-toteutus mahdollistaa olemassa olevan Java-koodin kutsumisen suoraan Clojure-koodista. Clojure-koodi käännetään Javan tavukoodiksi.
ClojureScript on Clojuren toteutus JavaScriptin päälle Google Closure Compiler -kääntäjää hyödyntäen. ClojureScript-koodi käännetään JavaScriptiksi, jota voidaan ajaa selainympäristöissä.
Nimi Clojure viittaa sulkeumaan.
Esimerkkejä
[muokkaa | muokkaa wikitekstiä](println "hello, world")
(defn factorial [n]
(reduce * (range 1 (inc n))))
Lähteet
[muokkaa | muokkaa wikitekstiä]Aiheesta muualla
[muokkaa | muokkaa wikitekstiä]
|