【入門】Common Lisp その11【質問よろず】
レス数が1000を超えています。これ以上書き込みはできません。
Lisp Schemeスレでは恥ずかしくて聞けないようなことを質問したり、
Lisp Schemeスレの話題は高度すぎて気後れする人が話しあったり。
それ以外でもCommon Lispについての話題なら歓迎します。
ま、ゆっくりやりましょう。
「いいものの本質は、いかなる時代においても変わらない」byパワーズ
■前スレ
【入門】Common Lisp その10【質問よろず】
http://peace.2ch.net/test/read.cgi/tech/1361341876/
■Wiki
http://wiki.fdiary.net/lisp/ (id:guest pass:cl)
http://cl.cddddr.org/
http://tips.lisp-users.org/common-lisp/ >>972
save-lisp-and-die
これって、規格に含まれてないの?
バイナリに固めて配布する気はない、
自分で書いたLispプログラムを実行ファイル形式にしたいだけだ。 解っている人にしか理解不可能な会話をされたら、
新参者はちんぷんかんぷんですね。 SBCLではデフォルトで固めて実行ファイルを作れるが、サイズが最低でも40MBほどになる
SBCLビルド持にオプションを追加すると、圧縮した実行ファイルを作れる
それだと10MB程度になるから、まぁ現実的なサイズかなと
ちなみに圧縮されてても一瞬で起動するからデメリットは全く無い save-lisp-and-dieはsbcl系だろうか、sb-ext:とかそんなパッケージプレフィックス付いてない?
eclだとsaveinitmemだとかその辺はてんでバラバラ
自分の環境で素早くロードして実行したいのならそれでベストだと思うよ、メモリをダンプしたのをそのまま読み込むだけだから
ただし全部入りだから、ファイルサイズに気を付けてね >>969
わざわざ有り難うございます。
リンク先を参照して勉強します。 >>976
コンパイラ毎に、バラバラだったんですね、
コンパイルして生成されるファイルは巨大ですね。 Common Lisperの7割以上が使ってると思われるSBCLの実行ファイルの作成に関して、具体的に書いた俺のレスは無視かよw
まともに聞く気が無いならもう来んなよ 老婆心だけど、プログラム事にコアイメージを量産するんじゃないぞ(違ったらごめん)
ライブラリや書いたコードの最適化コンパイル、実行時でなくてよい計算を済ませて、スクリプトを食わせる sbclなら常に関数をコンパイルしながら走るので、動的に関数生成するそこそこ規模ならお釣りが来るよ
実行時入力を与えて走らせればイメージが最適化されるので、そこをまたダンプ
熟成と呼んでる
パッケージマネージャ用に主なアーキテクチャ向けビルド作ってるけど、デバッガやrepl削るとffi関連のアップデートで泣く cl界隈はソース配布で自動ビルドがなかなか混沌としてるからな このスレ7年たつらしいけどLisp Schemeスレ一本に合流にして単独スレいらんのではないか
「いいものの本質は、いかなる時代においても変わらない」byパワーズのパワーズってなんなん? emacs lisp の方が実用化には成功しているのかも知れないぬ SBCL等のCommon-Lispでプログラムを作る際に、
ファイル若しくは画面にデバッグログを出力出来るライブラリの様なは無いのかな。
ググったり、Githubの中を探してたら、Log4CLってのを見つた。 いま、検索したら日本語で詳しく紹介してるブログを見つけました。
他にもロギングライブラリらしきものが存在するらしい。 transcriptって無かったっけ
そういうのじゃだめか >>989
dribble
正直開発時にログライブラリなんかいらんREPLある >>990
REPL上でログ出力しても結構使えますよ。
ログレベルが選べるのが良いですね。 ロガーとslimeが連携でもしてくれるのなら有用だと思うがそうじゃないならたいして使えるものではないな
コンパイラの警告,trace,breakはロガーライブラリを導入しなくても標準で使えるし,slimeと連携もする >>987
単に*debug/trace/error/standard...-output*へ自前のストリームをsetfすると画面への出力が食われるのかな?自前のreplはどう?色付けたり楽しいよ
(loop (funcall print-tee (funcall (eval (funcall read))))
print-teeで好きな標準ストリームをread-lineし、好きなところに書き込む
試してないので雰囲気だけ…(処理系のreplは裏で色々やってるので、それを元に改造するべき 一時期SBCL入れて入門していました。
取り敢えずチュートリアルサイトを途中までこなして、ふと(BASICで言う)ステートメントをダイレクト実行しかしていない事に気が付く。
しかもlistとかのダイレクトコマンド専門命令の説明がない。
ググって見付けたサイト覗いても、その辺りの説明がない。
いくら生まれが古くても、ここまで生き残った言語なら運用に不足がある訳ないのだけれど・・・。 >>996
> ステートメントをダイレクト実行しかしていない
これはreplでしかつかってないということなんだろうけど、
> しかもlistとかのダイレクトコマンド専門命令
これはなんのことなんだろう。 BASICがアマチュアプログラミングの標準だったのはかれこれ40年前ですよ・・・
LISPが古いのとは別次元で時代錯誤・・・ このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 2474日 11時間 53分 0秒 レス数が1000を超えています。これ以上書き込みはできません。