見出し画像

ClojureScript大好き

みなさん このnoteをみつけてくれてありがとうございます。

ClojureScript使ったことありますか?ほとんどの人が無いと思います。とういか聞いたことすらないかもしれません。私はClojureScriptが大好きなのでここで紹介させてください。

ClojureScriptは、Clojure言語Javascriptへのコンパイラです。Clojure言語はもともとJava Virtual Machine(JVM)上で動く言語だったんですが、ClojureScriptが登場してJavascriptに変換できるようになり、Webブラウザ上でも動くようになりました。

Clojure言語は、LISP言語の方言の一つです。LISPって知ってますか。あのカッコ((()))ばっかりの言語です。ClojureもLISPに一種なのでカッコが多めでドン引きするかもしれません。Hello worldはこんな感じ。

(defn hello [name]
   (print (str "Hello " name "!")))
   
(hello "world") 
; => "Hello world!"

あとLISPの特徴に前置記法があります。足し算引き算はこうなります。

; 普通の言語では
; 1 + 1
(+ 1 1)

; 普通の言語では
; 1 + 2 + 3
(+ 1 2 3)

; 普通の言語では
; 1 + 2 - 3
(- (+ 1 2) 3)

このように、算数での書き方とちがい、演算子(オペレーター)を前に書きます。プラスやマイナスの演算子は数値を処理する関数と考えることができ、Hello Worldのときと同じように一番前に書きます。関数も演算子も同じように一番前に書く統一感に慣れてくると、スッキリします。Pythonでもsum(1,1)て書くか。

こんな感じで、一般的な言語とはすごく見た目がちがうClojureですが僕は大好きです。これからも、Clojure/ClojureScriptの楽しさを書いていこうと思います。

この記事が気に入ったらサポートをしてみませんか?