2010-02-01から1ヶ月間の記事一覧
人の名前を勝手に使うのも失礼な話ですが、ポール・グレアムの勉強会なのでポール・グレアム勉強会です。シェークスピア勉強会、レオナルド・ダ・ヴィンチ勉強会、ポール・グレアム勉強会、何もおかしくありません。参加は http://atnd.org/events/3340 から…
ニューラル・コンピューティング―理論と実際posted with amazlet at 10.03.11Philip D. Wasserman 森北出版 売り上げランキング: 784388Amazon.co.jp で詳細を見る数式が最低限で説明も直感的。一番分かりやすかった。自分みたいにさっと概要を掴みたいだけ…
Startup Ideas We'd Like to Fund The Request for Startups2008年から公開されているようだが知らなかった。未来への謎解きのように見える。現に今これで触れられているような面白いアイデアのスタートアップが続々と出ている。記事中の ”これは始まりに過…
ローカル関数のつもりで defn をネストさせても defn は動的にvarを作っているだけなので関数外からも見えてしまう。 user> (defn aaa [] (defn bbb [] 1) 1) #'user/aaa user> (aaa) 1 user> (bbb) 1 しかも遅い。 (defn aaa1 [] (defn bbb [] 1) 1) (defn …
*in* (System.io)からの入力を前提としてしまった関数(*in*がべた書きされている)があり、動作を見るために入力データをファイルから読み込みたい。綺麗なやり方は引数で入力先を渡してやることだが、関数のあちらこちらで入力を読み込んでいてそれを修正す…
リスト、ハッシュマップ、ベクタ、集合のリテラルがある ;リスト (1 2 3 4) ;ハッシュマップ {:a 1, :b 2, :c 3} ;ベクタ [1 2 3 4] ;集合 #{1 2 3 4} よく使う基本データ型のリテラルがあるというのはソースコードに図が入ってるみたいで考えるよりも早く理…
user=> ((fn [x] [x x]) 1) [1 1] user=> ((fn [x] {:a x}) 1) {:a 1} fn が ok なので #() でもいけそうだと思ったが user=> (#([% %]) 1) java.lang.IllegalArgumentException: Wrong number of args passed to: LazilyPersistentVector (NO_SOURCE_FILE:0…
初めて(set! (car p) 3)を見た時、違和感を覚えた人は多いと思う。(car p) は p の先頭部が指し示す値を返すのに、set! の引数に渡すと p 自体が書き変わってしまう。僕も最初に見た時は、引数の評価について何か勘違いをしていたんだと思った。 gosh> (defi…
(use 'clojure.contrib.test-is) (defn slice ([coll start] (let [start (max start 0)] (drop start coll))) ([coll start end] (let [start (max start 0)] (take (- end start) (drop start coll)))) {:doc "Extract a subsequencet like a slice of pyt…
こんなことでずっと悩んでた。apply str で解決。 user> (seq "abc") (\a \b \c) user> (str (seq "abc")) "(\\a \\b \\c)" user> (apply str (seq "abc")) "abc"
2010/5/6追記:ここの情報は古いので Ubuntu 10.04 での Clojure + Emacs + Leiningen の環境構築 を参照した方が良いと思います。 環境 Mac Snow leopard Carbon emacs 22.3.1まずここをそのままやれば emacsから使う事ができた。 http://riddell.us/tutori…