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

hash table操作めも

要素を引っ張り出すための関数&マクロのメモ。 ;; 適当なサンプルデータ CL-USER> (setq ht (make-hash-table)) #S(HASH-TABLE :TEST EXT:FASTHASH-EQL) CL-USER> (dolist (x (coerce "my lisp !" 'list)) (setf (gethash x ht) (char-code x)) ) loop マク…

Lispのくせに

ただのお遊び。 Common Lispのくせにリスト内包表記! CL-USER> [ x | x <- '(1 2 3 4) ] => (1 2 3 4) CL-USER> [ x | x <- '(1 2 3 4 5 6 7 8 9) (evenp x) ] => (2 4 6 8) ;; 条件を複数 CL-USER> [ x | x <- '(1 2 3 4 5 6 7 8 9) (evenp x) (< x 5) ] =…

そういえば挨拶書いてなかった気がする

あけましておめでとうございます!! 今年もよろしくお願いします!!2009年 元旦 + 137日

with-gensyms

clispのgen-symsマクロは、生成するシンボル名が第一引数で、gen-symsで生成されるシンボルが格納される変数名は、第二引数以降が該当するみたい。(defmacro (prefix &rest sym-names) &body body)みたいな、シグネチャーで定義されているみたい。 実践Commo…