Hash λ Bye

Haskell, Clojure, MLなどの話

Clojure

duct-frameworkに定時起動ジョブを仕込む

ただのtips。みんな気付いているけどショボすぎて言わないことだ。 ductをREPLから起動・停止くらいはできる人に向けている。 それも解らないよーという人は、なんというか、なんでこの記事を読もうと思ったのか。 そういう人はこちらを読むと良いと思う。 C…

Clojure思ったより書けない問題

今日ちょっと仕事でデータの加工して集計する作業があったので、 加工スクリプトにClojure使おうとした。 結果、全然書けなくて愕然とした訳だけど、その理由を考えてみる。 ちなみにClojureは全く悪くない。僕が勉強不足だっただけ。 1. CIDER REPLとバッフ…

プログラミングClojureにおける「データ」とは何か

プログラミングClojureは僕が読んだ二冊目のClojureの本で、 Clojureがどんな機能を備えているのか、どんなパラダイムなのかを 教えてくれるとても良い本。 読み終わった今でも時々、「あそこどう書いてたっけな」と気になってはすぐに読み返してしまう。 し…

好きなプログラミング言語の好きなところについて思った

改めて最近実感すること。 Haskell, Elm, Clojureほんと好き。 Scala勉強しなきゃなーと思いながらClojureを触ってしまうことが多かったのだけれど、 その理由が少しずつわかってきた。 いい言語たち いままで少しだけ触れてきたJava, Python, Scala, Goはい…

Strongly static types, not for every task なのは何故なんだ

Clojure Rationale このページにこんな文があった。 Pure functional languages tend to strongly static types * Not for everyone, or every task 「静的型付けは全てのタスクに適しているわけではない。」 そのタスクとは何を想定しているのか、ここでは…

ClojureのS式になんでも書けるという話

S式という記法(?)はほんとになんでも書けると知った。 翌日追記: S式というかReaderがすごいっぽい。 例えば (def japanese '(式のなかに 日本語を書くと そのままシンボルになる)) とか (defn 二倍 [x] (* x 2)) とか書ける。 それにmutil line stringも (d…

Clojureでの副作用の表現について

自分が悩んでることを拙い語彙でぽつぽつ綴るので、誰にも伝わらないと思う。 DBアクセスする機能を実装したいとする。 java.jdbc を使ってDBアクセスレイヤを実装することになるのが普通かなと思う。 Clojureは関数型プログラミング言語なので、組み立てに…