2009-10-01から1ヶ月間の記事一覧

duck-streams

clojure.contrib.duck-streamにはファイル入出力用の便利な関数が定義されている。 ; 使用する関数を宣言 (use '[clojure.contrib.duck-streams :only (spit append-spit pwd)]) ; ファイルに文字列を出力する。 (spit "hello.txt", "こんにちは、世界!\n") …

(compile 'hoge.fuga)でコンパイルできない

Programming Clojureを読みながらclojureの勉強中である。hoge/fuga.cljをコンパイルしようと、 (compile 'hoge.fuga) を実行すると、ClassNotFoundException例外が発生した。 コンパイルしたいcljソースファイルと、コンパイルされたクラス出力ディレクトリ…

clj script

Windowsで、cljスクリプトの実行とREPL環境を実現するためのスクリプト。 JLineを使用し、カーソルキーの上下で過去の入力を再入力できる。参考URL: http://en.wikibooks.org/wiki/Clojure_Programming/Getting_Started各ライブラリのインストール先は以下の…

安定版(version1.0)のclojure, clojure-contribのビルド方法

Programming Clojureを読みながらClojureを勉強中であるが、 記載されていたClojureのビルド方法は古かった。 本ではsvnを使ってビルドしているが、現在はclojureとclojure-contribはgit管理(ホストはgit-hub)となっている。 version1.0のパッケージを作成す…

Programming Clojure

お昼休みに八重洲ブックセンターに寄って、 Programming Clojureを買いました。 なかなか面白そう。まずは、勉強がてら、指定したファイルの中身を出力するコードを書いてみよう。 Common Lispでは、こんな感じで書けるけど。 (defun cat (filename) (with-o…

NTEmacs23 + slime + clojure

NTEmacs23 + slime + clojure の開発環境構築手順メモ。 http://riddell.us/tutorial/slime_swank/slime_swank.html を参考に。環境: Vista, NTEmacs23, cygwinインストール済み homeディレクトリ: c:\home アプリインストール先: c:\home\opt clojure-mode,…

ncursesを使う

Common Lispにはcl-ncursesというncursesライブラリあり。まずはインストール。 (require 'asdf-install) (asdf-install:install 'cl-ncureses) 簡単なサンプルを作ってみる。sample1.lisp (asdf:oos 'asdf:load-op :cl-ncurses) (defun print-msg (y x msg)…