Lisp
(ql:system-apropos "lispbuilder") (ql:quickload :cocoahelper) To load "cocoahelper": Load 1 ASDF system: alexandria Install 4 Quicklisp releases: babel cffi lispbuilder trivial-features ; Fetching # ; 8.09KB ===============================…
http://d.hatena.ne.jp/fu7mu4/20130823/1377280191で書いたように正規表現のライブラリがいっぱいあったんだけど、パーサーもいっぱいあるみたい。たとえばこんなのとかそこで、smugってのがあったので説明やMonadic Parserをよんでいたら、これどこかで読…
Common Lispに cl-ppcre や cl-irregsexp の他にもいろいろと正規表現向けのライブラリがあることに遅ればせながら気がついた。pregexp は UNIX や Linux などの POSIX 系統の正規表現ができるらしい。また、Regexp は Scheme でも Common Lisp でも利用でき…
全く関係者ではないのだけれども、あとあとのために cl-irregsexp のメモを作成した。perl でいう正規表現の前方参照はどうやって書くんだろうか?
cl-irregsexpの開発ページにそう書いてあったんだけど、こうも書いてあった。 使わない理由ドキュメントがない いろいろ捜してみたんだけど、これくらいかなぁ。ここのひともソースから情報を引っ張ってきてるみたい。
svrefってのは、simple vector referenceで arefってのは、anything referenceなんだろうか?
quicklisp で (ql:quickload :cl-ppcre) した場合 実行形式をつくるには、どうするとスマートなんだろう。
subversion の verbose log (xml形式) をよんで、各ファイル毎にユーザーを集計するお手軽ツールをperlでつくった。 しかし、perlなどのスクリプトは、Windosでは使いにくいといういわれのない中傷をうけたので、cclで作りなおすことにした。一応par::packer…
スタックオーバーフローに Clozure CLでのバイナリ作成のやりかたが書いてあったのでメモ
気楽に開発していたい、とそう願っているわけで。 そうなると、開発環境は自ずと限られてくるわけですよ。
perl の while(<>)みたいなのは、 Common Lisp でどうやるんかなぁ。 こんな感じかな。 ;;; (defun cat-file ( file ) "write each line of that file" (with-open-file (s file :direction :input) (loop for line = (read-line s nil s) until (eq line s)…
最近更新されていないのですが、どなたかご存知ないでしょうか?
Alien の言語である、Common Lisp で久々にあそぶ。
処理系をいろいろ入れたので試してみた。ccl > sbcl > clispになりました。
quicklisp.lispをDownload において、macport の clozure lispにいれた。 そのメモ ccl64
めもです。1. ~/quicklisp/ 以下にはいる。 2. なんか失敗したけど、なんかいかやったらうまくいった。
ccl-1.8で make-arrayしたら初期値が0なんだけど? (setq table (make-array 5)) ;=> #(0 0 0 0 0) これって、nilじゃなかったっけ? #(nil nil nil nil nil)じゃなかったっけ? (setq table (make-array 5 :initial-element nil)) ; => #(nil nil nil nil n…
gensymって、無名変数ってよんでいいと思うんだけど、どうだろう。
tarai まわし関数を何回か動かしてみた。
AppStoreに Clozure Lispのアプリがあった。 測っていないが早そう。これはいいかもしれんと入れてみた。
どうも、たらい回しがよくわからないと言われたので、どうなっているのか説明してみるテスト。まず、遅延じゃない方向でしてみる (defun tarai (x y z) (if (<= x y) y (tarai (tarai (1- x) y z) (tarai (1- y) z x) (tarai (1- z) x y)))) を tarai(3 2 1)…
昨日の続きでたらい回しを続けてみました。ていうか、起きてからこんなことする正月ってどうかしているよ。
新年明けてからも、common lispで遊び倒すとか、なにしてるんでしょうか。*1 taraiまわしなどですよね。 *1:はやくも年賀状から戦線離脱ですよ!
lispはかなり大きな数が扱えるとかで、フィボナッチの関数で大きいものを出して遊んでいた。というかlispになれる練習をしていた。
eclで cとhがつくれるらしいので。やってみた。
しらべてみたがよくわからない。 (setq inferior-lisp-program "/opt/local/bun/clisp") (slime-setup '(slime-repl slime-asdf slime-fancy slime-banner) がだめだったんかな?? オプションを外したらうまく起動した。 (setq inferior-lisp-program "/opt/l…
今日は、お出かけして、靴とか本とか買ってみた。特にlisp関連の本を見つけてしまったので買わざるを得なかったのです。 もうしかたがないのでがばっと買っちゃいました。ここで買わないとfu7mu4としてどうかと後で悩むことになるからね。
M.Hiroi's Home Page
on lispは素晴らしい本ですが、ちょっと初心者が読むにはキツいので、合間にこれを読むことにした。実践Common lisp 著:Peter Seibel
The following installed ports are outdated: git-core 1.7.3.2_1 < 1.7.3.3_0 gtkmm 2.20.3_0 < 2.22.0_0 iso-codes 3.22_0 < 3.23_0 shared-mime-info 0.80_0 < 0.90_0 あれ? sudo port install sbcl でsbclがはいったよ?