Clojure閑話
最近全然プログラミング出来ていなくて書くこともないので,Clojureで気になるポイントや4Clojure.comの途中経過を書くことにする.
Easyでもちょっと大変になってきたが,あとは問題をこなしていくだけという感じもある.まだMediumに手を出していないが,頑張れば解けそう(だと思いたい).
Clojureプログラミングに関して
- アルゴリズムを当てはめる/再発明する/組み合わせる
このへんはLISPの哲学なりClojureの便利な機能を見ると納得する部分が多そうなので,あとでプログラミングClojureを読み返そうと思う.
4Clojureについて
- 人の解答を見ると非常に勉強になる
- ElementaryやEasyだと一つの関数で簡潔に書ける場合が多く,特殊な用途に用いる関数を知ってるかどうかみたいな問題もある
- 泥臭く解いてから他人の解答を見ると関数1つであっさり解いている場合もあり,様々な関数を知る良い機会になる
- 特殊な関数で簡潔に書いている解答を見て「それで書けるのね」で終わるのではなく,データ形式をどういう視点で観るかという裏の部分が大事
- 実際にコードをステップごとに動かして見て,データがどう変わっていくかを確認すると面白い
- 同じような泥臭いコード書いている人を見かけると親近感が湧く(良くない
Clojure歴がようやく1ヶ月になって,ちょっとはClojureのことが解ってきたかもしれない.関数型言語に慣れるのが精一杯で,最初のうちは問題を前にして全く手を付けられないということが多かったのだが,次第に取っ掛かりはつかめるようになってきた.最近では,ゴリ押しで書くか,それとも関数を組み合わせて綺麗に解くか...といった感じで色々と手札を眺めて考えるのが非常に楽しい.