2009-01-01から1年間の記事一覧

CLSQLでプリペアドステートメント

clsqlのプリペアドステートメントがうまくいかない。 (clsql-sys:with-database (con '("localhost" "test_user" "test_user" "p") :if-exists :old :database-type :postgresql-socket) (let ((stmt (clsql-sys:prepare-sql "update tb0 set data1=? where …

PostgreSQL導入

lispとrubyとpythonと その9 DBアクセス(common lisp) - テンポラリに書いたようにclsql+MySQLだとプリペアドステートメントが使えない。 でPostgreSQLに乗り換える。 しかし、PostgreSQLがさっぱり分からないので、一から調べないといけない。 メンドくさ…

lispとrubyとpythonと その9 DBアクセス(common lisp)

CommonLispでDBアクセスというとclsql。 いつもどおりasdfで入れて。。。と思ったが、依存関係があるのかうまく入らない。 DB関連だからしょうがないのかなぁと、Synapticパッケージマネージャで入れた。 DBはMySQLで。。。としてたんだけど、プリペアドステ…

MySqlあれこれ

LispでのDBアクセスを調べようと思ってMySQLにつないだらトランザクションが効いてない。 MySQLでテーブルを作るとデフォルトではMyISAMになって、トランザクションできないらしい。 あちこち調べて拾い読みする。既存のテーブルをInnoDBに変えるのはこれで…

lispとrubyとpythonと その8 ファイルIO(python)

PytyonでのIO。 with ... as を綺麗にかけるととるか不格好ととるか。。。 #確保と開放はwith ... as で。 with open("test.txt","w+") as f: f.write("hello world\n") with open("test.txt","r") as f: for l in f: print(l) #->hello world #バイナリファ…

lispとrubyとpythonと その4 Cライブラリの呼び出し(python) の追記

lispとrubyとpythonと その4 Cライブラリの呼び出し(python) - テンポラリにfgshunさんからコメントをもらったので試してみた。 呼び出しているcライブラリはこんどもlispとrubyとpythonと その4 Cライブラリの呼び出し(lisp) - テンポラリと同じもの。呼…

lispとrubyとpythonと その8 ファイルIO(ruby)

Rubyではこんな感じ。 pack、unpackがよく分からない。perlな人には馴染み深いのかなぁ。 # -*- coding: utf-8 -*- #テキストファイル書き込み def f0() f = File.open("./test.txt","a") begin f.write "hello world\n" ensure f.close end end #テキストフ…

lispとrubyとpythonと その8 ファイルIO(common lisp)

CommonLispでのファイルIOはこんな感じ。 一般的にはwith-xxxだけど、ファイル開きっぱなしの時とかはそうできない時もある。 (require 'cl-interpol) (cl-interpol:enable-interpol-syntax) ;;プリミティブなのはopen ;;まずはテキストファイル書き込み ;;:…

lispとrubyとpythonと その7 継続とFiberの続き(ruby)

継続ってスタックをどっかに保存しとくんだろうけど、じゃあ別スレッドの継続ってどうなるんだろ、と思って実験。 RuntimeError: continuation called across threads だって。 require 'continuation' puts "\n" $c1 = nil def test0(arg) printf "test0 be…

風雲児たち

幕末編の10巻まで読んだ。 面白いのにどこの本屋にも置いてないからアマゾンで買った。 はじめて読んだのは中学生のころ。

lispとrubyとpythonと その7 継続とFiber(rubyと少しだけlisp)

頭が継続脳になっていないためかもしれないけど、継続欲しいなー、、、と普段思うことはない。 でもまぁ継続があるのもrubyの特徴なのかなぁ、と思ったので書いてみる。 簡単な例。 require 'continuation' i = 0 c1 = nil callcc do|c| c1 = c end i = i + …

google notebook開発停止って

あちらこちらでちょっぴり話題にはなってますが。 google notebook開発停止だそうだ。まいった。 データは消えないけどアドインは使えなくなるってさ。 (データ消されたら暴動もんだ) どこからでも見れるメモ帳として結構いろんなことを書きためているので…

SBCLでスクリプト

親切な通りがかりの人(多分)からコメントが。結構前にCommonLispで何かを作る 4 SBCLでCGI - テンポラリにSBCLでシェバンスクリプトが書けないって書いてたんだけど、#!/usr/bin/sbcl --scriptでいけるんだそうだ。早速試す・・・。と、うまくいかない。 …

ティンカーベル

某映画批評サイトで高得点をとっていたってことで見てきた。 結構ガラガラ。子供ばっかりかと思ったらそうでもなかった。やっぱ長い映画になれちゃうと短い気がしてしまう。 もの足りないっていうか、もっと見たい。 映像は綺麗だし、雰囲気もいい。音楽もい…

lispとrubyとpythonと その7 デコレータ構文(pythonだけ)

python2.4から入ったデコレータ構文。 単純なシンタックスシュガーで動作も理解しやすいけど、色々使いどころはありそう。 面白い。 #デコレータ構文 #ここの説明が一番分かりやすかった #http://morchin.sakura.ne.jp/effective_python/decorator.html #C#…

lispとrubyとpythonと その7 パターンマッチ(common lispだけ)

rubyとpythonにはパターンマッチがないみたい。たぶん。 comon lispではcl-matchでいける。 asdfで入れたヤツだとletmatchがなんかヘン。 二文字だけいじったら動いたけどあってんのかな。 ;;パターンマッチ ;;cl-matchを使う ;;asdfで入れとくこと (require…

lispとrubyとpythonと その6 正規表現(python)

Pythonでの正規表現。 #reモジュールを使う import re #正規表現をコンパイル #r""でrawstringになって\が特別な意味を持たなくなる。 #正規表現を書くときにはこっちを使うと便利 #re.compileの引数で設定変更できる(大文字、小文字区別しないとか) rx = r…

lispとrubyとpythonと その6 正規表現(ruby)

Rubyでの正規表現。 # -*- coding: utf-8 -*- #正規表現リテラルは/で囲む #Regexp.new(...)でもいい rx = /(?<p>.*):\/\/(?<d>.*)\// target = "http://faroffsea.blogspot.com/" #matchの戻り値はMatchData captures = rx.match target #/(?<p>.*):\/\/(?<d>.*)\//.mat</d></p></d></p>…

lispとrubyとpythonと その6 正規表現(common lisp)

Common Lispでの正規表現。 cl-ppcreを使う。cl-interpolを入れとくと正規表現リテラルが使えるので、これも入れといた方がよい。 ;;正規表現はcl-ppcreで。 ;;asdfでインストールしておく ;;(require 'asdf) ;;(require 'asdf-install) ;;(asdf-install:ins…