(make-thread :name common-lisp :part 5)
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2008/07/12(土) 12:43:33lispを触ってみたい入門者のQ&A
初心者のQ&A
本スレでは恥ずかしくて聞けない人のQ&A
本スレは高度すぎて割り込めない人のQ&A
linuxでなくてwindowsでやりたいんですが・・・Q&A
lispを使用してC#やJAVAの代替にするための方法(おまけ)
ま、ゆっくりたりましょう。
「いいものの本質は、いかなる時代においても変わらない」byパワーズ
(list
(url http://pc8.2ch.net/test/read.cgi/tech/1101386936/l50 :part 1)
(url http://pc11.2ch.net/test/read.so/tech/1140012484/l50 :part 2)
(url http://pc11.2ch.net/test/read.so/tech/1181479267/l50 :part 3)
(url http://pc11.2ch.net/test/read.cgi/tech/1201402366/l50 :part 4))
0002デフォルトの名無しさん
2008/07/12(土) 12:45:26(SBCL: http://sbcl.sourceforge.net/
:プラットフォーム UNIX, Linux, Mac, Windows(移植中)
:開発 活発
:日本語 使える(UCS4, UTF8, EUC)
:特徴 一番お勧めのコンパイラ。)
(CLISP: http://clisp.cons.org/
:プラットフォーム UNIX, Linux, Mac, Windows
:開発 そこそこ活発
:日本語 使える
:特徴 バーチャルマシン。遅いがフットプリントが小さい。)
(CMUCL: http://www.cons.org/cmucl/
:プラットフォーム UNIX, Linux, Mac
:開発 そこそこ活発
:日本語 使えない(回避法有り)
:特徴 高速コンパイラ。SBCL の元になった。)
(Clozure CL: http://openmcl.clozure.com/index.html
:プラットフォーム PPC-Linux, Mac, x86_64-Linux と x86_64-FreeBSD に移植中
:開発 そこそこ活発
:日本語 使えない (pre ver 1.1なら多少扱える。)
:特徴 元々商用のコンパイラ。ネイティブスレッドが使える。))
0003デフォルトの名無しさん
2008/07/12(土) 12:46:04(Allegro: http://jp.franz.com/index.html
:プラットフォーム Windows ,Mac OS X , Freeを含む各種UNIX
:開発 ほとんど本陣
:日本語 使える(内部UTF16,外部 プラットフォーム毎)
:特徴 お高いがもっとも頼れる。申し込みが必要だがFree Express Editionあり )
(LispWorkss: http://www.lispworks.com/downloads/index.html
:プラットフォーム Windows ,Mac OS X
:開発 半年にいっぺんくらいアップデート
:日本語 使えるみたい(完全に対応しているかはちとわかりかねまする)
:特徴 IDEベースです、フリー版はconsセルの上限が来るとダイアログがでてしまいます、SDLとかで遊ぶとすぐに引っかかります ))
((その他)
(ABCL: http://armedbear-j.sourceforge.net/
:特徴 JavaVM 上で動く。JavaVM のバイトコードを生成。)
(GCL: http://www.gnu.org/software/gcl/
:特徴 日本発 Kyoto Common Lisp の直系。)
(ECL: http://ecls.sourceforge.net/
:特徴 Lisp->C コンパイラ。組み込み可能らしい。こちらもKCLの系譜))
0004デフォルトの名無しさん
2008/07/12(土) 12:47:33http://www.lisp.org/HyperSpec/FrontMatter/index.html
http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/html/cltl/cltl2.html
http://lispdoc.com/
日本語のチュートリアル
ttp://web.sfc.keio.ac.jp/~t02064si/lisp2005/
ttp://www.h7.dion.ne.jp/~matsu/feature/common-lisp/index.html
ttp://www.geocities.jp/m_hiroi/xyzzy_lisp.html
ttp://home.soka.ac.jp/~unemi/LispProlog/
ttp://www.haun.org/kent/lisp1/
ttp://wisdom.sakura.ne.jp/programming/lisp/index.html
ttp://www-kasm.nii.ac.jp/~takeda/lectures03/titech/ai1/Text/CL.txt
0005デフォルトの名無しさん
2008/07/12(土) 12:57:16(和文)
ttp://www.geocities.co.jp/SiliconValley-SanJose/7474/index.html
ttp://www.geocities.co.jp/SiliconValley-Cupertino/2478/root-sect-2.html
ttp://lispuser.net
(英文)
http://wiki.alu.org:80/
http://www.cl-user.net
http://www.common-lisp.net
http://planet.lisp.org/
http://groups.google.co.jp/group/comp.lang.lisp
http://www.cliki.net/index
http://cl-cookbook.sourceforge.net/
http://www.gigamonkeys.com/book/
( http://www.apress.com/free/ よりpdf版が入手可能)
http://www.psg.com/~dlamkins/sl/cover.html
http://www.cs.cmu.edu/~dst/LispBook/index.html
その他の情報
http://ja.wikipedia.org/wiki/Common_Lisp
0006デフォルトの名無しさん
2008/07/12(土) 12:59:00(POPLOG: http://www.cs.bham.ac.uk/research/poplog/freepoplog.html
Lisp, Prolog, ML のコンパイラ)
(WCL: http://wcl.kontiki.com/
Shared Library として使える Lisp)
(Movitz: http://common-lisp.net/project/movitz/movitz.html
フルスクラッチの Lisp OS)
(CADR LispM: http://www.heeltoe.com/retro/mit/mit_cadr_lmss.html
MIT で使われていた LispM のソースを公開したもの))
((その他のリンク
(lush: http://lush.sourceforge.net/
Lisp Universal Shell)
(Meme channels: http://meme.b9.com/start.html
Lisp の IRC Log)
(Paul Graham の ANSI Common Lisp:
http://www.pearsoned.co.jp/hed/search/onlinecatalog.html?id=276
Common Lisp の 参考書を探しているならこれ一択))
0007デフォルトの名無しさん
2008/07/12(土) 17:17:57http://wiki.fdiary.net/lisp/?%A5%C6%A5%F3%A5%D7%A5%EC
0008デフォルトの名無しさん
2008/07/12(土) 17:29:44自由に編集してください。
id:guest password:cl
です。ブログを持っていないけどインストールログをメモして起きたいと
いう用途に使っていただいてもOKです。lispに関するものでしたら、ご自由に
ページを作成してください。
0009デフォルトの名無しさん
2008/07/12(土) 22:29:14The variable COMMON-LISP is unbound.
0010デフォルトの名無しさん
2008/07/12(土) 22:37:13失敗したが、そこはマクロを被したということでごまかしておく (^^〃)
0011デフォルトの名無しさん
2008/07/14(月) 09:00:54どういうマクロ?
0012デフォルトの名無しさん
2008/07/14(月) 12:11:26(defmacro make-thread (&key name part)
`(make-thread# :name ',name :part ,part))
0013デフォルトの名無しさん
2008/07/15(火) 12:14:59返してくれる関数を作りたいのですが、これを作成するには
OnLispの非決定性を導入するしか無いのでしょうか?
そこまでの力量が有る自信が無いので他に方法が有ればご教授願います。
0014デフォルトの名無しさん
2008/07/15(火) 14:39:060015デフォルトの名無しさん
2008/07/15(火) 14:43:480016デフォルトの名無しさん
2008/07/15(火) 14:46:210017デフォルトの名無しさん
2008/07/15(火) 15:32:57すいません。
わかりづらい書き方をしてしまいました。
(numlist '(1 2 3 4 5) 2 7)
の様にすると
(3 4)または(2 5)と返してくれるような関数が作りたいのですが
どのようにすれば良いのかと思いまして。
0018デフォルトの名無しさん
2008/07/15(火) 16:28:13クオリティを下げるくらいなら、若干の延期でも構わん。
ただ、延期のアナウンスだけはしてほしいな。
0019デフォルトの名無しさん
2008/07/15(火) 16:46:157/27(sun)にケテーイ
0020デフォルトの名無しさん
2008/07/15(火) 16:47:07>>15は>>16へのレス
0021デフォルトの名無しさん
2008/07/15(火) 16:54:06どこで知った?
0022デフォルトの名無しさん
2008/07/15(火) 17:12:280023デフォルトの名無しさん
2008/07/15(火) 17:27:33エスパるけど、
(namelist list size total)かな?
0024デフォルトの名無しさん
2008/07/15(火) 17:51:51決して綺麗じゃないが
(defun @numlist@ (list size total return)
(if (eql size 1)
(let ((found (list (find total list))))
(and (car found) (append return found)))
(loop for ( i . j ) on list do
(let ((answer (@numlist@ j
(1- size)
(- total i)
(append return (list i)))))
(if answer (return answer))))))
(defun numlist (list size total)
(@numlist@ list size total nil))
0025デフォルトの名無しさん
2008/07/15(火) 18:29:100026デフォルトの名無しさん
2008/07/15(火) 19:02:27ありがとうございます。有難いです。
OnLispを読んでいるのですが、そこの非決定性の章で
簡単に実装していたので非決定性を実装しなければ成らないかと
思っていたのですが、継続などにも自信が無いので何か方法がないかと
思っていたのです。
ありがとうございました。
精進したいと思います。
0027デフォルトの名無しさん
2008/07/15(火) 23:22:39たしか翻訳している人が二人いたよね。
0028デフォルトの名無しさん
2008/07/15(火) 23:39:060029デフォルトの名無しさん
2008/07/15(火) 23:40:400030デフォルトの名無しさん
2008/07/16(水) 13:43:31Amazonで確かめれば分かるよ。
0031デフォルトの名無しさん
2008/07/16(水) 17:01:00この場合どうやってインストールすればいいのか誰か教えてください
0032デフォルトの名無しさん
2008/07/16(水) 19:06:19このへんでSchemeで非決定性をやってるね。
http://pc11.2ch.net/test/read.cgi/tech/1211381920/1-110
Common Lispに直すのを簡単な練習問題と思ってやってみれば?
典型的な失敗例もあるしw
0033デフォルトの名無しさん
2008/07/16(水) 20:11:54を判断する関数は無いでしょうか?
>x としたときに何か値が返るか(nilも含む)
>x
*** - EVAL: variable AOIMONO has no value
と表示されてしまうかどうかを判断できるような関数は無いでしょうか?
よろしくお願いします。
003433
2008/07/16(水) 20:12:41*** - EVAL: variable X has no value
です
よろしくお願いします。
0035デフォルトの名無しさん
2008/07/16(水) 20:14:140036デフォルトの名無しさん
2008/07/16(水) 21:08:59> CommonLispでその言葉に何かが設定されているかどうか
言葉→シンボル、設定→束縛、ね。
この辺の用語は、検索して何かを調べるときに結構大事だから、ちゃんと覚えておいたほうがいい。
0037デフォルトの名無しさん
2008/07/16(水) 22:53:391]> ;; Loading file /usr/share/common-lisp/source/slime/swank-loader.lisp ...
*** - READ from #<INPUT BUFFERED FILE-STREAM CHARACTER #P"/usr/share/common-lisp/source/slime/swank-loader.lisp" @134>: there is no package with name "CLC"
The following restarts are available:
ABORT :R1 Abort main loop
となってとまってしまいました.clispのversionは2.46です.
最新バージョンを自分でコンパイルして入れたらこうなってしまいました
どなたか助言を...
0038デフォルトの名無しさん
2008/07/16(水) 23:04:16素人なんで自重してパッケージになってるのを使う事にした。
003937
2008/07/16(水) 23:12:50なんかいじってたら動きましたw
004038
2008/07/16(水) 23:41:300041デフォルトの名無しさん
2008/07/17(木) 00:59:40よろしくお願いします
0042デフォルトの名無しさん
2008/07/17(木) 01:01:05)
NIL
CL-USER> (format t "\")\"")
")"
NIL
0043デフォルトの名無しさん
2008/07/17(木) 04:17:29あなたのブログを発見してしまった。藁
漏れもclispのffiコンパイルの不具合はあってこまっとる。
0044デフォルトの名無しさん
2008/07/17(木) 14:12:32(random x)だと答えが疑似乱数なのでxの値が同じだと
同じ順番で回答がかえってきてしまいます。
これを完全にばらつきが有るようにするにはどうすれば良いのでしょうか
一つ思いついたのですが
(random ((car (multiple-value-list (get-decoded-time))))
とすれば秒を基本としているのである程度ばらつきが有ると思ったのですが
どうでしょうか?
よろしくお願いします。
0045デフォルトの名無しさん
2008/07/17(木) 17:09:40(loop repeat (get-internal-run-time) do
(setf *random-state* (make-random-state t)))
0046デフォルトの名無しさん
2008/07/17(木) 17:50:360047デフォルトの名無しさん
2008/07/17(木) 19:46:11Lispってわかりにくいな、と感じたのですが、
慣れれば他の言語と同じくらい読めますか?
0048デフォルトの名無しさん
2008/07/17(木) 21:35:01僕は簡単に読めていますよ。
むしろJavaとかの方がごちゃごちゃしていて読みづらいと感じました。
ですが確かに適切なインデントのできていないソースコードは大変です。
ですが、それは他の言語も同様だと思います。
すいません
(setq x (read))
としてxにkotobaなどを代入したときに
xを使ってkotobaに値を代入する事はできないでしょうか
xに言葉を代入→代入された言葉に値を代入と言う作業をしたいのです。
(format t "言葉:")
(setq x (read)) ;;これでxに言葉が代入される。(例えばringo)
その後ringoにリストを代入したい場合
(setq x(ringoに置き換え) '(a b c))
とやってringo='(a b c)と成るようにできないでしょうか
0049デフォルトの名無しさん
2008/07/17(木) 22:00:320050デフォルトの名無しさん
2008/07/17(木) 22:06:46(setf (symbol-value x) '(a b c))
0051デフォルトの名無しさん
2008/07/17(木) 22:30:25(set x '(a b c))
005248
2008/07/17(木) 23:46:08ありがとうございます
参考にして
(defun make-group (x y)
(if (boundp x)
(setq x (append x y))
(progn (setq x nil) (setq x (append x y)))))
(format t "何か知りたいな:")
(setq kotoba (read))
(format t "それは何?:")
(setq group (read))
(eval `(make-group ,group '(,kotoba)))
とやってみたのですが
*** - EVAL: variable KUDAMONO has no value (group にはkudamonoを入れました)
と成ってしまいます。
どのようにすれば良いか教えて頂けないでしょうかよろしくお願いします。
行いたい処理はgroupに何か束縛されていればkotobaをリストに追加
束縛されていなければ普通に代入としたいのでmake-groupと言う関数を作ってみました。
よろしくお願いします。
0053デフォルトの名無しさん
2008/07/18(金) 00:08:00仕様をもっと分かりやすく書いて。
0054デフォルトの名無しさん
2008/07/18(金) 00:19:38君はJavaの方が向いている。
無理しなくておけ。
0055デフォルトの名無しさん
2008/07/18(金) 00:57:31(defun make-group (&aux kotoba group)
(format t "何か知りたいな:")
(force-output)
(setq kotoba (read))
(format t "それは何?:")
(force-output)
(setq group (read))
(let ((l (gethash group table)))
(setf (gethash group table) (cons kotoba l))))
> (make-group)
何か知りたいな:ringo
それは何?:kudamono
(ringo)
> (gethash 'kudamono table)
(ringo)
t
0056デフォルトの名無しさん
2008/07/18(金) 02:10:49(cond ((boundp x) (set x (append (eval x) y)))
(t (set x y))))
(format t "何か知りたいな:")
(setq kotoba (read))
(format t "それは何?:")
(setq group (read))
(make-group group (list kotoba))
(format t "group=~s~%" group)
(format t "evalgroup=~s~%" (eval group))
たぶんこんな感じのことがしたいのだと予想
どうでもいいけど関数(サブルーチン)の中で破壊的に書き換えするのは趣味じゃないなぁ
関数は値だけを返してメインでその値を使って代入なりなんなりする方がいいと思う
0057デフォルトの名無しさん
2008/07/18(金) 12:14:51それならハッシュテーブルを複製してから書き換えれば元のデータが残る。
関数プログラミングはアロケーションが増える覚悟でやらないと。
005852
2008/07/18(金) 17:27:56まだ慣れていないものでどのように書けば
良いのか解らないもので
言葉を入力して貰いその言葉がどのような
集合に属するのか入力してもらい
集合が出来ていなかったら新たに作り
入力してもらった言葉を入れて
集合が出来ていたらリストの先頭に追加する
という処理をしたかったのです
Lispに慣れていないので、手続き型言語脳で
プログラムを書いてしまうのですが
どのようにするのがベストでしょうか?
よろしくお願いします。
0059デフォルトの名無しさん
2008/07/18(金) 18:46:400060デフォルトの名無しさん
2008/07/18(金) 19:31:24メインでgroupdataって変数を作ってそこにgroupとkotobaの連想リストをつっこんでみた
(defun make-group1 (x y)
(setq groupdata (acons x (cons y (cdr (assoc x groupdata))) groupdata))
)
(setq groupdata nil)
(make-group1 group kotoba)
でもこれだとgroupdataを別の名前にしたらサブルーチンも書き直さなきゃならいよね
て訳で変数の書き換えはメインにまかすようにすると
(defun make-group2 (gd x y)
(acons x (cons y (cdr (assoc x gd))) gd)
)
(setq groupdata nil)
(setq groupdata (make-group2 groupdata group kotoba))
メインでいちいちsetq書くのが面倒くさいならマクロ使って
(defmacro make-group3 (gd x y)
`(setq ,gd (acons ,x (cons ,y (cdr (assoc ,x ,gd))) ,gd))
)
(setq groupdata nil)
(make-group3 groupdata group kotoba)
関数の中からめたらやったらグローバル変数をいじるのはあんまりしない方がいいと俺は思うんだ
いや別に駄目とは言わないけど、他に変な影響を与えたくないからね
0061デフォルトの名無しさん
2008/07/18(金) 20:34:32間違いではないが、なんかすごいことになってるな
0062デフォルトの名無しさん
2008/07/18(金) 21:01:27006352
2008/07/18(金) 21:04:30Lispを始めてみたところで
人工知能のための言語と噂されたこともある
言語なのだから人工無能を作れるのではないだろうか
と思って人工無能をつくろうとしてました。
そのために言葉のデータベースを作るための関数を作ろうとしてました
0064デフォルトの名無しさん
2008/07/18(金) 22:15:49aconsされる側のgdにremove-ifでも使って前のデータから古いキーのやつを消せばいいけど
面倒くさいんで手抜きしてましたw
(defun removedata (key data)
(remove-if #'(lambda (x) (equal (car x) key)) data)
)
気になるならこれでもつっこんどいてw
(defun make-group2 (gd x y)
(acons x (cons y (cdr (assoc x gd))) (removedata x gd))
)
こんな感じで
0065デフォルトの名無しさん
2008/07/18(金) 23:14:27手抜きは悪いことじゃないよ。ハッカーは怠惰だというしね。
でも手抜きするなら破壊的でいいじゃんって思った。好みの問題かな。
0066デフォルトの名無しさん
2008/07/19(土) 09:22:03する事に決めたわけだけど、他人にLISPで話すときは共通の語彙を使おう)
をデータベースがわりにするというとこんなんでだろうだろう?
(defun message-read (message)
(format t "~A" message)
(finish-output)
(read))
(defun select-item (symbol)
(let* ((lst (symbol-value symbol))
(n (random (length lst))))
(nth n lst)))
(defun input-database ()
(let* ((symbol (message-read "何か知りたいな:"))
(what (message-read "それは何?:")))
(unless (boundp symbol)
(setf (symbol-value symbol) nil))
(pushnew what (symbol-value symbol))))
(defun query-database ()
(let ((symbol (message-read "何がしりたい:")))
(if (boundp symbol)
(format t "~Aは~Aのことだよ~%" symbol (select-item symbol))
(format t "~Aは知りません~%" symbol))))
0067デフォルトの名無しさん
2008/07/19(土) 09:27:54cc -Llibdir -llibname や
emacs lisp の load-path みたいに、
他の directory に置いたライブラリをロードする、
良くやる手を教えてください。
0068デフォルトの名無しさん
2008/07/19(土) 09:58:400) asdf.lisp をロード (SBCLみたいに標準でついてくるものもある)
1) asdf:*central-registry* に .asd を集めるディレクトリを設定する (~/lisp/asd)
2) 好みのディレクトリにライブラリ名のディレクトリをつくって溜めていく。(例えば、~/lisp/lib/ライブラリ名)
3) あとは、~/lisp/lib/ライブラリ名/ライブラリ名.asd を ~/lisp/asd/ライブラリ名.asd にシンボリックリンクする
あとは (asdf:oos 'load-op ライブラリ名) でロードしてます。
頻繁につかう、かつ、更新が頻繁じゃないライブラリはイメージに取り込んでしまいます。
0069デフォルトの名無しさん
2008/07/19(土) 10:18:12よくありそうな質問をwikiでまとめておこうと思うので
よくありそうな質問と(回答ができそうな人は回答を)
書いてくれませんか?質問と回答のフォーマットは
一応決めてあります。
http://wiki.fdiary.net/lisp/?FAQ (id:guest pass:cl)
007067
2008/07/19(土) 12:49:13>>68 ログインして Edit までしたのですが、FAQ のページにどうやって追加していいのか。と言うか、書き込む勇気が、、、
0072デフォルトの名無しさん
2008/07/19(土) 17:18:30気楽に追加してください。
fdiaryはmatz lispで作られたサイトなんですが、時々書き込めなかったり
重くて読み込めなかったりします。matz lispにはもう少し頑張ってほしい。
0073デフォルトの名無しさん
2008/07/19(土) 17:23:24の方が良かったんじゃないか?
難民が出ているみたいだが。
0074デフォルトの名無しさん
2008/07/19(土) 17:27:490075デフォルトの名無しさん
2008/07/19(土) 17:47:25(make-thread :name "Common Lisp" :part 5 :入門 :ok)
0076デフォルトの名無しさん
2008/07/19(土) 17:57:06こんなとこでオナニーすんなよ
007775
2008/07/19(土) 18:05:240078デフォルトの名無しさん
2008/07/19(土) 18:07:35つまんないやつは相手にする必要はないよ。
>>73 >>75
スレタイは行きすぎたかも。次スレのときにいい名前になればいいね。
0079デフォルトの名無しさん
2008/07/19(土) 18:11:28いきなりS式ってもの入門者を拒絶してる(むしろS式が気持ち悪いと言われてる?)ように見えるのかもしれん。
0080デフォルトの名無しさん
2008/07/19(土) 18:45:15find.2ch.netの検索は引っかかるよ。
0081デフォルトの名無しさん
2008/07/19(土) 18:53:220082デフォルトの名無しさん
2008/07/19(土) 19:34:54>>76は入門という語を嫌ってるんじゃなく
(make...ってスレタイのほうを嫌ってるんじゃないか?
俺みたいなのには入門ついてるスレもあったほうが嬉しいが
スレタイで不必要にわかりにくくする必要はないと思う
0083デフォルトの名無しさん
2008/07/19(土) 20:24:30マジで>>75ぐらいで留めてくれ。探せない。今回はScheme Lispスレから辿れたけど。
0084デフォルトの名無しさん
2008/07/19(土) 20:37:59検索するツールをLispで書けばいいと思うよ。
0085デフォルトの名無しさん
2008/07/19(土) 20:48:20タブ表示がこんな感じになっちゃってる
Debian GNU... | Lisp Schem... | (make-thre... |
以前のスレタイに戻して欲しいに一票
0086デフォルトの名無しさん
2008/07/19(土) 21:28:43これを機会に、これまでのほうがよいと思うなら積極的に
スレ作りに協力して欲しい。
0087デフォルトの名無しさん
2008/07/19(土) 21:51:180088デフォルトの名無しさん
2008/07/19(土) 23:10:56それは違うな。他人任せを積極的とは言わない。
0089デフォルトの名無しさん
2008/07/19(土) 23:14:38金か?w
0090デフォルトの名無しさん
2008/07/19(土) 23:16:050091デフォルトの名無しさん
2008/07/19(土) 23:22:48作って、スレにアナウンスする。
これが積極的なスレへの協力だろ?
0092デフォルトの名無しさん
2008/07/19(土) 23:28:040093デフォルトの名無しさん
2008/07/19(土) 23:37:050094デフォルトの名無しさん
2008/07/19(土) 23:41:33それともmake-threadは関数でないのか? とか微妙
0095デフォルトの名無しさん
2008/07/20(日) 01:58:39スレタイとしての「使い勝手」の悪さと引き替えには遊ばないで欲しい。
0096デフォルトの名無しさん
2008/07/20(日) 02:00:590097デフォルトの名無しさん
2008/07/20(日) 03:36:490
0098デフォルトの名無しさん
2008/07/20(日) 04:16:00スレタイを良くしたいならもう少しアクティブな住人が多くないと>>1もみんなの意向がわからないし。
0099デフォルトの名無しさん
2008/07/20(日) 06:39:48んな事したら不毛なスレ建て合戦になるだろうが。
0100デフォルトの名無しさん
2008/07/20(日) 11:49:07スレタイ変更→次スレで元に戻らず→数ヵ月後俺が地味なスレタイに戻す→大混乱
0101デフォルトの名無しさん
2008/07/20(日) 12:19:19俺の使っているエディタにはインテリセンスがない。
0102デフォルトの名無しさん
2008/07/20(日) 12:32:20うまいこと言ったつもりか?w
0103デフォルトの名無しさん
2008/07/20(日) 13:05:370104デフォルトの名無しさん
2008/07/20(日) 13:08:19これはうまい
0105デフォルトの名無しさん
2008/07/20(日) 13:08:59なんというあからさまな自作自演
0106デフォルトの名無しさん
2008/07/20(日) 13:28:50お前それは急ぎすぎだ
0107デフォルトの名無しさん
2008/07/20(日) 15:46:13でもおれは最近Lisp使えてないけど…
泥粘土で遊びながら考えたいよ。
0108デフォルトの名無しさん
2008/07/20(日) 16:37:110109デフォルトの名無しさん
2008/07/20(日) 17:39:220110デフォルトの名無しさん
2008/07/21(月) 02:42:50地獄Lispってサイトってなに?
地獄Schemeってサイトも有るんだけど・・
なんか恐い感じで開けていない
0111デフォルトの名無しさん
2008/07/21(月) 03:15:25こっちのスレに作者の人がいるから、直接聞いてみるのがいいと思う。
【魔法】リリカル☆Lisp【言語】
http://pc11.2ch.net/test/read.cgi/tech/1183396621/
0112デフォルトの名無しさん
2008/07/21(月) 10:13:41ttp://ja.wikipedia.org/wiki/%E5%9C%B0%E7%8D%84%E5%B0%91%E5%A5%B3
これにひっかけた名前
0113デフォルトの名無しさん
2008/07/21(月) 13:20:32良かったです。
ありがとうございました。
0114デフォルトの名無しさん
2008/07/21(月) 15:53:03とりあえず、テンプレWikiに入門スレの自分の持っている過去ログへの
リンクを貼りました。
たぶん1〜3スレは不完全なので、訂正できる方はお願いします。
Janeのログを上げてもらえれば、私が差し替えます。
0115デフォルトの名無しさん
2008/07/21(月) 23:14:07できるよ。エディットの下にattemptがあるので
0116デフォルトの名無しさん
2008/07/21(月) 23:41:40そこでエラーが出て添付出来なかったんです。
使い方がマズかったかな。
また試してみます。
0117デフォルトの名無しさん
2008/07/22(火) 00:20:32確認しました。fdiaryの管理人にお願いしておきました。しばらくすれば使えるようになる
と思います。http://wiki.fdiary.net/about/?bbs2 で確認してみてください。
0118デフォルトの名無しさん
2008/07/22(火) 00:52:55確認ありがとうございます。
0119デフォルトの名無しさん
2008/07/22(火) 01:21:240120デフォルトの名無しさん
2008/07/22(火) 20:02:53CommonLispでプログラミングをしている中で、
作ったプログラムは関数を定義したファイルを作成しておいて
毎回それをインタプリタにロードして関数を使うのが王道なのでしょうか?
私はプログラミングのときには、
関数をファイルの先頭の方で定義しておいて
後半でUIの部分つまり
(format t "x:")
(setq x (read))・・・・
などとして
ファイルの一行目に#!・・・(インタプリタの場所)
を書き込んで使っています。(つまりユーザーはインタプリタを目にしないで良いようになっている)
これは不純な方法でしょうか?
すこし自分のプログラミングスタイルに疑問を感じてきたのでよろしくお願いします。
0121デフォルトの名無しさん
2008/07/22(火) 20:51:43ライブラリとして管理したければ、別ファイルにして読み込めばいい。
必要になってからでも遅くない。
0122デフォルトの名無しさん
2008/07/22(火) 21:10:370123デフォルトの名無しさん
2008/07/22(火) 22:30:08別途もってこないとダメなものもある。単純な比較なら標準のTIMEマクロでも結構便利だよ。
0124デフォルトの名無しさん
2008/07/22(火) 22:52:200125デフォルトの名無しさん
2008/07/23(水) 00:01:53イメージ生成後にそれを起動する手順なら処理系依存としか言えない。
ポーティング先の都合ってのもあるから。
0126デフォルトの名無しさん
2008/07/23(水) 23:27:51共有設定がなされてるでしょうか?よろしければご確認を。
http://help.yahoo.co.jp/help/jp/bc/bc-19.html
http://help.yahoo.co.jp/help/jp/bc/bc-22.html
0127デフォルトの名無しさん
2008/07/24(木) 01:49:59報告どもです。
Lisp schemスレはまとめて同じフォルダに入れてるんで、
共有設定のミスではないです。
ミスなら全部見れなくなるはずです。
たぶん、時間かアクセス数でURLが変わるんだと…
ファイル置き場変えながら、直しておきます。
0128デフォルトの名無しさん
2008/07/24(木) 17:39:47問題点、改善案など、何かアドバイスをもらえないでしょうか?
動作確認はxyzzyとclispで行いました。
●実現したいこと
ファイルから特定の行を抽出し、その行のみ新たにファイルへ書き出す。
動作確認がしやすいように、行の位置は変えないようにする。
●自分でおかしいと思ってる点
・1行ずつ読み込んでる力ワザ
・progn 使いすぎ?
・引数に nil が使われないように'(10000)を lst にバインドしている所
・行の指定が昇順でなければならない所
(progn
(setq str1 (open "in.txt"))
(setq str2 (open "out.txt" :direction :output))
(setq eos (cons nil nil))
(setq lst '(10 30 400)) ;取り出したい行をリストで指定、必ず昇順
(defun kakikaki (x)
(setq str0 (read-line str1 nil eos))
(cond ((eq str0 eos) (princ "STOP"))
((< x (car lst)) (progn (format str2 "~%" )
(kakikaki (+ 1 x))))
((not (eq str0 eos)) (progn (format str2 "~a~%" str0)
(setq lst (cdr lst))
(and (not lst) (setq lst (list 10000)))
(kakikaki (+ 1 x))))
(t "END")))
(kakikaki 1)
(close str1)
(close str2)
)
よろしくお願いします。
0129デフォルトの名無しさん
2008/07/24(木) 17:58:17行数はsort関数を使えば自由に入力できるように成ると思う。
0130デフォルトの名無しさん
2008/07/24(木) 18:03:53・名前が異常 str0 str1 kakikaki・・ アホか
・破綻したロジック
>・引数に nil が使われないように'(10000)を lst にバインドしている
意味不明。10000行目は必ず出力するってことか?
0132デフォルトの名無しさん
2008/07/24(木) 19:12:060133デフォルトの名無しさん
2008/07/24(木) 19:23:400134128
2008/07/24(木) 21:00:52ありがとうございます。
sort関数で昇順に並べ変えられそうです。
>>130
>名前が異常 str0 str1 kakikaki・・ アホか
これはプログラミングのマナーに反しているということでしょうか?
良かったら、マナーに則った命名を教えてください。
>>破綻したロジック
>>・引数に nil が使われないように'(10000)を lst にバインドしている
>意味不明。10000行目は必ず出力するってことか?
関数に nil を渡さないようにしたいのですが、上手いやり方が分かりませんでした。
そこでこのプログラムを使うつもりのファイルにはありえない行数を使い、
ファイルの終端まで入力を続けるようにしました。
>>131
>最初と最後を結んでるprognは何のため?
xyzzy の lisp-interaction-mode で Ctr-J 一回で動作させるには?
と、考えて書きました。どうもかなりマズイんですね。
>>132
>prognん中にdefun入れて良かったんだっけか
良いかどうか、考えずにやってしまいました。
>>133
>釣りなのか本気なのか判断に迷う
本気です。
初心者対象のスレだと >>1 にあったので、投稿しました。
プログラム経験は fortran で数値計算の入門を経験した程度です。
他に相応しいスレがあれば誘導をお願いします。
0135デフォルトの名無しさん
2008/07/24(木) 22:01:25まあ焦らないことだな
http://www.geocities.jp/m_hiroi/xyzzy_lisp.html
基本を頭に入れないうちに強引に書くことができなくもないが
そういうのは発想が根本から違うので直す気にもならない
質問したければ別に構わないが
なんでも掲示板に聞きに来るのはかえって効率が悪い
0136129
2008/07/24(木) 22:08:47がんばれ
>>最初と最後を結んでるprognは何のため?
>xyzzy の lisp-interaction-mode で Ctr-J 一回で動作させるには?
>と、考えて書きました。どうもかなりマズイんですね。
なるほどそれならわかった。
windowsでは一行目に#!〜ってやつはできないんだっけ。
>>All
UNIXの一行目に#!〜ってやつはなんと言う名前でしたっけ。
毎回こう書くのは大変なので技術名を教えてください。
0137デフォルトの名無しさん
2008/07/24(木) 22:26:05初心者では普通はしないが、マクロでまとめてマクロや関数を作るときは
ないことはない。
>>136
わすれた。それだけは検索で引っ掛けようにも簡単に引っ掛けられないね。
>>134
フォートラン的なlispはつくれるけど、(グリーンブラット的とも言う。)
lisp的に見えないのが弱点かな。もう少ししたらいい参考書が発売になるし
手に入れてみたらいいよ。
0138デフォルトの名無しさん
2008/07/24(木) 22:35:21>>134
焦らず頑張れ
0139デフォルトの名無しさん
2008/07/24(木) 22:39:13http://en.wikipedia.org/wiki/Shebang_(Unix)
が、「一行目に#!〜ってやつ」のほうが通じやすいと思う。w
0140129
2008/07/24(木) 22:44:59ありがとうございます。
通じるのはUNIX板だけかもしれないですね。
ググっても0件だったので検索に引っかからなかったので困ってました。
ありがとうございます。
0141128
2008/07/25(金) 00:24:41>>138
励ましが嬉しかったです。
作ってみたい気持ちが先走り過ぎてました。
sort関数は凄いです。
おかげで昇順に並べ替えられるように直せました。ありがとうございました。
sort は偶数や奇数でも並べ替えできるようで、調べるうちにどんどん使ってみたくなります。
Common Lisp入門に載ってない、この関数を知れたことが大収穫です。
>>135
> 質問したければ別に構わないが
> なんでも掲示板に聞きに来るのはかえって効率が悪い
ずっと本を読みながら試行錯誤していて、とりあえず動作したところで途方にくれてしまい、
思わず勢いで書き込んでしまいした。
動作するけど、何かが違う感がぬぐえなかったです。
ご指摘の通りまるで基本ができていません。反省します。
>>137
>lisp的に見えないのが弱点かな。もう少ししたらいい参考書が発売になるし
>手に入れてみたらいいよ。
発売する頃には、いい参考書のその良さがわかるようになっていたいです。
僕の書き込みに時間を割いてくださった方々、ありがとうございました。
0142デフォルトの名無しさん
2008/07/25(金) 01:17:01一人で悩むよりはどんどん相談したほうがいいと思う派。どーせ最近はネタもないし。
こんなんなった。open は with-open つかえば安心確実。loop 使えば(ANSI CLなんできっとxyzzyでは動かないけど)
ループ毎に i を 1 ずつ増やし、line 一行呼んでソート済みの lst の先頭と行番号を比較して〜。
(defun kakikaki (lst &key (input "in.txt") (output "out.txt")
&aux (lst (sort lst #'<)))
(with-open-file (in input :direction :input)
(with-open-file (out output :direction :output :if-exists :supersede)
(loop for i from 1 by 1
for line = (read-line in nil :eof)
until (eql line :eof)
do (cond ((eql i (car lst))
(write-line line out)
(setf lst (cdr lst)))
(t
(write-line "" out)))))))
0143デフォルトの名無しさん
2008/07/25(金) 01:49:18ttp://cadr.g.hatena.ne.jp/g000001/20080725/1216916128
0144デフォルトの名無しさん
2008/07/25(金) 04:08:11うはぁ、時々伺うサイトで速攻取り上げられているとは。
0145128
2008/07/25(金) 07:05:14> >>128Common Lisp入門って書籍?
はい、岩波から出ている本です。
> こんなんなった。open は with-open つかえば安心確実。
わざわざ、書いていただいてありがとうございます。
僕の知識不足に配慮してもらってるようで、助かります。
CLISP で動作できました。
キーワードの使い方など、知識と理解があると出来ることが広がるんだと思えてモチベーションが上がります。
> ループ毎に i を 1 ずつ増やし、line 一行呼んでソート済みの lst の先頭と行番号を比較して〜。
loop に関する記述が手元の本に少ないので、これから検索しながらこのプログラムを読み込んでいきます。
だんだん楽しくなってきました。
でも・・・・・・
比べて振り返ってみると、今更自分のプログラムの幼稚さがよく分かる (´・ω・`)
得るものが大きかったんで後悔はないが…… 恥ずかしぃ orz OTZ
>>128 はなかったことに…… 見た人の ( ゚д゚)ポカーン が目に浮かぶよぅ〜
専ブラ使ってる人はあぼーんしてくれーヽ(`Д´)ノ
あと3日でdat落ちしてくれないかな、このスレ(´・∀・`)
0146デフォルトの名無しさん
2008/07/25(金) 08:27:14元コードの主旨に従った物を書いてみた。
xyzzy は使ったことないんで通るかどうかは不明だが…
(defun kakikaki (lines &key (in-file "in.txt") (out-file "out.txt"))
(with-open-file (is in-file)
(with-open-file (os out-file :direction :output :if-exists :supersede)
(labels ((rec (count lines)
(let ((l (read-line is nil :eos)))
(cond ((eq l :eos) "END")
((eql (car lines) count)
(write-line l os) (rec (1+ count) (cdr lines)))
(t (write-line "" os) (rec (1+ count) lines))))))
(rec 1 (sort lines #'<))))))
(kakikaki '(10 30 400) :in-file "in.txt" :out-file "out.txt")
loop 極めるのは結構大変なんで時間かけて覚えた方がいいと思う。
0147デフォルトの名無しさん
2008/07/25(金) 08:33:35入門者にいきなりエレガントなコード書かれたら、
この道のプロの人たちは失業の危機じゃないか?
自分のコードの拙さを気にする奴は伸びる。
地道に頑張れ。
0148デフォルトの名無しさん
2008/07/25(金) 09:48:280149デフォルトの名無しさん
2008/07/25(金) 10:32:01増えますように・・・・・
Lispプログラマに幸あれ
0150デフォルトの名無しさん
2008/07/25(金) 13:17:58プロにはエレガントでないコードの需要が山のようにあるので失業しませんよw
0151デフォルトの名無しさん
2008/07/25(金) 18:12:53んまぁ。。
最適化をやりだすとかなり泥臭いコードに変わるから、どろどろした速いコードは多いと思うよ。
マクロを使わなければ…
0152デフォルトの名無しさん
2008/07/25(金) 20:03:010153128
2008/07/25(金) 22:24:55> >>145
> 元コードの主旨に従った物を書いてみた。
これはすごく参考になります。
自分で作っていて、関数定義の中で with-open 使った上で再帰すると、 close せずに再びファイルを open しようとしてエラーになるだろうし、lambda式では関数に名前を付けらず再帰できないし、と悩んでた部分が解決されてる!!
局所関数と局所変数をあわせて使うんですね。
自分の分かってなさもよく分かってくる…
それでも視界が広がった感じがあります。
> xyzzy は使ったことないんで通るかどうかは不明だが…
xyzzy では write-line が定義されてないので、そこを format で書き換えるだけで動きました。
ありがとうございました。
>>147
はい、地道にやっていきます。
ここ数時間で本に貼った付箋の数が、今までの5倍以上になって充実した時間が過ごせてます。
こんなに興味をもってプログラムを読めるとは、思わなかったです。
0154デフォルトの名無しさん
2008/07/25(金) 23:47:14http://raido.sakura.ne.jp/southly/xyzzy/pcl.jpg
0155デフォルトの名無しさん
2008/07/26(土) 00:40:42AMOP 誰か、訳さんかのぉ
OO 系の LL user には福音のはずなんじゃが…
0156デフォルトの名無しさん
2008/07/26(土) 00:45:500157デフォルトの名無しさん
2008/07/26(土) 01:28:40> 関数定義の中で with-open 使った上で再帰すると
ここがそもそも勘違いのもとだと思う. 先にファイルって言う実体があるわけだ.
stream の実体はファイルでもいいし文字列でもいし ...中略... でもいい
何かの stream から読んで、その他の stream に出力する. で, 読み書き対象は?
と, 考えた結果が >>146 だと思う.
ちなみに >>146 の with-open-file は, 入出力をファイルに割り当てる操作.
(with-open-file (is ... ==> (with-input-from-string (is ...
(with-open-file (os ... ==> (let ((os *standard-output*)) ...
でも動作したりしないかい?
0158デフォルトの名無しさん
2008/07/26(土) 01:57:30http://clqr.berlios.de/index.html
0159デフォルトの名無しさん
2008/07/26(土) 05:41:24GFDL だね。訳しても問題はおこらないかも。
0160デフォルトの名無しさん
2008/07/26(土) 05:52:31>>158
よく出来てるねえ。
0161デフォルトの名無しさん
2008/07/26(土) 07:25:340162デフォルトの名無しさん
2008/07/26(土) 11:08:56厚生労働省が事実上、輸入にストップをかけている為。これに伴い、ヤミ業者による「カモ」の代替使用が急増し社会問題となっている。
http://headlines.yahoo.co.jp/hl?a=20080720-00000004-maip-bus_all
0163デフォルトの名無しさん
2008/07/26(土) 12:07:37美しい!
0164デフォルトの名無しさん
2008/07/26(土) 12:13:17CommonLispをもっと勉強するとさらにいろいろ発見があるよ。
たぶんまだ普通の言語みたいに行単位で Lisp 関数を書いている頃だとおもうが、
そのうち、ふっと行じゃなくてS式としてとらえられるようになる。
それからがまた楽しいのだよ。
0165デフォルトの名無しさん
2008/07/26(土) 17:02:14(require 'hoge)
で呼び出すように変更する手間がめんどい
0166デフォルトの名無しさん
2008/07/26(土) 19:56:36買ってきた、せっかく大型書店へ行ったので他にもかったら3万ほど消えてしまった。
0167デフォルトの名無しさん
2008/07/26(土) 22:40:02嬉々として、平積みされてる実践Common Lispを撮影している、
おまいを想像してワロタ。
同士ダナ!
>>158
これは3000円以上の価値があるな。
オレにとってはだが。
めっちゃ、ありがとう!!!
0168デフォルトの名無しさん
2008/07/26(土) 23:22:38http://pcl.lispuser.net/
0169デフォルトの名無しさん
2008/07/27(日) 07:05:47んだ
0170デフォルトの名無しさん
2008/07/27(日) 14:15:060171デフォルトの名無しさん
2008/07/27(日) 14:21:410172デフォルトの名無しさん
2008/07/27(日) 14:42:510173デフォルトの名無しさん
2008/07/27(日) 16:27:500174デフォルトの名無しさん
2008/07/27(日) 16:29:02そのぐらいの値段にならざるを得ないのは分かるが
0175デフォルトの名無しさん
2008/07/27(日) 16:42:22英語読めばいいとか言ってるムカつく野郎に追いつける。
日本語\(^o^)/
で、いつ届くんだAmazon
0176デフォルトの名無しさん
2008/07/27(日) 17:01:070177デフォルトの名無しさん
2008/07/27(日) 17:11:200178デフォルトの名無しさん
2008/07/27(日) 17:14:17wktkしてるおまいらも読み飛ばすと思うけど
0179デフォルトの名無しさん
2008/07/27(日) 18:07:550180デフォルトの名無しさん
2008/07/27(日) 18:26:04C言語撃退塾とか読ませたら許せなくてマジギレするタイプとみた。
0181デフォルトの名無しさん
2008/07/27(日) 18:56:42キー!!
0182デフォルトの名無しさん
2008/07/27(日) 19:10:590183デフォルトの名無しさん
2008/07/27(日) 19:34:17オレオレ
0185デフォルトの名無しさん
2008/07/27(日) 22:14:090186デフォルトの名無しさん
2008/07/27(日) 22:16:05中はイイこと言ってるのに前置きに大演説が入るの
0187デフォルトの名無しさん
2008/07/27(日) 22:25:49おまえら、そんなことばかり言ってたら良書が出てきても日本語
を作ってくれる人がいなくなるぞ。
彼らの努力で出版までたどり着けて日本語で読めるってことのあ
りがたさをなぜ理解できない?
0188デフォルトの名無しさん
2008/07/27(日) 22:41:00誰も日本語にケチはつけていない
0189デフォルトの名無しさん
2008/07/27(日) 22:44:39そんなわがままな子には何も勧められません
0190175
2008/07/27(日) 23:08:24なんなんだよー。ワクテカしてる人を見ると嫌がらせしたくなる人だったのか?
0191デフォルトの名無しさん
2008/07/27(日) 23:19:26中身が悪いとかいう話は出てないのに・・・
0192デフォルトの名無しさん
2008/07/27(日) 23:19:31どんな本でもケチをつけようと思えばつけられる。それを踏まえて
匿名の所のレスを読んでたらいい。匿名は悪口を言うのが主流だか
らな。そのうちブロガーも書評を書くだろうから匿名よりそちらの
方が信頼できるだろう。どうせdanさんとか書くだろ。
>>188
わかっちゃいねーな。日本語にケチをつけなくても訳者が萎縮する
ようなことをいってれば日本語訳が公開されなくなるよということ
だ。丁寧に書かないと理解はできないかもしれないが、ここは数行
のレスにするほうが好まれるから、行数が6行以上つかうのは、控え
てるのだ。おまえら長文ウザいというだろ?
0193デフォルトの名無しさん
2008/07/27(日) 23:24:020194デフォルトの名無しさん
2008/07/27(日) 23:24:12別の本で概略が頭に入ってた方がいいと思うけど
0195デフォルトの名無しさん
2008/07/27(日) 23:28:56>>192
こんなに過剰反応する必要があるほど叩かれてないと思うんだが
0196デフォルトの名無しさん
2008/07/27(日) 23:35:59潔癖症だなw
0197デフォルトの名無しさん
2008/07/27(日) 23:41:300198デフォルトの名無しさん
2008/07/27(日) 23:57:480199デフォルトの名無しさん
2008/07/28(月) 08:57:00萎縮した訳者が書いたなら心配しすぎとも言えないだろw
0200デフォルトの名無しさん
2008/07/28(月) 09:50:36やたらwktkしてたけど内容わかってなかったんかい
0201デフォルトの名無しさん
2008/07/28(月) 10:07:58sbclとかを組み込んだemacsもどきの習作ってありますか?
0202デフォルトの名無しさん
2008/07/28(月) 10:55:32common lisp で書かれたemacsもどきのエディターならある
0203デフォルトの名無しさん
2008/07/28(月) 11:42:24CMLCL
> ・an Emacs-like editor implemented in Common Lisp.
0204デフォルトの名無しさん
2008/07/28(月) 12:20:15そのまま再利用するって意味だと思うぞ
0205デフォルトの名無しさん
2008/07/28(月) 12:31:56エディタありきで拡張言語として〜を
って考え方なんだろうと思うけれど、
解答者はその言い回しにこだわることはないと思う。
0206デフォルトの名無しさん
2008/07/28(月) 14:31:25とにかく長い名前変数名つければどっちでも動くと思う
0207デフォルトの名無しさん
2008/07/28(月) 15:18:230208デフォルトの名無しさん
2008/07/28(月) 15:39:03lambda関数一つとっても使い方が違う
0209201
2008/07/28(月) 16:00:12CMLCLというのは見付けられませんでしたがclimacsというのを見つけました
結構長続きしているプロジェクトなんですね
こちらの環境はビルドできませんでしたのでコードを眺めていました
emacs本家のCコードと違って吐き気がしないのがいいですね
sbclとかを組み込むと云々というのは、
近代的で、マルチタスクの、高速なlispを備えたemacsクローンが欲しいってだけです
sbclが例なのは、簡単なsumで比べてもelispとは段違いで、「elispもこんなのだったらいいのに」っていう願望です
0210デフォルトの名無しさん
2008/07/28(月) 17:03:25つ http://www.cons.org/cmucl/ のhemilock
0211デフォルトの名無しさん
2008/08/01(金) 00:01:04html2texiとか作れるのかな?
dpans2texiっていうのを見つけたけどftp鯖にデータが無くて使えないのに
もっと早くからcommon lisp触ってればよかったよ‥
ここの人達でemacs使ってる人なら皆texi版のdpANS持ってそうだなぁ
0212デフォルトの名無しさん
2008/08/01(金) 00:27:20> Emacsのinfoでhyper specとか見れたらいいのになぁ
当然だけど見れるよ
0213デフォルトの名無しさん
2008/08/01(金) 00:31:06マジでやりかた教えてください
html2texiを見つけてきてhtml->texi, そこからmakeinfoでtexi->info
と変換しようとしてるんですけどもう@Iとか変なコマンドを生成しやがって
修正が大変です‥
これならperlか何かで専用の変換スクリプト書いた方がいいかってぐらいに
0214デフォルトの名無しさん
2008/08/01(金) 02:03:59http://www.emacswiki.org/cgi-bin/wiki/CommonLispHyperspec
0215211
2008/08/01(金) 22:08:59HTMLのまま見るやつですか、w3mを入れれば使えそうですね
結局dpans3で検索したら新しい場所が見付かり
dpans2texiで難なくinfoが作れました
でもhyper specの方が新しいんですよね…
0216デフォルトの名無しさん
2008/08/02(土) 14:04:38そのデータへのアクセスをcar, cdr 等の組み合わせのみ記述すると
可読性が著しく落ちることが良く有ると思います。
その場合に皆さんは普通にマクロのみで対処しますか?
それとも明示的に defstruct や CLOS を使いますか?
カプセル化だけしたい所で CLOS を使うと
なんとなく別の意味で面倒になった感じがします。
例えばリストだけなら copy-tree で済む所が
copy constructor みたいなものを書くのが面倒だとか、
コード記述に関するオーバーヘッドが大きいと思うのです。
まあ MOP は知らないのがいけないのかもしれないのですが。
0217デフォルトの名無しさん
2008/08/02(土) 14:17:35リストの欠点がひとつも書かれてないけど、なんで迷うの?
可読性の問題はマクロで解決したんでしょ
パフォーマンスについては何とも言えないし、とりあえずリストでいいじゃん
0218デフォルトの名無しさん
2008/08/02(土) 14:48:10カプセル化のみが重要な場合に CLOS が必要になる事例があるのかな?
という別の疑問だったのかもしれません。
C++ でクラスを使う時はカプセル化の意味は大きいのですが、
Lisp ではマクロがある以上、CLOS の出番があるのだろうか?と言う事です。
まあ、CLOS を、マクロのみで記述している処理系では実は意味がない疑問で、
結局はリストとマクロのみでしょ。って言われそうですが。w
0219デフォルトの名無しさん
2008/08/02(土) 14:49:190220デフォルトの名無しさん
2008/08/02(土) 17:14:47内容によるけど、defstructやCLOSを使いますよ。ランダムアクセスをさせるような
木の特定部分に直接いじるような使い方をする場合はリストは使わないですね。
CLOSと構造体のオーバーヘッドの違いは、同じプログラムを作ってtimeをとれば、
コンシングの多さも含めて分かりますから、実際にベンチをとってください。
CLOSと構造体、リストはどんな楽をしたいのか?何を重視するのか?で変わってきますね。
0221デフォルトの名無しさん
2008/08/02(土) 18:41:15それと、マクロマクロっていうけど、アクセサ程度はインライン関数を使う。
マクロだとfuncallが出来なくなるし、デバッグも面倒になる。
あと、処理系によっては構造体よりコンスを使ったほうが速い場合もある。
とりあえず、アクセサ作って実装を隠蔽しておく。実装はリストでやっとく。
で、あとでパフォーマンスが問題になったらプロファイリングして、インラ
イン宣言いれたり、構造体等で置き換えたり、って感じ。
0222デフォルトの名無しさん
2008/08/02(土) 19:00:48普通は>>221のいうようにリスト操作して必要な情報を取り出す小さい関数を
定義する。例が欲しければSICPでも見てみればいい。
0223デフォルトの名無しさん
2008/08/02(土) 22:25:18ケイスバイケイス。そういうとこでセンスの良い選択をするのが腕の見せどころ。
つまり、一概に「こうするのが良い」という解は無い。
0224デフォルトの名無しさん
2008/08/03(日) 13:07:46どのように書けば良いのでしょうか
一つの値を返す式またはデータと変数のリストを引数にとり
実行すると式orデータの値が変数に代入される。マクロです。
(multi-setf 3 '(a b c d))とすると
>>a
3
>>b
3
とできるようになるマクロです。
0225デフォルトの名無しさん
2008/08/03(日) 13:33:42(defun multi-set-fn (value symbols)
(dolist (sym symbols value)
(setf (symbol-value sym) value)))
これなら (multi-set-fn 3 '(a b c d)) とかけるけど設定できるのは
変数ではなくシンボルの symbol-value スロットの値。
(defmacro multi-set-macro (value &rest symbols)
(let ((v (gensym "multi-set")))
`(let ((,v ,value))
,@(loop for sym in symbols
collect `(setf ,sym ,v)))))
マクロにすると変数にも設定できるが、渡せる変数は関数のように実行時に
決定することはできない。
(let (a b c d)
(multi-set-macro 3 a b c d)
(list a b c d))
シンボルと変数の概念を混乱している予感がする。
0226デフォルトの名無しさん
2008/08/03(日) 13:33:59(defmacro multi-setf (atom list)
(let ((foo (loop for p in list collect `(setf ,p ,atom))))
`(progn ,@foo)))
細かい問題点の検証はしてないよ。
あまりおすすめ出来ないな。
0227デフォルトの名無しさん
2008/08/03(日) 13:35:20* (macroexpand-1 '(multi-setf (+ 1 1) (a b c d)))
(PROGN (SETF A (+ 1 1)) (SETF B (+ 1 1)) (SETF C (+ 1 1)) (SETF D (+ 1 1)))
T
0228デフォルトの名無しさん
2008/08/03(日) 13:38:54普通なら関数とハッシュテーブルを使うところに
なぜかマクロとsymbol-value等を使いたがるんだな。
他にも、リストを使うか構造体を使うか、とか、
やり方が2通り以上あると迷う人がいるのも気になる。
0229デフォルトの名無しさん
2008/08/03(日) 13:45:52回答ありがとうございます。
じつは研究の過程で
100ぐらいの変数に同じ値を入れてある式に入れて結果の分布とかを求めなければ
いけない事体に陥りまして、Lispは少年時代から触れている言語なので
ぜひともLispで実装したく思いまして。
ありがとうございます。
0230デフォルトの名無しさん
2008/08/03(日) 13:53:14なるほど、それなら、変数に配列を使った方が扱い易いと思うよ。
(setf arr (make-array 100 :initial-element 3)) とかすれば、いいし。
あるいは
(setf lst (make-list 100 :initial-element 3))とかね。
少なくとも、それだけ変数があるなら自動化が出来る方法を探さないと骨が折れるよ。
0231デフォルトの名無しさん
2008/08/03(日) 14:10:290232デフォルトの名無しさん
2008/08/03(日) 14:12:27C++のbindとかschemeのcutみたいにさ
(mapcan (bind #'setq _1 3) '(a b c d))
標準でありますか?
あと子供の頃からLispって羨ましすぐる…
0233デフォルトの名無しさん
2008/08/03(日) 14:43:42ありがとうございます。
>>231
いえいえ、諸先輩方には遠く及びません。
精進いたします。
0234デフォルトの名無しさん
2008/08/03(日) 14:52:36なんか知識と書いてるコードがちぐはぐね。
0235デフォルトの名無しさん
2008/08/03(日) 19:19:14EmacsはLispからXwindowsを呼び出しているのでしょうか?
いまいちLispアプリケーションの配布方法がわからず困っています。
0236デフォルトの名無しさん
2008/08/03(日) 19:40:250237デフォルトの名無しさん
2008/08/03(日) 19:52:37Ltkという物はMacOSXでも動くようなので導入したいのですが
asdfやasdf-installの仕方がわからず困っています。
ネット上の情報もMacOSX10.5対応の物かどうかが定かでないのですが、
Clispでのasdf系のインストールでおすすめのサイトをよろしくお願いします。
0238デフォルトの名無しさん
2008/08/03(日) 20:26:23http://www.cliki.net/asdf
0239デフォルトの名無しさん
2008/08/03(日) 20:37:52ありがとうございました。
0240デフォルトの名無しさん
2008/08/03(日) 20:40:49そうするとasdf-installは不要なので大丈夫そうです。
ありがとうございました。
0241デフォルトの名無しさん
2008/08/04(月) 10:10:34代入される方(リスト)を第一引数にして欲しいなあ。
0242デフォルトの名無しさん
2008/08/04(月) 15:54:41「GUIアプリケーション」に限定されてるの?
X Windowうんぬんのところは何を言おうとしているのか分からない。
0243デフォルトの名無しさん
2008/08/04(月) 20:18:13通常のアプリケーションと同じように簡単に導入できるアプリケーションを作成したいのですが。
Lispでは方法がわからず困っていました。C言語ではGUIアプリケーションは作る事が難しい
と聞いていたので、Lispでも同じなのでしょうか?
Lispで作られたGUIアプリケーションはどんな物が有るか調べた所楽譜作成ソフトなどが
見つかり少し安心しているのですが、ああいった物はどのようにしているのでしょか?
0244デフォルトの名無しさん
2008/08/04(月) 21:59:50ひみつです
0245デフォルトの名無しさん
2008/08/04(月) 22:25:50もしくはtkで我慢汁
0246デフォルトの名無しさん
2008/08/04(月) 22:38:220247デフォルトの名無しさん
2008/08/04(月) 22:57:260248デフォルトの名無しさん
2008/08/04(月) 23:04:12Lisp用のGUIライブラリを備える処理系ACL,LispWorks,MCLとかならそれなりのGUIが作れる。
LispでもOpenGLやCLX、Win32 APIを直接叩くとCとそんなに手間はかわらない。
が資料はメジャーな言語にくらべると少ない。
名前を聞いても想像できないなら、いきなりLISPでGUIに挑戦するのは初心者にはお勧めできない。
資料の少ないからどーでもいいところで詰ってしまう可能性が高い。
0249デフォルトの名無しさん
2008/08/05(火) 00:50:020250デフォルトの名無しさん
2008/08/05(火) 11:17:23これは昔使った事が有ります。(UNIXとMac意外はあまり詳しくないのでWin32 APIはわかりません)
MacOSXだとAPIはCocoaになると思うのですが
clispなどの処理系でもCocoaは呼び出せるのでしょうか?
OpenMCLを使うしか無いのでしょうか?
それと、
>LispでもOpenGLやCLX、Win32 APIを直接叩くとCとそんなに手間はかわらない。
これはどの処理系でも良いのでしょうか?
0251デフォルトの名無しさん
2008/08/05(火) 11:58:310252デフォルトの名無しさん
2008/08/05(火) 12:59:47(terpri)
0253デフォルトの名無しさん
2008/08/05(火) 13:06:11本はCommon lisp入門っぽい名前のやつとOn LISPしか持ってないです
0254デフォルトの名無しさん
2008/08/05(火) 13:08:260255デフォルトの名無しさん
2008/08/05(火) 13:13:08そりゃ改行だがね
0256デフォルトの名無しさん
2008/08/05(火) 13:55:25(print #\Page)
(format t "~|")
なのかもしれない。
0257デフォルトの名無しさん
2008/08/05(火) 14:04:41ありがとうございます。
>>256
処理系はclispなのですが、(print #¥Page)とすると
[2]> (print #¥Page)
#¥Page
#¥Page
となっておしまいなのです。これはどうしてでしょうかよろしくお願いします。
求めているのはUNIXのclearの様な機能です。
0258250
2008/08/05(火) 14:09:05どちらもCUIアプリケーションの作製法は書いてあるのですが
GUIアプリケーションの作製法などについて触れている本が有れば
紹介お願いします。
0259デフォルトの名無しさん
2008/08/05(火) 16:00:22http://www.cliki.net/Graphics%20Toolkit
調べた情報を日本語blogかどっかたにまとめたらいろんな人に感謝されるよ
0260250
2008/08/05(火) 16:10:02それはそのサイトの内容をと言う事でしょうか?
以前からLispをもっと活発にする活動をしたいと思っていたのですが
そのようにできたらうれしい限りです。
0261デフォルトの名無しさん
2008/08/05(火) 17:20:180262250
2008/08/05(火) 17:57:45何かベストな名前が有りましたらよろしくお願いします。
JCLikiだとあまりにも芸がないので
0263デフォルトの名無しさん
2008/08/05(火) 18:26:08http://wiki.fdiary.net/lisp/
にwikiがありますよ。
あと、common-lisp-users.jpは空いてるようなので、ドメイン取って運用とか、
Smalltalk-users.jpみたいに、
google sitesで作るとか、
http://sites.google.com/a/smalltalk-users.jp/home/Home
形とか運用方法にこだわっても利用されなければ意味がないので、
私は、
http://wiki.fdiary.net/lisp/
を育てるに一票
0264250
2008/08/05(火) 18:36:11ありがとうございます。
スレ独自の物に手を加えるのは私は心配なのですが、
2年前にじぶんで作った
`(CommonLisp Wiki)という全く何もおこっていないサイトが有ったのを
思い出したのですが、そちらに情報を蓄えて行く訳にはいかないでしょうか
全く何もないですが以下URL
http://www6.atwiki.jp/commonlisp/
0265デフォルトの名無しさん
2008/08/05(火) 18:49:16全部他人任せワロスww
0266デフォルトの名無しさん
2008/08/05(火) 18:50:15を勝手に改変して行けば良いのではないでしょうか。
編集しにくいということであれば、そちらのwikiにメインの記述をして、
リンクだけ貼るという手もありますね。
0267250
2008/08/05(火) 18:55:09スマソ、トップページのメッセージは気にしないでください。
あれは開発当初はもっと熱心に改造して行くつもりだったので
あのような文章に成っています。
今リアルタイムでQ&Aページを作成してるので気になる点など有りましたら
よろしくお願いします。
0268デフォルトの名無しさん
2008/08/05(火) 18:58:48fdiary.netに作ったものだが、どこでまとめても大丈夫だよ。lisper pagesにリンクを貼っ
ておけばいいよ。fdiaryのlisp wikiは誰がどのように使おうと構わないですから。スパム
はダメだということと、lispとちゃんとつながっていることが前提だが。
fdiary.netは昔よりサービスが悪くなってるようなので、より使い勝手のよいところを探
すのもよいかもしれない。昔はフランスに移籍した人が管理をやっていたけど、そのこ
ろは比較的速い対応をしていた。かずひこさんっていったっけな。
あそこはmatz lispの本拠が運営しとるから、もう少し頑張ってもらいたいんだけど、運営
がいまいちになってきているのをみていると大丈夫なのかな?という心配はある。
Norvig国のgoogle sitesもいいかもしれないな。
0269250
2008/08/05(火) 18:59:58がんばって開発してみます。
0270デフォルトの名無しさん
2008/08/05(火) 19:08:50あんまり変なことするとPythonみたいに妨害されるぞ…
0271デフォルトの名無しさん
2008/08/05(火) 19:12:01目標も同じで、既に存在している、機能的にも似た物があるのに、
「スレ独自の物に手を加えるのは心配」とか、お前さんにしか理解できない理由で、
自分の方を使ってくれ、っていうのは、他の人には「(゚Д゚)?」って感じだと思うぞ。
現状だと子供のわがままにしか見えん。
他の人にも納得できるだけの相応の理由があって、
それなりの行動力があると思わせる言動をしていれば、
>>265みたいに皮肉られんよ。
0272250
2008/08/05(火) 19:21:53確かにそうですな、そちらの開発に参加させて頂きたく思います。
たった今先ほどのWikiは削除させて頂きました。
ご指導ありがとうございました。
>>270
詳細は知りませんが私は全くおこらないタイプなので無害ですよ。
殴られてもおこらないぐらいです。
0273デフォルトの名無しさん
2008/08/05(火) 19:37:11270は他言語圏にふれたことについて、危険だよといってるだけだから、気にしなくていい。
0274デフォルトの名無しさん
2008/08/05(火) 19:37:24printじゃなくて、princでした。
clearということになると、
ncurse等を使うことになるのかも。
0275250
2008/08/05(火) 19:48:04親切にも'(CommonLisp Wiki)をLisperBlogに登録してくださっていたのは
ありがとうございました。
自分で削除しておきますね。
0276250
2008/08/05(火) 19:50:29変更お願いしますね
0277デフォルトの名無しさん
2008/08/05(火) 20:08:51login: guest pass:cl
だよ
0278250
2008/08/05(火) 20:42:56手始めにClispのmacOSXへのインストールを書かせて頂きました
ご確認よろしくお願いします。
0279250
2008/08/05(火) 22:12:01著作権的にどうなのでしょうか?
0280デフォルトの名無しさん
2008/08/06(水) 00:19:52オリジナルのP-99の作者の先生に確認することになるのでは
ないかという気が…。
L-99はなんとも微妙な気がするので…。
0281250
2008/08/06(水) 10:39:33ありがとうございます。
ところでasdfの使い方ですが
.clisprc にasdfのロードとasdファイルのディレクトリ設定は書いてあり
clisp内では確かにasdfは動作しています。
しかしシェバングしたファイルを作成して実行するのと
*** - READ from #<INPUT BUFFERED FILE-STREAM CHARACTER #P"./test.l" @2>: there
is no package with name "ASDF"
と出てしまいます。
ファイルの先頭に
(asdf:oos 'asdf:load-op :ltk)
(in-package :ltk)
とかいているのですが・・・・
0282デフォルトの名無しさん
2008/08/06(水) 17:03:26cl-whoを導入したのですが、サイトのサンプルを実行して見たいのですが
*html-stream*なんて無いというエラーがかえってきてしまいます。
よろしくお願いします。
環境はMacOSX10.5です。
0283デフォルトの名無しさん
2008/08/06(水) 17:18:30他のパッケージからcl-who使っていたりしない?
0284デフォルトの名無しさん
2008/08/06(水) 17:23:00(asdf:oos 'asdf:load-op :cl-who)
(in-package :cl-who)
実行後
cl-whoの公式サイトっぽい所の
(with-html-output (*http-stream*)
(loop for (link . title) in '(("http://zappa.com/" . "Frank Zappa")
("http://marcusmiller.com/" . "Marcus Miller")
("http://www.milesdavis.com/" . "Miles Davis"))
do (htm (:a :href link
(:b (str title)))
:br)))
というサンプルコードを実行すると
*** - EVAL: variable *HTTP-STREAM* has no value
The following restarts are available:
USE-VALUE :R1 You may input a value to be used instead of *HTTP-STREAM*.
STORE-VALUE :R2 You may input a new value for *HTTP-STREAM*.
ABORT :R3 ABORT
というエラーが・・・これはサンプルコードはインタプリタ向けではないのでしょうか?
何となくそのような英語が上に書いてある気がします。
0285デフォルトの名無しさん
2008/08/06(水) 17:41:47>Let's assume that *HTTP-STREAM* is the stream your web application is supposed to write to.
って書いてますね。
出力したいストリームの名前の例として*http-stream*を使ってるだけではないかと。
とりあえず、*standard-output*とかにして動作確認すれば良いんじゃないしょうか。
0286デフォルトの名無しさん
2008/08/06(水) 17:51:29できるようになったね。その他は、GCとスレッドインタプリタのパフォー
マンス改善のようです。
ecl ってwindowsで動かんかったっけ?
0287デフォルトの名無しさん
2008/08/06(水) 18:08:10できました。
ありがとうございます!!!
やっぱり英語はできないと苦労します・・・・0rz
0289デフォルトの名無しさん
2008/08/06(水) 22:54:05http://lispuser.net/commonlisp/clisp.html
を参照して専用のイメージを作ってみるというのはどうだろう。
0290デフォルトの名無しさん
2008/08/07(木) 11:09:29http://clisp.cons.org/impnotes/clisp.html#opt-exec-file
>>289 の言うようにメモリイメージを作っておくのがいいんじゃないかな。
0292287
2008/08/07(木) 13:02:23を参考にして
clispで基本ファイルをロードした状態でメモリイメージを保存し
ファイルの先頭に
#!/opt/local/bin/clisp -norc -M clispinit.mem
した所無事にスタンドアローンに実行できました。
これでも良いのでしょうか?
0293287
2008/08/07(木) 14:21:14-M で指定する際に
/User/hoge/clispinit.memと絶対ディレクトリで呼び出しているのですが
こうするとそのようなファイルは有りませんとシステムから
opt/local/lib/clisp-2.43/base/lisp.run: operating system error during load of initialization file `/User/hoge/clispinit.mem'
[spvw_memfile.d:927] errno = ENOENT: No such file or directory.
という怪しいエラーが出てしまいます。
よろしくお願いします
0294デフォルトの名無しさん
2008/08/07(木) 16:09:28http://wiki.fdiary.net/lisp/はFrontPageと言うサイト名でしょうか?
0295デフォルトの名無しさん
2008/08/07(木) 16:11:05lisp's wiki
0296デフォルトの名無しさん
2008/08/07(木) 16:16:160297デフォルトの名無しさん
2008/08/07(木) 16:22:41/User/→/Users/ってヲチじゃないでしょうね。
>>282
> 環境はMacOSX10.5です。
0298293
2008/08/07(木) 16:39:08恥ずかしい・・・・orz
0299デフォルトの名無しさん
2008/08/07(木) 18:00:18www::mechanizeのようなブラウザの動作をエミュレートするような
ライブラリは無いでしょうか
0300デフォルトの名無しさん
2008/08/07(木) 18:06:010301デフォルトの名無しさん
2008/08/07(木) 20:05:32(clnuplot:write-plot
(clnuplot:make-plot
:lines-points
'((1 2) (2 2.5) (3 3.1) (4 3.4) (5 4.2))
:pointsize 2.0
:linewidth 3.0
:filename "simple-example"
:xlabel "Bin Number"
:ylabel "Dance Partners"
:x-coord #'first
:y-coord #'second
:title "Bin Number versus Dance Partners"
:ymin 0.0)
:pdf)
を実行してみても
*** - FUNCALL: undefined function PATHNAME-NAME+TYPE
The following restarts are available:
USE-VALUE :R1 You may input a value to be used instead of (FDEFINITION 'PATHNAME-NAME+TYPE).
RETRY :R2 Retry
STORE-VALUE :R3 You may input a new value for (FDEFINITION 'PATHNAME-NAME+TYPE).
ABORT :R4 ABORT
と言うエラーが出てしまいます。
clnuplotは参考サイトが極端に少ないのでよろしくお願いします。
0302デフォルトの名無しさん
2008/08/07(木) 22:45:22clnuplotダウンロードしてみたけど、その関数は別のライブラリで定義されてるみたいだよ。
cl-containers,cl-mathstats,metabang-bind,trivial-shell が全部いると思う(clnuplot.asdより)。
ちゃんと入れてるなら他が原因かも。
0303デフォルトの名無しさん
2008/08/07(木) 23:22:28入っていますね・・・・・・
ロードするときは(asdf:oos 'asdf:load-op :clnuplot)
だけで良いのでしょうか
0304デフォルトの名無しさん
2008/08/07(木) 23:36:590306デフォルトの名無しさん
2008/08/08(金) 13:05:030307303
2008/08/08(金) 13:23:39他の方の環境の方では無事に動作しているようなので私の
システムに何か問題が有るかもしれないのであきらめます。
ありがとうございました。
0308デフォルトの名無しさん
2008/08/08(金) 15:57:23(asdf-install :clnuplot)
だけでインストールできたよ。
ただ、自分が使ってる環境を調べて、きちんと設定しないと、上手く動かないっぽい。
0309デフォルトの名無しさん
2008/08/08(金) 16:08:590310303
2008/08/08(金) 16:19:01有用な情報ありがとうございます。
>自分が使ってる環境を調べて、きちんと設定しないと
これはclnuplotを設定するという事ですか?
それともasdf-installについてという事でしょうか?
よろしくおねがいします。
0311デフォルトの名無しさん
2008/08/08(金) 17:02:26です。
asdf-installがちゃんと動いていれば、インストールだけは簡単。
あきらめたそうなので無駄な話だったけど。
0312303
2008/08/08(金) 17:06:26とおもったので。
clnuplotを設定するという事ですか、その情報はどこでお知りになりましたか?
もしよろしければお教え願います。
0313デフォルトの名無しさん
2008/08/08(金) 17:44:400314303
2008/08/08(金) 17:54:21いえいえ、スレ汚しに成っているようですね。
やはりあきらめるしかないですね
googleでも全く引っかからないので
ありがとうございました。
0315デフォルトの名無しさん
2008/08/08(金) 19:20:12clnuplotの設定というのは、呼び出すgnuplotの場所等を
大域変数で持っているので、それを環境に応じて変更しないとね、という
くらいのものです。
その情報はソースに書いてありました。
というか、これは、ドキュメントが少ないので、導入の敷居は高いかも。
0317デフォルトの名無しさん
2008/08/09(土) 00:38:381 読まない
2 調べない
3 試さない
4 理解力が足りない
5 人を利用することしか頭にない
0318デフォルトの名無しさん
2008/08/09(土) 00:57:51Lisp に限らず、最悪の場合ソース読めってのは今でも変わってないから、
基本的には賛成なんだが………
とことん初学者の場合、どっから調べていいかわからない場合も多々ある。
Unix で man よめって言われても, 「man って何」くらいは教えてもらわないと、
なすすべがない。 実際、俺も Unix 触り始めたときそんな状況だった。
Lisp 系言語の場合、「man 読め」以前のドキュメントが少なすぎるのも事実
打と思うんだが…
0319デフォルトの名無しさん
2008/08/09(土) 01:27:400320デフォルトの名無しさん
2008/08/09(土) 01:57:09といいつつ
7 切羽詰まってパニックを起こしてから質問
0321デフォルトの名無しさん
2008/08/09(土) 06:36:23,性格の悪いことばかり言わない。なんだか陰気なのよね。雰囲気悪くなるから、
スルーしてくれたら助かる。
0322デフォルトの名無しさん
2008/08/09(土) 10:13:03そこでコンソールからmanと打ち込んでみるのが好奇心だと思うのよね。
0323デフォルトの名無しさん
2008/08/09(土) 13:48:07> スルーしてくれたら助かる。
誰が何をスルーしたら誰が助かるんだ?
「こういうの俺が嫌だから黙れ」って方がよっぽどネチネチ感漂ってるけどな。
0324デフォルトの名無しさん
2008/08/09(土) 13:51:56そんなこと書くより、雰囲気の悪いレスはスルーして、自分が雰囲気の良いレス
をするほうが効果的だと思うよ。お互い、芸風の合わない人はスルーで良かろう。w
0325デフォルトの名無しさん
2008/08/09(土) 14:56:42スルーしてくれよ。
0326デフォルトの名無しさん
2008/08/09(土) 17:57:20なんだか嫌味を言う連中もいるようだが、気にせずに気楽に書き込んでください。
一部の連中を懸念してるが、
嫌味っぽくなると初心者さんたちは何も聞けなくなるのではないか?ということだ。
嫌味ったらしい事を言う背景には単なる初心者いじめではなくて、
ストレス発散に使ってる印象もある。common lispの立場をよく考えてもらいたい。
一人でもどんな初心者でも馴染めるように支援していきたいからね。甘えん坊の初心者
だろうが跳ねっ返りだろうが関係ないどちらも大切だ。
LL系のようにほっといても初心者が使いにくる言語なら嫌味を言う連中は勝手に言っとれ
だが、common lispの状況は死活問題だよ。状況を踏まえて欲しいのだ。独学でcommon
lispを学べる人ってそんなにいないでしょ?
一部の連中には自ら首を閉めるようなおろかな事をしないでくれといいたいのだ。
0327デフォルトの名無しさん
2008/08/09(土) 17:58:03> Unix で man よめって言われても, 「man って何」くらいは教えてもらわないと、
> なすすべがない。 実際、俺も Unix 触り始めたときそんな状況だった。
ググりもしないのに質問とな(AAry
man 読む unix に一致する日本語のページ 約 212,000 件
man 使い方 に一致する日本語のページ 約 1,040,000 件 関連検索: linux man 使い方
0328デフォルトの名無しさん
2008/08/09(土) 18:04:10SunOS-3.5 って知ってる? 当時 Sun3 にのってた OS のバージョンなんだが
ググる? UUCP でバケツリレーやってるときに google なんかねぇよw
0329デフォルトの名無しさん
2008/08/09(土) 18:14:37どうしても、書き込みの量が増えるんじゃない?
自転車置場の議論とかそういうのと一緒で。
どっちかっていうとCommon Lispの情報が少しでも増えるような記述がありがたいね。
0330デフォルトの名無しさん
2008/08/09(土) 18:15:160331デフォルトの名無しさん
2008/08/09(土) 18:58:25ハードとかOSのインストールマニュアルは手元にあったが、off-line の man pages は
新幹線で 3時間ほどかかる本社にしか存在していなかった。
言いたいことは分かるんだが、何でもググれじゃ話が進まない場合もあるってことで…
0332デフォルトの名無しさん
2008/08/09(土) 21:43:07それって、本当に害人だ。<common lispは知らないが説教だけする。
答えが得られる保証はないが、分からないことがあれば気軽に聞いてください。<初心者
0333デフォルトの名無しさん
2008/08/09(土) 21:56:520334デフォルトの名無しさん
2008/08/09(土) 22:24:30恐らく元質問の人とは別の人だと思うんだけど、
>>311にも書いたとおり、asdf-installさえ動作していれば、
replに
(asdf-install:install :clnuplot)
とタイプするだけでおk
そして、環境によってちょっと設定する必要あり。
0335デフォルトの名無しさん
2008/08/09(土) 22:37:56だからなに?
そんな時代じゃねーだろ?
0336デフォルトの名無しさん
2008/08/09(土) 23:56:07こういう年だけ食ってる初心者が一番手に負えないというか害悪だな。
0337デフォルトの名無しさん
2008/08/10(日) 01:05:05聞かれてるんだと思うんだが?
0338デフォルトの名無しさん
2008/08/10(日) 01:18:450339デフォルトの名無しさん
2008/08/10(日) 01:36:050340デフォルトの名無しさん
2008/08/10(日) 01:45:28それはもう読んだよ。環境によって何をすればいいの?
0341デフォルトの名無しさん
2008/08/10(日) 02:03:27あのさー
どの世界でも「初心者に厳しく」は常識なんだよ
やさしくするのは入門させるための建前
0342デフォルトの名無しさん
2008/08/10(日) 02:14:54って人が増えるだけかも。厳しくしたほうが良い子に育つこともある。
0343デフォルトの名無しさん
2008/08/10(日) 02:50:440344デフォルトの名無しさん
2008/08/10(日) 07:34:32あれも仕様はそれなりに評価できるし、タコな環境にグダグダの実装でこうなっちゃったんだよなぁ
0345デフォルトの名無しさん
2008/08/10(日) 07:40:48初期の環境の状況は影響でるね。ubuntuでのcommon llisp環境導入のように
クリック一発ならば大丈夫だが、windowsでのlisp環境はかなり悪いからね。
windowsメインで利用するようなlispハッカーはいないから整備は進まない罠。
macosxへのインストールも難しくはないが、windowsだけはね。だめだね。
0346デフォルトの名無しさん
2008/08/10(日) 08:05:38私としては方針は決まってるが、無条件に厳しくあたるというのは教える側の思考停止状態
を表している半面、無条件に優しくするのは依存性を高める危険がある。これは極当たり前
の事。そこにはトレードオフがあるし、状況判断ができなければ育つものを枯れさせてしまう
だけだ。
匿名だから分かりにくいが、情けは人の為のあらず。
2ちゃんでこのことわざが意味するところは、違った新しいことを始めたときにアドバイスをもら
う場面に役立つことだと思う。すべての面で自分で調べて、自分で考えて、悩んだ末で教えて
もらうと言う判断を出来てるような自分への厳しい心を持ってる人間はわずかだと思う。それを
踏まえた上で、利用していればいいのではないか。ubuntuではないが助け合いの精神は持っ
ておいた方がいいと思うね。
>>340
僕はそのパッケージを利用したことがないから分からないけど、環境によって何をすればい
い?と聞くならば、あなたの利用している環境をちゃんと書いてみないとより具体的なコメント
は期待出来ない。つまり、どこまで本気に導入を試みてわからないのか聞いてるの
だ。環境が分からないままでいろんな事を想定して、そのすべてを答えるような人がでて
くることは期待できないぞ。
聞き方や聞くタイミングで少々気になったが、導入を本気で試みているより、住民を試してい
るような印象をもったことかな。evilじゃなくて純粋に聞いてるなら気にならないが。
Don't be evil.
0347デフォルトの名無しさん
2008/08/10(日) 08:57:030348デフォルトの名無しさん
2008/08/10(日) 12:33:46>>346はふつーにいい人すぐるが、煽られまくって変な反動が起きませんように。
0349デフォルトの名無しさん
2008/08/10(日) 15:40:56なげーよw
0350デフォルトの名無しさん
2008/08/10(日) 15:51:180351デフォルトの名無しさん
2008/08/10(日) 22:10:16明らかにメモリ利用効率良くなってておーって思ったんだけど
REPL起動したときのバージョン表示が良く見たら0.9iのままで
なんというかポルナレフ状態
0352デフォルトの名無しさん
2008/08/10(日) 23:24:020353デフォルトの名無しさん
2008/08/11(月) 00:58:170354デフォルトの名無しさん
2008/08/11(月) 23:55:35Windows用(MSVC用)のmakefile中のバージョンが0.9iになってた。
>>353
英語でOK
0355デフォルトの名無しさん
2008/08/12(火) 20:08:48できるとしたらお勧めの処理系とかありますでしょうか?
0356デフォルトの名無しさん
2008/08/12(火) 20:41:57Emacsとか、Windowsならxyzzyとか。
処理系が自分で選べないならまだ自作ははやいと思う。
CLISPでWin32 APIをFFIで呼ぶか、ECLとCで作るか、どっちにしても
秀丸みたいなエディタを作ろうとすると、Cでエディタが作れるくらいの知識が居る。
LispWorksのエディタクラスなら10行くらいでEmacsライクだけど
日本語のサポートはまだ弱いし。
0357デフォルトの名無しさん
2008/08/12(火) 20:50:37それに関して思い出したので、私も質問させて下さい。
>CLISPでWin32 APIをFFIで呼ぶか、
の所なのですが、私はMacOSX環境なのでWin32を使う事ができないのですが
MacOSX環境でCLISPから呼び出せるものを教えて頂けないでしょうか
0358デフォルトの名無しさん
2008/08/12(火) 20:58:470359デフォルトの名無しさん
2008/08/12(火) 21:06:47Climacsという、CLIM上で実装されたEmacsライクなエディタがあるから、参考になるかもしれない。
ttp://common-lisp.net/project/climacs/
0360359
2008/08/12(火) 21:09:470361357
2008/08/12(火) 21:36:21したレスばかりなのですが家にはUNIXとMacOSXとLinuxしか無いのでwinodowsは
触った事も有りません。
そのためどのような環境がUNIX系では使えるのかを教えて頂きたかったのです。
0362デフォルトの名無しさん
2008/08/12(火) 21:46:490363デフォルトの名無しさん
2008/08/12(火) 21:50:13LTK(Tcl/Tk)、CLX(X)、CL-OPENGL(OpenGL)、CL-SDL(SDL)
あとはGTKとソケットで通信するやつとかはタフだったな。
0364357
2008/08/12(火) 22:06:02ありがとうございます。
煽りでは有りません、マジレスありがとうございます。
調べてみます。その中ではどれがあなたのおすすめですかね?
ブラウザとか作りたいのですが
0365デフォルトの名無しさん
2008/08/12(火) 23:26:28362-363じゃないけど
WEBブラウザ作るのならCL-OPENGLとCL-SDLは外した方がいい、あとLTKは向かなそう
X11ならCLXを選択するのが良いのかもしれないが化粧をさせたいならGTK経由が好いと思うが自分はさわったことないのでワカリマセン。
Webじゃなくグラフィックスのブラウズとかって意味だったらGLやSDLの方が扱いは簡単かも。
というか>>363が書いてくれたGUI関係のライブラリの元が(文中の括弧内のもの)どんなものなのか調べれば自分で選択できると思う。
0366デフォルトの名無しさん
2008/08/13(水) 00:21:47とりあえず、使ってるOSのフレームワークのことも知らない位なら、
既存のブラウザコンポーネント使って、独自UIを被せる位にしといた方がいいぞ。
GeckoとかKHTMLとか。MacならWebKitとかなのかな。
あまり知識のない状態で、下手に人気のある物作っちゃうと、
特にブラウザとかはセキュリティホールとかが恐すぎる。
単に知的好奇心を満たすため、とかなら大いに応援するんだけど。
0367357
2008/08/13(水) 00:42:13一応Cocoa-Rubyなどでばりばり動くブラウザやテキストエディタ、グラフ作成ソフト
などを作った事は有ります。
ですが、Lispでやってみたかったのです。Lispは一番好きな言語ですから。
何しろ調べてやってみる事にします。ありがとうございます。
0368デフォルトの名無しさん
2008/08/13(水) 01:08:59そういう経験があるなら、使ってる処理系のFFIの仕様とか、
それぞれのツールキットの特徴とか、事前に知らずにはいても、
ある程度、調べて把握することくらいはできそうだけどなー。
とはいえ、そちらの詳しい事情は興味無いからこれ以上詮索はしない。
ttp://clisp.cons.org/impnotes/faq.html#faq-gui
ttp://www.cliki.net/Graphics%20Toolkit
ttp://www.cliki.net/admin/search?words=cocoa
0369デフォルトの名無しさん
2008/08/14(木) 15:32:33どこかわすれたけど、OpenMCL(Clozure CL)でワープロを作って公開しているところ
があるよ。MacでGUIならOpenMCLをお勧めするよ。
GUI関連のサンプルもついているし。
0370250
2008/08/17(日) 16:38:13みなさんはどうやって覚えましたか?
0371デフォルトの名無しさん
2008/08/17(日) 16:50:430372デフォルトの名無しさん
2008/08/17(日) 16:59:02なんと言うか'覚えられません'だとLispと言うより
プログラミングについての話に成るような気がする。
やっぱり他の言語と同じようにサンプルコードとかを読みながら
やるのが良いんじゃないかな?
0373370
2008/08/17(日) 17:31:57Allegro Common LispでのGUIのサンプルコード自体が見つからなくて困っています
0374デフォルトの名無しさん
2008/08/17(日) 17:43:52http://www.franz.com/ftp/pub/acl80/pdf/cgide.pdf
http://www.franz.com/ftp/pub/acl80/pdf/acl-common-graphics.pdf
こんなのが見つかったけど・・・多分違うと思う
確かに情報が少ないね。Lisp系は情報が少ないからな・・
0375デフォルトの名無しさん
2008/08/17(日) 18:08:45↓チュートリアルとリファレンスで経験者はなんとかするみたいですが。
http://jp.franz.com/doodler/index-j.htm
GUI開発未経験でイベント駆動型開発未経験とするとちょっと難しく感じるかもしれません。
0376250
2008/08/17(日) 19:29:39イベント駆動型はまだ未経験ですがチュートリアルやpdfを参考にしてがんばりたいと思います
0377デフォルトの名無しさん
2008/08/17(日) 19:33:25Lispあんまり詳しくないけどAllegroのアプリはそんなに面倒じゃなかったよ、例の学習者向けエディションでもちゃんとFormでポイポイつくれちゃうので拍子抜けした。(もちろんロジックは慣れないLispでちょっと苦労したけど)
自分の道具作るのに非常に慣れてきて個人で購入したいんだけど全部franz経由でしか買えないのかなぁ?
ショップ売り無いのだよね?
0378デフォルトの名無しさん
2008/08/18(月) 02:29:15GUI構築用のDSL作ればいいのに
0379デフォルトの名無しさん
2008/08/18(月) 20:58:22Freeエディションのヒープ制限がきつすぎてお試しにすらならんので、
安いなら買ってみようかと思ったんだけど、値段の情報を見つけられんかった。
個人には売る気無いのかな
franz経由っていくらでした?
0380デフォルトの名無しさん
2008/08/18(月) 21:25:384年前の価格だけど、一応参考までに。
> 717 名前:デフォルトの名無しさん:04/06/29 08:23
> 先日のFranzセミナーでもらった価格表によると…
>
> Windows/Linux/FreeBSD/MacOS X版
> Professional 750,000 (395,000)
> Enterprise 1,400,000 (795,000)
> Platinum 2,000,000 (895,000)
>
> UNIX (Sun, IBM, HP, Compaq)版
> Professional 1,300,000 (520,000)
> Enterprise 2,000,000 (1,040,000)
> Platinum 2,750,000 (1,200,000)
>
> …高い… orz
> 718 名前:717:04/06/29 08:24
> あ、括弧の中はアカデミック価格ね。
0381デフォルトの名無しさん
2008/08/18(月) 22:39:25ありがとう。
ド、ドル?円だよね。あはh高い...唖然
0382デフォルトの名無しさん
2008/08/19(火) 02:06:45それなら、放送大学に入って、student editionのほうがいいんじゃないか?
ドル建てで5万円ほどだったから
0383デフォルトの名無しさん
2008/08/19(火) 06:45:180384デフォルトの名無しさん
2008/08/19(火) 07:26:00独自に設計した言語はダメだと思ってるらしい。
だから、自作といっても与えられた仕様を満たすことしか考えられないわけだ。
0385デフォルトの名無しさん
2008/08/19(火) 09:29:570386デフォルトの名無しさん
2008/08/19(火) 12:02:330387デフォルトの名無しさん
2008/08/19(火) 14:03:360388デフォルトの名無しさん
2008/08/19(火) 18:28:020389デフォルトの名無しさん
2008/08/19(火) 18:43:390390デフォルトの名無しさん
2008/08/19(火) 22:20:08clozure clに落ち着いたけど
比較するとallegroやっぱ爆速だな。貧乏人なのであきらめるしか
0391デフォルトの名無しさん
2008/08/20(水) 07:36:410392デフォルトの名無しさん
2008/08/20(水) 16:05:240393デフォルトの名無しさん
2008/08/21(木) 02:14:31値段的コストから見れば貧乏人向けではあるが、
きちんと選ばないと逆に高く付いてしまう。
時給換算的に。
0394デフォルトの名無しさん
2008/08/21(木) 09:53:370395250
2008/08/24(日) 08:58:37これはクロージャの効果で*fn*を呼び出すたびに無名関数内のcountの値が1ずつ増えていくのはわかるのですが
CL-USER> (funcall *fn*)
1
CL-USER> (funcall *fn*)
2
この無名関数の部分を普通の関数に置き換えて、処理自体は外に記述した場合もその関数はクロージャとして働いてくれるのですか?
実践Common Lisp66ページでのことです。Lisp始めたばかりで自分で試してみたくてもうまくいきません
0396デフォルトの名無しさん
2008/08/24(日) 09:29:20クロージャ以外のものはクロージャではない。
0397デフォルトの名無しさん
2008/08/24(日) 09:38:40こういう意味ならできる、が答かな。
CL-USER> (let ((count 0))
(defun count-up ()
(setf count (1+ count)))
(defun show-count ()
count))
CL-USER> (count-up)
1
CL-USER> (count-up)
2
0398250
2008/08/24(日) 12:32:30CPLUS
CL-USER> (defparameter *fn1* (let ((count 0)) #'cplus))
*FN1*
CL-USER> (funcall *fn1*)
; Evaluation aborted
すいませんどこがエラーになってしまったのでしょうか…
0399デフォルトの名無しさん
2008/08/24(日) 13:39:460400デフォルトの名無しさん
2008/08/24(日) 14:21:12てな, form を作りたいんですけど
form の評価結果が, vars で指定された書く変数に代入される
ような, 定型マクロってどっかに転がってませんか?
気持ちとして, やりたいことは
vars が '(a b c) で form が (1 2 3) を返す場合
`(let ,(mapcar #'fun ,vars ,,form) ;form の前の 「,,」 の気持を分かって
==> (let ((a 1) (b 2) (c 3)) ...
と, 展開したい
0401デフォルトの名無しさん
2008/08/24(日) 14:30:480402デフォルトの名無しさん
2008/08/24(日) 14:31:37destructuring-bindかな
こんな
(destructuring-bind (a b c) (list 1 2 3)
(+ a b c))
=>6
0403デフォルトの名無しさん
2008/08/24(日) 19:03:42ここで変数のスコープとかの理解が加われば先に勧めるよ。
クロージャは変数をキャプチャするが、それは「クロージャが作成された」環境の変数なんだ。
cplus が作成されたときに参照している count はグローバル環境の count で、let で作った束縛じゃない。
したがって、後から関数の外側で let で束縛を作っても意図した動作にはならない。
この場合は count がスペシャル変数としてグローバル環境に定義されていた場合はまた話が違うんだけどね…。
0404デフォルトの名無しさん
2008/08/24(日) 19:32:090405デフォルトの名無しさん
2008/08/24(日) 21:27:15OK、>>403も指摘しているが、>>250が何かを分かっていないことは分かった。
多分、レキシカルスコープが文字通り、「字面どおりに動作する」、ように作られている、
ってのが分かっていないんだと思う。レキシカルスコープを理解するのが先で、
それを実現するためにクロージャーがある、と思えばいいと思う。
>>399
黒田さん乙。そんなことができる立派なエンジニアが、残念ながら少ない、
ということは無視しないでくれよ。
0406デフォルトの名無しさん
2008/08/24(日) 21:40:00Cでいえば関数というより構造体みたいなイメージになってしまう
Body内を走査してbody内で見付からなければ環境から参照を取り込むみたいな
ますますよくわからなくなってくるわ
0407デフォルトの名無しさん
2008/08/24(日) 22:51:55構造体というか、クラスとクロージャがよく似ている。
オブジェクト指向の変な例え話よりも、クロージャを理解するといいよ。
0408デフォルトの名無しさん
2008/08/24(日) 23:05:50掲示板やBlog以外で見たことないんだけど
情報学科だと常識?
0409デフォルトの名無しさん
2008/08/24(日) 23:06:19ttp://www.itmedia.co.jp/enterprise/articles/0703/29/news069.html
shiroさんの書いたクロージャの説明記事。わかりやすいと思う。
0410デフォルトの名無しさん
2008/08/24(日) 23:19:30簡単でいいんで、LispでLispを実装してみるとすぐ分かるかもね。
「環境」というとわからないけど、所詮はコンピューター上のものだから。
そもそも、ものすごく特殊な処理をしてる訳じゃないし。
0411デフォルトの名無しさん
2008/08/24(日) 23:30:05そんなのloopマクロをemacs lispで実装できる程度しかlispの経験ない俺には無理だ
hogehoge schemerシリーズ、HtDP、Practical Common lisp、sicp、OnLispを読み通してから頑張ります
0412デフォルトの名無しさん
2008/08/25(月) 00:49:36ありがとうございます。
lispの勉強もしてみます
0413デフォルトの名無しさん
2008/08/26(火) 17:47:130414デフォルトの名無しさん
2008/08/26(火) 23:20:42asdf-worldのregistries ("worlds")の部分がわかりません。worldsと言うのは
何かの用語でしょうか?
UNIXのmake worldの様に特殊な用法ですか?
よろしくお願いします。
0415デフォルトの名無しさん
2008/08/27(水) 06:01:060416デフォルトの名無しさん
2008/08/27(水) 10:39:31ありがとうございます。
0417デフォルトの名無しさん
2008/08/27(水) 17:51:14roundの拡張で第二引数に四捨五入する桁を入力すると
その桁で四捨五入してくれます。
修正すべき所・つけるべき機能をご指摘願います。
(defun my-round (x y)
(cond ((<= y 0) (format t "*** - MY-ROUND: The second-paramerter must be more than 0 not ~A~%" y))
((= 1 y) (float (/ (round (* x 10)) 10)))
(t (float (/ (round (* x (expt 10 (1- y)))) (expt 10 (1- y)))))))
エラーメッセージの表示方法がわからなかったので手動で打ち込んだため
横に長いレスに成ってしまい申し訳有りません。
よろしくお願いします。
0418デフォルトの名無しさん
2008/08/27(水) 21:20:52(defun my-round2 (x y)
(float (* (round x #1=(expt 10 y)) #1#)))
(my-round2 95.6453 -3)
95.645
(my-round2 95.6453 -2)
95.65
あとCLに限らずroundは四捨五入とは違う(丁度真ん中は近い方の偶数になる)から
注意してね。
(round 2.5)
2
(round 2.6)
3
(round 3.5)
4
0419デフォルトの名無しさん
2008/08/27(水) 21:27:231-とか色々間違ってね? ということに今更試してみて気付いた。
0420デフォルトの名無しさん
2008/08/27(水) 22:05:010421デフォルトの名無しさん
2008/08/27(水) 23:02:03clispでは正常に動作しているのですが・・
0.876を小数第二位で四捨五入する場合
(*0.876 10)=8.76
(round 8.76) => 9
(float (/ 9 10)) => 0.9
と言う順番という事なのですが
0422417
2008/08/27(水) 23:25:56yは少数第y位だったんだな。
こっちのは正負が逆だ。たとえば100の位にまるめる場合
(my-round2 6543 2)
6500
小数第一位にまるめる場合
(my-round2 7.65 -1)
7.6
0423418
2008/08/27(水) 23:27:140424デフォルトの名無しさん
2008/08/27(水) 23:37:06roundの問題を解決するため正確な四捨五入をする関数を作っています。
初心者が自力でがんばるチャンスだと思うので、諸先輩がたしばしお待ち頂けませんか?
自力でがんばる精神を鍛えたいので・・・よろしくお願いします。
0425デフォルトの名無しさん
2008/08/28(木) 00:26:27(defun role (x)
(let((p 1))
(loop (if (and (<= (expt 10 (1- p)) x) (< x (expt 10 p)))
(return (expt 10 (1- p))) (incf p 1)))))
;;正確な四捨五入の作成
(defun justice-round (x)
(let ((i (mod (* 10 (float (/ (truncate (* x 10)) 10))) (role (* 10 x))))
(l (float (/ (truncate (* x 10)) 10)))
(j (float (truncate (* x 10)))))
(cond ((< x 1) (if (<= 5 j)
(+ 1 (- l (/ j 10)))
(- l (/ j 10))))
((>= x 1) (if (<= 5 i)
(+ 1 (- l (/ i 10)))
(- l (/ i 10)))))))
こんな長い時間でこんな物しかできずすいません。
デバッグに予想外に時間がかかってしまったので。
一応
>(justice-round 0.99)
1.0
>(justice-round 0.33)
0.0
>(justice-round 1.99)
2.0
>(justice-round 1.34)
1.0
と一応正確に小数第一位で四捨五入できています。
0426デフォルトの名無しさん
2008/08/28(木) 00:29:29またデバッグが必要な事がわかりました。
がんばってきます。僕の事は気にせずお休みください(待ってないとは思いますが...)
夜型なので基本寝ませんので明日の朝には仕上げます。
ありがとうございました。
0427デフォルトの名無しさん
2008/08/28(木) 01:26:59(defun role (x)
(let((p 1))
(loop (if (and (<= (expt 10 (1- p)) x) (< x (expt 10 p)))
(return (expt 10 (1- p))) (incf p 1)))))
;;一桁目を取り出す
(defun get-one-figure (x)
(let ((i (truncate x)))
(if (> 0 i)
()
(loop (if (> 10 i) (return i) (setf i (rem i (role i))))))))
;;正確な四捨五入の作成
(defun justice-round (x)
(let ((i (get-one-figure (* 10 x)))
(l (float (/ (truncate (* x 10)) 10)))
(j (truncate (* x 10))))
(cond ((< x 1) (if (<= 5 j)
(+ 1 (- l (/ j 10)))
(- l (/ j 10))))
((>= x 1) (if (<= 5 i)
(+ 1 (- l (/ i 10)))
(- l (/ i 10)))))))
一応正確な四捨五入ができているようです。
数字の一桁目を正確に取り出す事ができていなかったのが問題のようでした。
それでは早速先ほどの望みの桁の四捨五入の関数の実装に使ってみます。
get-one-figureには見るからにwhenを使うべき場面が有るのでそれも修正してみます。
0428デフォルトの名無しさん
2008/08/28(木) 02:19:19(defun role (x)
(let((p 1))
(loop (if (and (<= (expt 10 (1- p)) x) (< x (expt 10 p)))
(return (expt 10 (1- p))) (incf p 1)))))
;;一桁目を取り出す
(defun get-one-figure (x)
(when (> x 0)
(if (< x 1)
(float 0)
(let ((i (truncate x)))
(loop (if (> 10 i) (return i) (setf i (rem i (role i)))))))))
;;正確な四捨五入の作成
(defun justice-round (x)
(let ((i (get-one-figure (* 10 x)))
(l (float (/ (truncate (* x 10)) 10)))
(j (truncate (* x 10))))
(cond ((< x 1) (if (<= 5 j)
(+ 1 (- l (/ j 10)))
(- l (/ j 10))))
((>= x 1) (if (<= 5 i)
(+ 1 (- l (/ i 10)))
(- l (/ i 10)))))))
;;望みの桁での四捨五入
(defun my-round (x y)
(cond ((<= y 0) (format t "*** - MY-ROUND: The second-paramerter must be more than 0 not ~A~%" y))
((= y 1) (values (justice-round x) (- x (justice-round x))))
(t (values (/ (justice-round (* x (expt 10 (1- y)))) (expt 10 (1- y))) (- x (/ (justice-round (* x (expt 10 (1- y)))) (expt 10 (1- y))))))))
0429デフォルトの名無しさん
2008/08/28(木) 02:21:33作成する過程でvaluesの使い方やroundの問題点などをしれて非常に勉強に成りました。
では失礼します。
0430デフォルトの名無しさん
2008/08/28(木) 12:20:43知っておいてくれ。
(defun cut4 (v &optional (d 0))
(let* ((c (expt 10 d))
(a (float (* (floor (+ (/ v c) 0.5)) c))))
(values a (- v a))))
第2引数の意味は>>418と同じ。
(mapcar #'(lambda (d) (cut4 283.745 d)) '(-2 -1 0 1 2))
=> (283.75 283.7 284.0 280.0 300.0)
ついでに統計とか財務計算で四捨五入じゃなくてroundが使われるっていう理由も
知っておくと良いと思う。
0431429
2008/08/28(木) 12:29:26わかりました。Lisp以前の問題なようなのでLispに挑戦するのは
まだ早いようですね、もう少し他の事を知ってからやってみたいと思います。
スレ汚しでした、すいません。
皆さん本当にありがとうございした。
0432デフォルトの名無しさん
2008/08/28(木) 13:16:13sbcl.infoの1.2 Extensionsに
*Recursive Event Loop*というノンブロッキングI/Oの機能があると書かれているので
使ってみたいと思うのですが、どうすれば使えるのか判りません。
src/code/serve-event.lispがあり、SB!IMPLというパッケージの中で
serve-eventという関数が定義されているようなのですが、
起動した状態では#'serve-eventはバインドされておらず、
(require 'SB-IMPL)としたり、(require 'serve-event)としたりしても
Don't know how to require ... といわれてしまいます。
どうしたらよいのでしょうか。
0433デフォルトの名無しさん
2008/08/28(木) 16:47:170434デフォルトの名無しさん
2008/08/28(木) 21:39:54lisp以前の話って言い方がアレだったんで補足すると、
プログラムに書き下す前のアルゴリズムを考える段階の話、って意味ね。
考えたアルゴリズムを書き下す為の言語として
Lispは悪くない選択肢だと思うので、どんどんLispでコードを
書くとよいと思うよ。
>>432
SB-IMPL::serve-eventかな。使い方は知らない。
http://common-lisp.net/project/cmucl/doc/cmu-user/serve-event.html
これが元ネタ?
0435429
2008/08/28(木) 22:54:23ありがとうございます。
いつも書くときに直感で書いてデバッグをするタイプなので
アルゴリズムを考える段階が少ないようですね。
ありがとうございます。気をつけて書いてみたいと思います。
0436デフォルトの名無しさん
2008/08/29(金) 12:22:11はありませんか?仕事柄複数のパソコンを
行き来するので勝手にインストールのも
マナー違反ですしUSBメモリー等に入れて
使える物が欲しいです。MacとWindowsそれぞれについて
お教え下さい。
若しくはC言語等でインタプリタを書き、
その都度コンパイルするのがベストでしょうか?
0437デフォルトの名無しさん
2008/08/29(金) 12:40:47USB メモリを挿してあれこれするのもマナー違反だな多分
0438デフォルトの名無しさん
2008/08/29(金) 13:29:33Mac OS Xは/Volume/ボリューム名/にマウントされるから、
./configure --prefix==/Volume/ボリューム名
でコンパイルすればOKでしょう。(ボリューム名はNO NAMEのままでもいい)
Microsoft Windowsは、差し込むごとにドライブ名が変るから、
その方法は使えないし、処理系を選ぶんじゃないだろうか。(良く知りません> Win)
0439デフォルトの名無しさん
2008/08/29(金) 17:33:01聞かないでいれようとしたりUSBメモリを使おうとするからマナー違反でしょ。
USBメモリもデータ漏洩・ウイルス混入につながるから何も聞かずにやるのは
まずいことだよ。こっそりやるんじゃなくて、単刀直入に利用するPCの管理者
に許可をもらっといたら?
0440デフォルトの名無しさん
2008/08/29(金) 20:11:57webから使える様にすればいいんじゃない?
0441429
2008/08/29(金) 20:39:38使える物が有ればと思っていました。ありがとうございました。
0442デフォルトの名無しさん
2008/08/30(土) 02:44:12著作権などについて詳しくないのでよろしくお願いします。
0443デフォルトの名無しさん
2008/08/30(土) 02:48:010444デフォルトの名無しさん
2008/08/30(土) 02:57:23助かりました
0445デフォルトの名無しさん
2008/08/30(土) 11:30:10"CLISP" 自体が登録商標ということはないので大丈夫。
一般に、登録商標になっているものの文字列が書かれているとかで
なければ大丈夫。
0446デフォルトの名無しさん
2008/08/30(土) 16:46:01商品名にでもしない限り全く何も問題ない。
0447デフォルトの名無しさん
2008/08/30(土) 17:29:210448デフォルトの名無しさん
2008/08/30(土) 17:31:000449デフォルトの名無しさん
2008/08/30(土) 23:55:17そもそも流行言語じゃないしなwでもああいう良い本が日本語になるのは良いことだ。
英語版で分かってたつもりだけど、相当読み飛ばしてたことに気付いたw
0450デフォルトの名無しさん
2008/08/31(日) 19:56:17おまえは俺か。日本語だと読むコストが低くていいよな。
脳味噌を英語に使わなくていい分、一週間で全部読めた。
0451デフォルトの名無しさん
2008/08/31(日) 23:30:350452デフォルトの名無しさん
2008/09/02(火) 00:13:36それともどこかに許可を取るべきでしょうか?
0453デフォルトの名無しさん
2008/09/02(火) 00:19:21e-mailを送り質問してみたいので聞くべき事のリストなど有りましたら
よろしくお願いします。
0454デフォルトの名無しさん
2008/09/02(火) 13:02:02あのシンプルなIDEは使いづらいな
30行ぐらいの複雑な関数書いてるとなんだか分けわからなくなる
やっぱEmacsが一番なのだろうか?
0455デフォルトの名無しさん
2008/09/02(火) 15:04:17こちらに合流してもいいものなのでしょうか?
0456デフォルトの名無しさん
2008/09/02(火) 15:08:010457デフォルトの名無しさん
2008/09/02(火) 15:21:33相応しい板にスレを建てるほうが良いだろう。
あくまで私見だけど、シミュレート板はあまり相応しいとは思わなかった。
0458デフォルトの名無しさん
2008/09/02(火) 16:33:22【数式処理システム】 Maxima 【Common Lisp】
http://science6.2ch.net/test/read.cgi/math/1220340695/
0459デフォルトの名無しさん
2008/09/03(水) 08:12:34さらっとすげーこと書いてるな。あれすっごく厚いけど一人で全部やる気なの?
0460デフォルトの名無しさん
2008/09/03(水) 10:19:45あくまで自由時間ぐらいですが、まだ学生なので自由時間がある程度有るので。
一応許可が取れたらwikiでもつくってばりばり翻訳して行きたいのですが
最初は自分でがんばって翻訳して行き、ある程度まとまったら
お知らせしますのでチェックして頂けると有りがたいです。
Introdunctionとかは長いんですよね。
functionとかは一日4ページぐらいはできそうなのですが
それよりも英語的な礼儀に自信が無いのでどのように書けば良いのかがわかりませんね...orz
丁寧なe-mailの文面どなたかお願いできないでしょうか?(いきなりお願いになるのですが)
HyperSpecのKent Pitmanという方に送ってみるのがベストでしょうか?
0461デフォルトの名無しさん
2008/09/03(水) 15:55:000462デフォルトの名無しさん
2008/09/03(水) 16:40:31I want to translate HyperSpec to Japanese.
Because HyperSpec is very inportant to develop CommonLisp program.
And Japane also has many developers of CommonLisp.
So Translate HyperSpec to Japanese is very important to Japanese CommonLisp programer.
ええとこの後に丁寧に
HyperSpecを翻訳する許可をいただけないでしょうか?
と言いたいのですが
よろしくお願いします。
他の怪しい点も指摘願います。
0463デフォルトの名無しさん
2008/09/03(水) 19:07:110464デフォルトの名無しさん
2008/09/03(水) 19:23:03頭にPleaseつければおk
0465デフォルトの名無しさん
2008/09/03(水) 19:52:32important ですねすいませんでした。
>>464
Pleas give me permission translation HyperSpec to Japanese
で良いでしょうか?
Hello,my name is hoge(私の名前).
I want to translate HyperSpec to Japanese.
Because HyperSpec is very inportant to develop CommonLisp program.
And Japane also has many developers of CommonLisp.
So Translate HyperSpec to Japanese is very important to Japanese CommonLisp programer.
Please give me permission to translation HyperSpec to Japanese.
がまとめでよろしいですか?
0466465
2008/09/03(水) 19:55:270467デフォルトの名無しさん
2008/09/03(水) 19:58:04・成果はフリーで公開する
・公開するときはHyperSpecの翻訳であることを明記する
・商用利用(出版等)する場合は改めて許諾を求める
・その他に条件があったら教えてくれ
くらいは、あらかじめ言っておくべきかも。
0468465
2008/09/03(水) 21:08:05I promise you to keep these rule:
・HyperSpec(written in Japanese) is open free.
・I will cleary describe that it is translation of HyperSpec, in case I open it to the public.
・When I make commercial use (publication), I demand consent some other time.
Please give me a information if there are any regulations to keep over my list.
0469デフォルトの名無しさん
2008/09/03(水) 22:36:55HyperSpec is f*cking awesome!
gimme permission to translate HyperSpec to jap, huh?
0470デフォルトの名無しさん
2008/09/03(水) 22:43:21hyperspecはF * cking awesome !
ただでもらえるものを翻訳する許可をhyperspecジャップ、ホですか?
0471デフォルトの名無しさん
2008/09/03(水) 22:47:390472デフォルトの名無しさん
2008/09/03(水) 22:52:32すばらしい洞察
0473465
2008/09/03(水) 22:57:43なんだか白紙にしたほうが良いのでしょうか?
流れが読めません。
0474デフォルトの名無しさん
2008/09/03(水) 23:01:29翻訳は自由にできる。誰からも許可なんて要らない。勝手にやればよい。
でも、公開するには原著者の許可が必要ってこと。
もちろん、翻訳する前にあらかじめ公開の許可を得ておくのは悪いことではないが、
「翻訳の許可」を貰うという表現には違和感を禁じ得ない。
0475465
2008/09/03(水) 23:36:15I want to get permission to translation HyperSpec to Japanese.
Because HyperSpec is very important to develop CommonLisp program.
And Japane also has many developers of CommonLisp.
So Translate HyperSpec to Japanese is very important to Japanese CommonLisp programer.
Please give me permission to translation HyperSpec to Japanese.
If I got permission to translation HyperSpec to Japanese,
I promise you to keep these rule:
・HyperSpec(written in Japanese) is open free.
・I will cleary describe that it is translation of HyperSpec, in case I open it to the public.
・When I make commercial use (publication), I demand consent some other time.
Please give me a information if there are any regulations to keep over my list.
上の文を少しかえてみました。
添削よろしくお願いします。
0476デフォルトの名無しさん
2008/09/03(水) 23:39:04American National Standard X3.226はANSIが著作権を持ってて、LispWorksが
ANSIから許可を得て公開してるわけだけど、翻訳の公開が許可されるかどうかは、
LispWorksがANSIに対してどういう条件で許可をもらってるのかにも影響されるよね。
ややこしそうだな。('A`)
>>460
ハイパーテキストのマークアップはPitmanが書いたものだけど、その作業に資金援助したのが
LispWorksで、できあがったHyperSpec自体の著作権もLispWorksが所有してるらしいから、
連絡を取るとすれば相手はLispWorksだと思います。
0477デフォルトの名無しさん
2008/09/03(水) 23:53:24>Would you like to permit me to make and release HyperSpec Japanese translation?
0478デフォルトの名無しさん
2008/09/03(水) 23:54:46法律上、翻訳権と公表権は別々のものだと思ってた
よかったらソース教えてちょうだい
0479デフォルトの名無しさん
2008/09/04(木) 00:00:22そういう意味での「翻訳権」なんてものは存在しない
0480デフォルトの名無しさん
2008/09/04(木) 00:01:49Lispは入門者とかだけど英語はできるので翻訳もできます!
とかなら、もうちょっと小物から手をつけたほうがいいかも。
0481デフォルトの名無しさん
2008/09/04(木) 00:16:510482デフォルトの名無しさん
2008/09/04(木) 00:19:14英語に慣れてるって印象が無いんだよ。その点はちょっと心配だな。
0483デフォルトの名無しさん
2008/09/04(木) 00:20:43そのへんは俺も気になってたんだけど、ググっても「翻訳権」という言葉は実質的に「翻訳出版権」と
同義で使われてるっぽくて、出版公表が前提になってるみたい。個人で訳して公表しないぶんには
権利侵害にはならないのでは。素人判断なので、もし間違ってたら申し訳ない。
>>480
465氏の書いた英文をみるかぎり、「英語はできる」とはとても思えないのは俺だけだろうか。
こんな文法的にもあやしい英文を書く人が、はたして正確に訳せるのだろうかという疑念が……。
465氏にはたいへん申し訳ないが、これまでのレスを読んだ限りでの率直な印象です。
0484465
2008/09/04(木) 00:24:28むしろCommonLispでプログラミングはできるが英語のドキュメントを
わざわざ読むのはおっくうだと言うタイプの人間だと思います。
HyperSpecは結構使いますね。
でもやはり日本語かどうかでためらってる入門者もいると思いまして。
>>447
ありがとうございます。
>>446
LispWorksですか、確かにそんな気もしていたのですが。
確かにややこしそうですな たらい回しにされる予感...orz
0485デフォルトの名無しさん
2008/09/04(木) 00:24:320486デフォルトの名無しさん
2008/09/04(木) 00:30:07> 個人で訳して公表しないぶんには
ならないに決まってんじゃん。
著作権は財産権なんだけど、財産権侵害してないもの。
翻訳権という言葉は著作権法に出てくる。
> (翻訳権、翻案権等)
> 第二十七条 著作者は、その著作物を翻訳し、編曲し、
> 若しくは変形し、又は脚色し、映画化し、その他翻案する権利を専有する。
出版に限らず、無断で公表すれば駄目。
例えば、翻訳した戯曲の上演、映画の字幕を勝手につけるなど。
0487デフォルトの名無しさん
2008/09/04(木) 00:49:350488デフォルトの名無しさん
2008/09/04(木) 00:53:58許可さえ下りれば、翻訳の協力者も現れるかもしれないし
0489デフォルトの名無しさん
2008/09/04(木) 00:55:47俺は絶対に許さないぞ!
0490465
2008/09/04(木) 00:59:49I want to get permission to translation HyperSpec to Japanese.
Because HyperSpec is very important to develop CommonLisp program.
And Japane also has many developers of CommonLisp.
So Translate HyperSpec to Japanese is very important to Japanese CommonLisp programer.
Would you like to permit me to make and release HyperSpec Japanese translation?
If I got permission to translation HyperSpec to Japanese,
I promise you to keep these rule:
・HyperSpec(written in Japanese) is open free.
・I will cleary describe that it is translation of HyperSpec, in case I open it to the public.
・When I make commercial use (publication), I demand consent some other time.
Please give me a information if there are any regulations to keep over my list.
ですかね。皆さんお疲れだと思います。
おやすみなさい
0491デフォルトの名無しさん
2008/09/04(木) 01:04:500492デフォルトの名無しさん
2008/09/04(木) 01:16:02訳す前に日本語をどうにかした方がいい。
0493デフォルトの名無しさん
2008/09/04(木) 01:21:38Japaneとか見ると、なんかもうどうしようもないな。
何がしたいのかは説明しつつ、
権利関連の事を尋ねる感じのメールにしたほうが良いかな。
クレクレメールでむこうにメリットが何ひとつねーな。w
0494デフォルトの名無しさん
2008/09/04(木) 01:35:31I would like to translate the HyperSpec into Japanese, and to make it public.
I think this will be welcomed by the Japanese Lisp community.
Could you give us the permission to do that ?
If any terms or agreements are required, please let me know.
I'm looking forward to your favorable reply. Thank you.
俺が書くならこんな感じかなあ。へたくそだけど。
0495デフォルトの名無しさん
2008/09/04(木) 02:09:50I am making a Japanese translation of HyperSpec now.
その和訳バージョンを公開したいと考えています。
I want to open the Japanese translation version to the public.
和訳の公開を許可してくれますか?
Could you permit opening the Japanese translation to the public?
背景について説明します。
It explains the background.
LISPプログラマにとって、HyperSpecの内容はとても有益であると思います。
I think contents on the HyperSpec is very profitable for the LISP programmer.
しかし、こういった情報が和訳されていないため、
LISPを学ぶのは日本では難しいと思われています。
But, Japanese thinks that it is difficult to learn,
because such information is not translated into Japanese.
そこで、HyperSpecの翻訳版の公開を行い、
日本のLispプログラマの理解度を高めたいと思います。
Then, the translation version of HyperSpec is opened to the public.
I want to improve the understanding level of the Lisp programmer in
Japan.
もしあなたから許諾を得ることができたなら、
公開する際に以下のテキストを添える事を考えています。
If permission was able to be obtained from you, it thinks the
following texts are affixed when opening it to the public.
他に付けるべき条項があったら追加してください。
Besides, please add it when there are articles that should be put.
英語板行けって感じ
0496デフォルトの名無しさん
2008/09/04(木) 02:24:020498デフォルトの名無しさん
2008/09/04(木) 07:38:480499465
2008/09/04(木) 16:41:31そちらの方が良いのでしょうか?
0500デフォルトの名無しさん
2008/09/04(木) 17:02:46訳したいと思った人が動けばいいよ。
0502デフォルトの名無しさん
2008/09/04(木) 18:40:38それは出す人が決めること。英語は悪くない。
0504デフォルトの名無しさん
2008/09/04(木) 22:07:27学生ならちゃんと、どこの学校で何を学ぶ学生とか書いたほうがいいと思う。
とにかく、怪しい者ではないということを示す意味なので、コンピューターに関係
なくても別に良いと思う。
0505デフォルトの名無しさん
2008/09/07(日) 02:29:41入門者にお勧めの書籍はありますか?
英語が読めないわけではないですができれば日本語のものがいいです。
0506デフォルトの名無しさん
2008/09/07(日) 02:37:200507デフォルトの名無しさん
2008/09/07(日) 07:39:49基本だったら、ansi common lisp, 湯浅氏の岩波の本
実践common lispもいいけど基本のつぎにくる本だと思う。
0508デフォルトの名無しさん
2008/09/07(日) 11:17:17環境の導入とか話もないし、解説が簡潔すぎて入門には難しいような。
0509デフォルトの名無しさん
2008/09/07(日) 11:54:310510デフォルトの名無しさん
2008/09/07(日) 12:03:08xyzzyの*scratch*で試しながら読んだよ。
割と良かったと思うけどな。
0511デフォルトの名無しさん
2008/09/07(日) 12:07:13507だけど、感覚の違いでどっちかという話をしてもあまり意味が無いと思う。
べつにその感覚を否定しようとは思ってませんから。
0512デフォルトの名無しさん
2008/09/07(日) 12:11:34傍観者だが、>>508は2行目でちゃんと理由を挙げていると思う。
君のレスのほうがよほど意味が無いのでは?
0513デフォルトの名無しさん
2008/09/07(日) 12:19:160514505
2008/09/07(日) 12:31:09とりあえず今日の朝見て、挙がっていた ANSI Common Lisp と実践 CommonLisp を買ってきてみました。
Common Lisp 自体の本はあまりないようでした。質問できるほど選択肢はないのですかね。
どちらも考えていたよりは厚くないので、雰囲気を見ながらすすめてみます。
とはいえ、関数型言語ははじめてなので、今ちょっと打ったところでは思ったより時間がかかりそうですが。。
0515デフォルトの名無しさん
2008/09/07(日) 13:00:120516デフォルトの名無しさん
2008/09/07(日) 13:28:210517デフォルトの名無しさん
2008/09/07(日) 16:07:58うまく伝わらなかったのかも知れないが、意味が無いというのは
どっちがよいという話をしても結論がでないだろうなってことですよ。
511にかいたとおり否定しているのではないので。
喧嘩をふっかけてるのではないよ。512さんはなんか勘違いしてる
ように思うが。
0518デフォルトの名無しさん
2008/09/07(日) 16:21:51ふっかけていると取られても仕方ないのでは?
もし喧嘩をふっかけてるのではないのなら>>511を書いた目的が不明瞭。
0519デフォルトの名無しさん
2008/09/07(日) 16:28:41絡んでくるね。分からないなら分からなくて結構ですよ。この手のレスを続ける
のもこれでおしまいにしておきます。
0520デフォルトの名無しさん
2008/09/07(日) 16:49:000521デフォルトの名無しさん
2008/09/07(日) 16:52:18明らかに議論の進め方の失敗パターンだな。
0522デフォルトの名無しさん
2008/09/07(日) 16:55:550523デフォルトの名無しさん
2008/09/07(日) 17:47:250524デフォルトの名無しさん
2008/09/08(月) 01:53:33血の気が多いのはイクナイ
0525デフォルトの名無しさん
2008/09/08(月) 02:07:13bit別冊が復刊してくれたらそれが一番いいような気がするんだが、復刊.comは相変わらず賛同者でないね。
0526デフォルトの名無しさん
2008/09/08(月) 02:12:02CLOSの本のことなら入門書とは言えないと思う。
CLtL のことなら CLtL2 があるのでいまさらいいでしょ。
ちなみに CLtL2 は「入門書としても」お勧め。(厚さで恐れてはいけない)
他にbit別冊で何かあったっけ?
0527デフォルトの名無しさん
2008/09/08(月) 02:35:59アレすごく興味深くてそれ以後Lisp好きになったんだけど、俺が変態なんだろうか。
(まぁそれ以前のLisp本の古いの(倍風館のとか)読んでいるから読み下しのネタができてたせいかもしれない)
0529デフォルトの名無しさん
2008/09/08(月) 11:18:25結構いないかな?
0530デフォルトの名無しさん
2008/09/08(月) 13:12:22復刊してほしい本はたくさんあるけど。
0531デフォルトの名無しさん
2008/09/08(月) 15:46:52ttp://www.morikita.co.jp/shoshi/ISBN978-4-627-83609-9.html
0532デフォルトの名無しさん
2008/09/08(月) 15:59:59簡単にPOD版にできる電子データがあるかどうかが最初の分岐点
という気もするが。
0533デフォルトの名無しさん
2008/09/08(月) 16:05:330534デフォルトの名無しさん
2008/09/08(月) 19:48:07「結構昔からTeX入校許可してたんでねぇの?」的な
イメージがあるんだが、ちゃうの?
0535デフォルトの名無しさん
2008/09/09(火) 00:39:41いっそ、bitの月例号と、増刊号すべてを電子化して
復刊してもらえないのかね。
物故者におなりになった、先生方もいらっしゃるので、版権とか
問題あるのかな。
最近、日本評論社の、島内先生の、ルービックキューブ
本が復刊されたけれどね。
0536465
2008/09/09(火) 00:41:28脈なし(?)でしょうか?
0537465
2008/09/10(水) 02:02:38Hello hoge.
Thank you for your enquiry.
We would like to understand what demand exists, so I have some
questions for you:
Do Japanese Lispers actually ask for a translated version of the
HyperSpec?
Common Lisp was standardized 14 years ago. Why is a Japanese
translation needed now?
We would also like to understand how you would propose to make a
translation:
Would you use machine translation?
Would you aim to translate all of the document, or just some parts?
Which parts?
I look forward to hearing from you.
regards
Dave
--
Dave Fox
LispWorks Ltd
http://www.lispworks.com/
0538465
2008/09/10(水) 02:08:01どのくらいの人が希望しているのかを調べてみないといけない。
なぜ、今になって翻訳するのか?
機械翻訳を使うかどうか?(私は基本的には使わないスタンスでやるつもりです。)
すべてを翻訳するのかそれとも一部か?(私はがんばって全部やってみたいです。)
1,2については考えなければ成りませんね。
0539493
2008/09/10(水) 03:10:53どんな需要があるのか知りたいから質問するよ。
> なぜ、今になって翻訳するのか?
14年前の標準化になぜ翻訳が今になって必要なの?
> We would also like to understand how you would propose to make a
translation:
どういう方法で翻訳を作るのかも知りたいんだけど。
HyperSpecを訳すつもりなら英日訳はがんばれ。
こんな簡単(だけど意味が変わる)語や文を落されるとすごく不安なので。
0540デフォルトの名無しさん
2008/09/10(水) 03:43:51つもりだったのですが・・・
0541493
2008/09/10(水) 05:05:571. 2.は具体的な事はあんまり言えないと思いますね。
なので、言及できそうなのは
1.lisp本の邦訳がまぁまぁ出版されている事と、日本人の英語アレルギー
2.lisp-users.jpとか、最近活動が活発になっている印象がある?
といったことくらいでしょうか。
追加
2.5 どういう方法で翻訳を作るのかも知りたいんだけど。
これは >>460 のままですかね。
共同作業をするつもりなら資源やら環境やらは提供するので、がんばってください。
0542デフォルトの名無しさん
2008/09/10(水) 07:39:460543デフォルトの名無しさん
2008/09/10(水) 07:51:27でなければそんなタダ働きはとうていモチベーションが続かんし
訳す価値がある本なら翻訳する意味を問う方がどうかしているけどね
0544デフォルトの名無しさん
2008/09/10(水) 07:59:22削除して貰えよ。
0545デフォルトの名無しさん
2008/09/10(水) 08:24:260546デフォルトの名無しさん
2008/09/10(水) 08:25:430547デフォルトの名無しさん
2008/09/10(水) 11:16:09知ってて真似ようとしているのか,知らずにやってるのか.
まずは自分ひとりでこつこつ訳していって,半分とか三分の一とか
できたところで,誰かに読んでもらい,指摘された部分を直す,
みたいな感じで進めていき,とりあえず形にする.
その後で許諾をとって *公式に* 公開する.
というパターンじゃないと多分途中で投げ出すことになると思う.
0548デフォルトの名無しさん
2008/09/10(水) 11:57:53翻訳が必要なぐらい盛り上がっているなら、きっかけが何で、どれぐらいの人数のLisperが居るのかとか。
それと後半部分は、送られてきた英語が不自然だから、機械翻訳なのかという質問をオブラートに包んでいる。
だから、その英語力じゃ全部を訳すんじゃないんだろ?という質問になっている。
返事を送る前に書いた英語をだれかに添削してもらえないのかな?
0549デフォルトの名無しさん
2008/09/10(水) 12:24:20訳す価値は理屈じゃないんだよ
理屈だけの動機では弱いから本人の気持ちを聞いてる
0550デフォルトの名無しさん
2008/09/10(水) 12:44:29で、処理系を何にするか検討中なんですが、商用なら
サポートがしっかりしてそうなAllegro、フリーなら
まだちゃんとアップデートされてるECLと考えてます。
こっちの方がいいんじゃないの、などのご意見がありましたら
是非お願いします。
0551デフォルトの名無しさん
2008/09/10(水) 13:17:47仕事だからあまり晒せないのかもしれないが「とあるPCアプリケーション」では漠然としすぎる。
一品物の業務ソフトなのか、パッケージとして売るのか。
クライアントソフトか、GUIはあるのか、サーバーソフトか、Webアプリケーションか、とか、
もうちょっと具体的な情報がなければ望む答えは得られないであろう。
0552デフォルトの名無しさん
2008/09/10(水) 13:42:53自分が今まで使ってた処理系が一番いいんじゃないの?
0553デフォルトの名無しさん
2008/09/10(水) 14:25:15そんなところだな。
*現状は日本語の情報があまりにも少ないために普及に悪影響がでている。昨年、
on lispの和訳、今年になってpractical common lispの和訳が出版された。さらに、
日本のローカルのlispコミュニティまで設立されてきて、日本のlisp界は盛り上がり
つつあるところ。
*度々、翻訳の話題は出てきているけど、あまりにも量がおおいのとライセンスの関
係で二の足を踏んでいただけだ。
とでも書いておけばいいんじゃないか。あえて英訳はしない。
共立と言えば、
> 考える道具としての Lisp入門
> http://www.kyoritsu-pub.co.jp/bookhtml/0306/000713.html
が復活してるね。
それからかなり昔だが、
もともとbit別冊だった「計算幾何学と地理情報処理」が、
増補改訂して単行本になったという前例がある。
0555デフォルトの名無しさん
2008/09/10(水) 18:09:460556デフォルトの名無しさん
2008/09/10(水) 21:28:18いや、俺は逆だと思って>>548を書いた。
ANSI Common Lispで商売をしているLispWorks社にとって、仕様書であるHyperSpecはとても大事なものだから、
もし日本のlisp界は盛り上がりつつあり将来重要なマーケットになるのだとしたら、
あまり翻訳が上手ではなさそうな人に独占翻訳権を与えることは出来ないと考えるだろう。それが将来のビジネスへの保険だよね。
もし一部を訳してブログに発表するだけであれば、将来ビジネスチャンスが訪れた時に彼らが主導であらためて全訳を出せる。
だから、訳はあまり上手でなくても許可できるんじゃないかな。
これはオレの考えで、彼らが実際に懸念していることが何かは分からない。
だから、むしろ彼らの意向を聞くような感じで返答してみる方がいいと思う。
例えば、「自分としてはがんばって全部訳したいと考えているが、LispWorks社が独占翻訳権や著作権のことで考えがあるのなら教えて欲しい。
その考えを尊重して、一部を訳すだけにしてもいい。また、権利関係についてはそちらの意向に従うつもりである。」ということを表明するべきだと思う。
もちろん最初から完全に譲歩せず徐々に譲歩して、翻訳を公開し易い落し所を見つけてもいいと思う。
最後に「自分はビジネスとしての利益は求めていないし、Lispコミュニティーに対する奉仕活動としてこの翻訳を行いたいと考えており、
良い翻訳になるよう最大限の努力をするつもりだ。」と付け加えればいいでしょう。
0558465
2008/09/10(水) 22:50:07むしろUNIXのコマンド集のページが沢山有るように
CommonLispの関数の情報をもっと自由に共有できるようになるのが理想なんですけどね。
権利がいろいろと立て込んでいるので簡単にはHyperSpecを参照に
自作マニュアルを作成する訳にもいけないですしね。
0559デフォルトの名無しさん
2008/09/11(木) 08:33:33http://www.haible.de/bruno/packages-ffcall-README.html
から ffcallを取ってきてインストールすれば解決します。
0560デフォルトの名無しさん
2008/09/11(木) 15:11:24どのくらいの規模か解析してみた(htmlのみ、コード含む)
Hyper Spec
ファイル数:2318
同じ文の繰り返し:175595 words
不一致(1回しか出現しない文):578203
合計:753798
比較用に
CLtL
ファイル数:330
繰り返し:26872
不一致:279956
合計:306828
CLtL の約2.5倍ですね。すごい。
0561デフォルトの名無しさん
2008/09/11(木) 16:05:21553だけど、
ふむふむ。
向こうが聞いていることに対して日本の最近の動向はちゃんと伝えた方がいいんじゃないかな。
小手先のテクニックで(独占)翻訳権を得たところで、後問題が山積みになるよね。
だから、独占翻訳権にこだわる必要もないのですよ。
common lispの動向を考えるとオープンソースの流れは十分理解されているだろうから、それで
お金をとるとなればおっしゃるような状況になるが、現実はオリジナルのhyperspecそのものが
オープンな形で公開されているということから、日本語だけはお金をとるということはしないだろ
うししたところで利益にならないだろう。日本では閉鎖的な動向にもっていこうとしがちだけど、
見てる限り世界の動向ソースはオープン化に向かい言語はlispに向かう。(笑)ということで日本
とは逆だよ。その点は踏まえて考えた方がいいと思うね。オープンなところで盛り上がったもの
を独占的に扱って、有料にしたり排除するってのは結果として盛り下がることは当然予測でき
るよ。(この辺はのまネコと同じだよ。)
むしろ、動向を正確に伝えた上でLispworksの日本語環境(utf8環境かな)の整備に本腰を入れ
てくれるならばよいと思うんだがね。おまけに、正確な翻訳をするようになればその人はlispworks
に雇われるかもしれませんよ。
また、あのメールでの返事は提案者の英語力のテストも兼ねてると思ったんだけどね。その点
で同意してたかな。
0562デフォルトの名無しさん
2008/09/11(木) 16:20:12>だから、独占翻訳権にこだわる必要もないのですよ。
翻訳権を取得しないと著作権法違反になるから、ちゃんと交渉しないと駄目だろ常考。
0563デフォルトの名無しさん
2008/09/11(木) 16:29:420564465
2008/09/11(木) 16:56:29*Japan commonLisp community has become very prosperous recently.
For example:
・Last year OnLisp was translate into Japanese.
・In this year "Practical CommonLisp (translated into Japanese)" was published in Japan.
・Japanese local Lisp community was organize recently.
*Many times a topic of translate HyperSpec into Japanese,but We hesitate to translate HyperSpec into Japanese cause HyperSpec is a very large quantity and license.
添削よろしくお願いします。
0565デフォルトの名無しさん
2008/09/11(木) 17:43:40"Many times ..." の文は文法がおかしい。元の日本語はどんなの?
0566465
2008/09/11(木) 18:04:00再読するとなんだか変なのですが。
>>553
の文がとても良いと感じたのでちょっと訳してみたのですが
0567デフォルトの名無しさん
2008/09/11(木) 18:10:41And last month, Peter Seinel's "Practical Common Lisp"was translated and published from Ohmsha, too.
These books are aquiring a lot of new programmers to Lisp community.
But, because of long time no publishment about common lisp, especially in Japan, there are no good reference, except above two books.
Now People are demanding Japanese translation of Hyperspec, for learning.
These demands push me to decide translation of it for this community.
0569デフォルトの名無しさん
2008/09/11(木) 18:24:55some people had suggested me that HyperSpec is copyrighted by you, Lispworks.
So I mailed you about possibility about your autorization of translation it.
0570デフォルトの名無しさん
2008/09/11(木) 18:30:34I hope your acception of my plan.
yours sincerely,
>>465の名前
0571デフォルトの名無しさん
2008/09/11(木) 18:33:27× Peter Seinel's
○ Peter Seibel's
0572デフォルトの名無しさん
2008/09/11(木) 18:41:31>>563 が正解です。
0573デフォルトの名無しさん
2008/09/11(木) 18:42:34>>Lispaworksの社名と住所
Dear Mr. Dave Fox
Thank you for your answers and questions.
Let me introduce current situation in Japan.
>>567 >>571の修正
>>569
>>570
こんな感じでどうかな?
0574デフォルトの名無しさん
2008/09/11(木) 18:46:12○ Let me introduce you current situation about Lisp community in Japan.
0575デフォルトの名無しさん
2008/09/11(木) 18:49:45-------------------------------------------------
>>465の名前と住所
>>Lispaworksの社名と住所
Dear Mr. Dave Fox
Thank you for your answers and questions.
Let me introduce you current situation about Lisp community in Japan.
Last year, Mr. Paul Graham's "On Lisp" was translated by Mr. Noda, and published from Ohmsha publishing co ltd.
And last month, Mr. Peter Seibel's "Practical Common Lisp"was translated and published from Ohmsha, too.
These books are aquiring a lot of new programmers to Lisp community.
But, because of long time no publishment about common lisp, especially in Japan, there are no good reference, except above two books.
Now People are demanding Japanese translation of Hyperspec, for learning.
These demands push me to decide translation of it for this community.
In this community, I have speaked about my plan about translation of HyperSpec,
some people had suggested me that HyperSpec is copyrighted by you, Lispworks.
So I mailed you about possibility about your autorization of translation it.
I am willing to accept your suggestion about copyrights, because of my small knowledge about it, especially in USA.
I hope your acception of my plan.
yours sincerely,
>>465の名前
-------------------------------------------------
0576デフォルトの名無しさん
2008/09/11(木) 18:57:25>>465のプランを書かないといけないね。
0577465
2008/09/11(木) 19:04:03はじめは主に関数だと思いますが
0578デフォルトの名無しさん
2008/09/11(木) 19:04:29・Dear Sir/Madam → yours faithfully.
・To whom it may concern → yours faithfully.
【送り先の名前を指定する場合】
・Dear 会ったこと無い人やボスや目上の人の名前 → yours sincerely.
・Dear 友達や近しい人の名前 → best wishes, best regards, warm regards, kind regards, warm wishesなど。
0579デフォルトの名無しさん
2008/09/11(木) 19:11:34(2) wikiとかで協力者を募って全訳を目指すのか?⇒その場合、部分的に出来たものから公開するんだよね?
(1)の場合はあなたの翻訳能力や投入できる時間と完成予定日が質問されると思う。
(2)の場合、協力者の翻訳能力や語調の統一は誰が管理するのか?何人ぐらいで行う予定で完成予定日はいつ頃かを質問されると思う。
0580デフォルトの名無しさん
2008/09/11(木) 19:16:07どれを書いたらわからないって言う時は最上敬語のyours faithfullyを使えば間違いない。
ビジネスレターの場合は相手を知っている場合でも年上だったらfaithfullyを使った方が良い。
この場合、相手がregardsを使ってくれているのでyours sincerelyかbest wishesあたりでいい。
0581465
2008/09/11(木) 19:23:34wikiは管理しやすいですし、
XHTMLはかけますがそういった部分にとらわれる事無く体系的な
webページを作成できる点でwikiが最適と思います。
全部できるまで公開しないと言うより
wikiの編集権は私が管理してできた物から公開したいですね。
0582デフォルトの名無しさん
2008/09/11(木) 19:40:54wikiは新たに作られてもいいだろうし、このスレのwikiを使ってもらってもいいし、
あるいはshibuyaでつくってもらったらいいかも
>>579
(2)の疑問について 査読制度をやってみるしかないな。訳者みんなで回し読みだ。
あるいはon lisp式だ。
0583465
2008/09/11(木) 19:46:49相当ページ数が多くなりますからJ-HyperSpecのような
わかりよい名称で作ってみたいと思います。
0584465
2008/09/11(木) 19:52:04一応編集は私が一人でやりたいと思います。
ココから先はあくまで仮定ですが指摘してもらうのに専用の
スレをたてるなどして気になる所が有ったら適時指摘してもらうと言う形に
したいですね。
0585デフォルトの名無しさん
2008/09/11(木) 19:55:20> 一応編集は私が一人でやりたいと思います。
翻訳も基本的に一人でやるのね?
0586465
2008/09/11(木) 19:59:10統一の方法や権利問題などでややこしくなりそうですし
そのようにしたいと思ったのです。
ですが、うまい方法が有れば当然それを盛り込みたいと思うので
なにかお教え願います。
0587デフォルトの名無しさん
2008/09/11(木) 20:10:55権利問題解決なんてもんではないだろ。
例えば口述筆記の場合、筆記したものでなく、
口述したものに著作権がある。
あんまり安易に考えないほうがいい。
0588デフォルトの名無しさん
2008/09/11(木) 20:11:30「なんで変えたか?あえて言おう『カス』であると!・・・(中略)・・・ジークジオン!ジークジオン!ジークジオン!」
「こ、これが独裁?これが編集権?」
「ジークジオン!ジークジオン!ジークジオン!」
0589465
2008/09/11(木) 20:16:37すいませんでした。わかりました。
するとe-mailにはどのように書けば良いでしょうか?
不特定多数が編集するとなると受け入れて頂けないでしょうし
0590デフォルトの名無しさん
2008/09/11(木) 20:22:20> 不特定多数が編集するとなると受け入れて頂けないでしょうし
その根拠は?
0591465
2008/09/11(木) 20:26:08なんと言うか権利問題は皆さんの方が詳しいようなので
わたしの事は気にしないでください。.....orz
0592デフォルトの名無しさん
2008/09/11(木) 20:28:530593デフォルトの名無しさん
2008/09/11(木) 20:35:01著作権侵害となる。
これは「相互に交換価値のやや等しい給付をすることから著しくかけ離れた取引」であるから、
民法90条 公序良俗
「公の秩序又は善良の風俗に反する事項を目的とする法律行為は、無効とする。」
に触れるので編集権を主張しても無効になってしまう。
0594デフォルトの名無しさん
2008/09/11(木) 20:43:00それは他に使えそうな法律がないときに使うリーサルウェポン
0596デフォルトの名無しさん
2008/09/11(木) 20:47:02あと wikipedia の著作権に関するところとかね。
>>584
> スレをたてるなどして気になる所が有ったら
> 適時指摘してもらうと言う形にしたいですね。
専ブラの navi2ch は、著作権をしっかり管理したいから、
スレに書き込まれたコードを取り込むのは止めたぞ。
メールや2ちゃんより、wiki に直接書き込んで貰う方が、
ずっと著作権を管理しやすい。
書き込むたびに譲渡承諾を読ませて、
OKボタンを押させることができるから。
2ちゃんねるのように。
訳語、訳調の統一のための改変承諾もそこですればいい。
著作権放棄した時点で、別途許諾を得る必要はないが、
>>588のような荒れ方を防げるし、マナーとしても正しいだろう。
0597465
2008/09/11(木) 20:52:46では
1,wikiを作成し不特定多数で管理する。
2,公開する権利・責任は私がもつ
3,内容は確認し適時修正、編集する。
ということで良いでしょうか?
あと上のmailの内容に追加すべき事は有るでしょうか?
P,S
週末に行事が有り準備のために返信が途切れるときが有ります
申し訳有りません
0598デフォルトの名無しさん
2008/09/11(木) 21:00:40MediaWikiかDokuWikiあたりを使わないとだめだろうね。
0599デフォルトの名無しさん
2008/09/11(木) 21:00:45http://en.wikipedia.org/wiki/Open_content#Licenses
0600493
2008/09/11(木) 22:54:46subversionで原稿管理して更新された部分ごと普通に
htmlのままサーバに置いて見て貰えば良いんじゃないですかね。
0601デフォルトの名無しさん
2008/09/11(木) 23:13:460602デフォルトの名無しさん
2008/09/11(木) 23:27:10Wikipediaみたいな削除合戦とかは想定しないのか?
のんきだな。
ユーザーグループが始動しはじめたみたいだから、そっちで翻訳プロジェクトとかで立ちあげたら?
一人だと気力の他に仕事の都合とか、飽きたりとかで中途半端に終ると後が続けなくなっちゃわないかなぁ。
HyperSpecの量って日本語で書くだけでも通常の人なら力尽きそな分量だよ。
もう少し小さな文献から翻訳やってみて実績と経験を積むとか。
0604465
2008/09/11(木) 23:58:11なるほど、
ちなみに以前のjapaneは失礼しました勢いでjapaneseとうった後
消したつもりだったのですがeが残ってしまったようで
0605465
2008/09/11(木) 23:59:50暇人なので大丈夫ですよ。
本読んでるかプログラミングしてるか勉強してるか
だけの人間なので仕事もとくに無いですし(学生ですから)
しかし、CLtLの2.5倍というと1800ページ?手持ちで一番ブ厚いCJKV本でも1000ページだから、
これの1.8倍…。開いたら真っ二つになりそうだな。
0607デフォルトの名無しさん
2008/09/12(金) 00:42:57ただの馴れ合い集団になるかどうか観察してからでも遅くないと思う。
0608465
2008/09/12(金) 00:50:47完成版
-------------------------------------------------
>>465の名前と住所
>>Lispaworksの社名と住所
Dear Mr. Dave Fox
Thank you for your answers and questions.
Let me introduce you current situation about Lisp community in Japan.
Last year, Mr. Paul Graham's "On Lisp" was translated by Mr. Noda, and published from Ohmsha publishing co ltd.
And last month, Mr. Peter Seibel's "Practical Common Lisp"was translated and published from Ohmsha, too.
These books are aquiring a lot of new programmers to Lisp community.
But, because of long time no publishment about common lisp, especially in Japan, there are no good reference, except above two books.
Now People are demanding Japanese translation of Hyperspec, for learning.
These demands push me to decide translation of it for this community.
In this community, I have speaked about my plan about translation of HyperSpec,
some people had suggested me that HyperSpec is copyrighted by you, Lispworks.
So I mailed you about possibility about your autorization of translation it.
I am willing to accept your suggestion about copyrights, because of my small knowledge about it, especially in USA.
I hope your acception of my plan.
yours sincerely,
>>465の名前
-------------------------------------------------
I don't use machine translation.
I want to translate all of the document.
0609デフォルトの名無しさん
2008/09/12(金) 01:08:44相手は契約のプロ。利用されないように「せいぜい」気をつけるんだね。
せいぜい、フフフ
0612デフォルトの名無しさん
2008/09/12(金) 01:13:03表に出さずに自分用に翻訳続けたほうがいいと思うよ
0613465
2008/09/12(金) 01:13:410614デフォルトの名無しさん
2008/09/12(金) 01:18:280616デフォルトの名無しさん
2008/09/12(金) 01:22:57はきちんとしておいたほうが良いと思う。Wikiで共同作業になる場合、他の協力者にも同じ条件を
お願いするとかの問題もあるので。
0617デフォルトの名無しさん
2008/09/12(金) 01:23:540618465
2008/09/12(金) 01:28:42なるほど、名前ぐらいは出したいですね。
利益は目的ではないので利権のみを放棄できないでしょうか?
(知識不足でわかりませんのですいません)
他の方の意見を聞いてみたいと思います。
こればっかりは私の主観で決められませんので。
他の方が利益希望のときは私の分はLispWorksに寄付したいと思います。
0619デフォルトの名無しさん
2008/09/12(金) 01:29:25不明点を洗い出しもしないで返事をして契約に望むのか?
もう少し具体的にどう運営するつもりか明確にしとかないと後でしらねーぞ。
契約社会の世の中で、訴訟なんて当たり前だぞ。
起業家になったつもりでもう少し真剣に検討しろYO!
0620デフォルトの名無しさん
2008/09/12(金) 01:32:11その場合気をつけないと訴訟沙汰になる可能性もあるので
未直にいる英語に堪能な人などに何度も文を書いて慎重にやっとけ。
表からみるぶんにはヤンヤヤンヤやってるの見てるのが面白いが
まずいことになったら気の毒に感じるからな。
0621465
2008/09/12(金) 01:33:10なるほど、気持ちが少し引き締まりました(なんとなくそのYO!というフレーズが良いですね。)
私の気持ちは出版の際は:
訳者として私と協力者の名前を出してほしい。
利益は希望しない(あくまで私個人の気持ちです)
他に明確にすべき点をよろしくお願いします。
0622デフォルトの名無しさん
2008/09/12(金) 01:33:11じとぢを間違えた
0623デフォルトの名無しさん
2008/09/12(金) 01:42:39HyperSpecは企業相手だから、担当者が善意の人でも経営者が代わったら別会社みたいな対応をする場合も考慮しとけ。
0624デフォルトの名無しさん
2008/09/12(金) 01:49:09著作権、著作者人格権、出版権、実演家人格権又は著作隣接権を侵害した者は、5年以下の懲役又は500万円以下の罰金、又はこれらの併科に処せられます。(著119条)
また、以下のような行為についても罰則が規定されています。
1. 著作者、実演家が存しなくなった後における人格的利益を侵害する行為(著120条)
2. 著作者でない者の実名又は周知の変名を著作者名として表示したものを頒布する行為(著121条)
3. 特定の外国レコード原盤から製作された商業用レコードを複製する行為、又はその複製物を頒布若しくは頒布の目的をもって所持する行為(著121条の2)
4. 出所明示義務に違反する行為(著122条)
5. 業として客の求めに応じて技術的保護手段を回避する行為、並びに技術的保護手段回避のための装置やプログラムについて、公衆への頒布、頒布目的の製造・輸入・所持や公衆の使用に供する行為及び当該プログラムを公衆送信(送信可能化)する行為(著121条の2)
なお、法人の従業者等が、その業務に関し違反行為を行った場合は、行為者のほか、法人に対しても罰金刑が科せられます。(著124条)
平成16年の著作権法改正で、法人の罰金の上限額が、1億円から1億5000万円に引き上げられました。(著作者人格権あるいは実演家人格権の侵害の場合を除く)(著124条1項1号)
例えば、一緒に訳していた人が勝手に違反しても、法人として貴方が全責任(1億5000万円)を背負うことになります。
0625デフォルトの名無しさん
2008/09/12(金) 01:57:210626465
2008/09/12(金) 01:59:50それはなんと言うか困りますな。
UNIXのコマンドマニュアルと違って権利問題が込み合い過ぎですよ。
経済学や法律を熟知していないと厳しいですな。
0628デフォルトの名無しさん
2008/09/12(金) 02:01:34toyamaからのコメントは大切に聞いておいた方が良いよ。
たぶん、多くの人が世話になってるよ。
権利関連で分からないことは素直にlispworksに聞いてみることだよ。
hyperspecは無料公開されているものだから、それが非公開有料になって
和訳も権利が〜みたいなことは起こりにくいけどね。
ややこしいことばかり聞いてたらやる気が削がれるだけだろうから、
走りながら考えていけばいい。無理ならプロジェクトチームを作るように
するとか考えたらいいし、独占契約をしなければなんとでもなるでしょ。
0630デフォルトの名無しさん
2008/09/12(金) 02:07:55それで権利云々を言い出すやツガでてくる状況を作っちゃだめだよ。
精神的にへとへとになるだけ。
そのためには匿名という曖昧な状態でやると帰って泥沼化するから、
toyama が言ってるように最近できたコミュのプロジェクトチームのリーダー
として465さんが取りまとめやくとしてやってみた方がいいと思うな。あそこ
には訳経験が豊富?な人が何人もいるし強力だと思うよ。
訳になれていないものが挑戦するにはあまりにも無謀な量だし、さらに、
訳の質も率直に言ってそのままでは期待でき無いから。
0631デフォルトの名無しさん
2008/09/12(金) 02:09:32toyamaってocnのtoyamaの人がきみに暖かいアドバイスを出しているでしょ。
常識ではないよ。匿名掲示板では推測でしか個人の特定は出来ないから。
0632465
2008/09/12(金) 02:10:43わかりました。
権利問題に疎いとこのような苦労が有るのですね......
権利問題の交渉を代行して頂けると非常に助かるのですが
現実はそんなに甘くないですよね。
0633デフォルトの名無しさん
2008/09/12(金) 02:13:16馴れ合いって何をさしているのかは分からないけど、
出来たばかりだから、バイタリティがあふれている人がどんどん引っ張って言ったら良いよ。
ただ、外から見てて心配事はあるけど、それは匿名掲示板で書きたくないので
自分の心の中に閉まっておくよ。
0634465
2008/09/12(金) 02:15:31最近できたコミュニティのURLを失念してしまったので
張って頂けないでしょうか?
あと、私のような新参者が突然きて引っ張るのは無理では?
0635デフォルトの名無しさん
2008/09/12(金) 02:17:28利害が関連してくるとエゴイストだらけになるから、そんな連中をまともに
相手にしていたら、寿命を縮めるだけです。だからこそ、そんな連中とは
関わらないようにやってったほうがいいよ。
0636デフォルトの名無しさん
2008/09/12(金) 02:18:520637465
2008/09/12(金) 02:19:25なんだか脳がこんがらがってきましたよ....orz
正直、訳者として名前をのせてくれれば権利は放棄するし利益はそちらに寄付するから
やらしてくれ、と言うので精一杯ですよ
0638デフォルトの名無しさん
2008/09/12(金) 02:22:55利益のことはここで騒いでいるようなことは起きないと思うけど、心細く混乱するのも
よくわかるよ。一人じゃ大変だろうなというのもそこなのだ。
数日間、間を置いてその間にちょっと考えてみたらどうか? 即決即断がよいのでは無いから。
落ち着いて熟考していくうえでみえてくるものもあるからね。
0639デフォルトの名無しさん
2008/09/12(金) 02:24:30>するとか考えたらいいし、独占契約をしなければなんとでもなるでしょ。
一度契約を結んだ後で共同作業者が契約内容と異なった行動をしてたら目も当てられないだろ。
共同作業は怖いんだよ。女はそうやってソープに沈められたりするんだよ。あまいあまい。
0641465
2008/09/12(金) 02:27:06疲れてきたかもしれません。ココ三日不眠ですし。
少し休みます。
0642465
2008/09/12(金) 02:30:02ここが疲労グラフの頂点なのかも知れませんね
0643デフォルトの名無しさん
2008/09/12(金) 02:53:06そんな実例をようけ見てるのネ。 <ソープ
無料公開を前提にしているうえで異なった行動って何をさしている?
これがね。本を出すとか、お金の成る木ならおっしゃるとおりだが。
0644デフォルトの名無しさん
2008/09/12(金) 03:51:30自信があるなら>465の代わりに責任者になってやれよ。
実務は>>465がやるんだから。
責任問題は走りながら考えていけばいいwww
0645デフォルトの名無しさん
2008/09/12(金) 03:52:300646デフォルトの名無しさん
2008/09/12(金) 06:38:21翻訳についてはOpenなライセンスにすればいいんじゃないの?
具体的にライセンスを選んでから、Lispaworksと交渉すれば、
細かい議論を自分の力でする手間を省けるだろう。
日本語版もあるから読んでくれ。
http://ja.wikipedia.org/wiki/オープンコンテント
> 訳者として私と協力者の名前を出してほしい。
Copyright noticesに入れてしまえばいい。
むしろ、アメリカ%A
0647デフォルトの名無しさん
2008/09/12(金) 10:47:22元がOpenなライセンスじゃないのが問題を複雑にしてるかも。
ANSIとかも絡んでそう。
俺だったら翻訳でなく、自分リファレンスを作るかなあ。(言うだけ只モードw)
0648デフォルトの名無しさん
2008/09/12(金) 13:54:37U*IXと同じでたぶんそうはいかないだろう。まあ、聞いてみれば?
0649デフォルトの名無しさん
2008/09/12(金) 14:33:05朝礼で壇上に上がった石井は「皆さんに、人生を生きていくにあたってのアドバイスをしたいです」と切り出すと、
(1)保証人(= 翻訳権や著作権)にならないこと
(2)たばこを吸わないこと
(3)ネクタイは上まで締めること
――と唐突な発言。「自分から言えるのはそれだけです」と締めくくると爆笑に包まれた。
0650デフォルトの名無しさん
2008/09/12(金) 17:52:31:. .:::::。:::........ . .::::::::::::::::: / ヽ:::::::::::::。::::::::::: . . . ..:::: ::::::: . . . ..::::::::::: . . . ..::::::::::: . . . ..::::
:::: :::::::::.....:☆彡:::: /⌒) ● ● | :::::>>465:::::::::: ::::::::::::。 ::::: ::::::::::::。::::: ::::::::::::。::::: ::::::::::::。
:::::::::::::::::: . . . ..: :::: / / (_●_ ) ミ :::::::::::「HyperSpecを翻訳して有名になるんだ」.... .... .. .::::::::::::::
::::::...゜ . .::::::::: ( ヽ |∪| =@.ヽ .......=@. .::::::::::::........ ..:::: ::::::::::::........ ..::::::::::::::::........ ..::::::::::::::::........ ..::::
:.... .... .. . \ ヽノ | 〉:.... .... .. .:.... .... .. .... .. .:.... .... ..... .. .:.... .... ..... .. .:.... .... ..... .. .:.... .... .
:.... .... ..:.... .... ..... .... .. .:.... .... .. .... . .... . ..... .... .. ..... ............. .. ..... ............. ...... ............. ...... ............. ...... ............. .
:.... . ∧∧ ∧∧ . ∧∧ ∧∧ .... .... .. .:.... .... ..... .... .. . .:.... .... ..... .... .. ..:.... .... ..... .... .. ..:.... .... ..... .... .. .
... ..:( )ゝ ( )ゝ( )ゝ( )ゝ ムチャシヤガッテ・・・...... :::::::::...... ....:::::::゜:::::::::::::...... ....:::::::゜:::::::::::::...... ....:::::::゜::::
.... i⌒ / i⌒ / i⌒ / i⌒ / .. ..... ................... .. . ... ::::::::::::: . . . ..: ::::::::::::::: . . . ..: ::::::::::::::: . . . ..: ::
:.. 三 | 三 | 三 | 三 |
:.... ∪ ∪ ∪ ∪ .∪ ∪ ∪ ∪
0651465
2008/09/12(金) 18:05:29権利を一切放棄する名前も出さなくていいとすれば
早く進むでしょうか
0652デフォルトの名無しさん
2008/09/12(金) 18:55:46著作権は数年経って改訂する頃から効果が出てきて、著作権が切れるまで影響するんだよな。
むしろ、英語版のHyperSpecの著作権が切れるまで待って、著作権が切れてからコピーフリーでやった方が束縛を受けない気がする。
0653デフォルトの名無しさん
2008/09/12(金) 19:00:29> 英語版のHyperSpecの著作権が切れる
いつだよw
0654デフォルトの名無しさん
2008/09/12(金) 19:00:59下らん奴だな。正面から答えればいいのに。
0655デフォルトの名無しさん
2008/09/12(金) 19:02:39むしろ、>>465がインターンでlispworksに雇ってもらって上記の日本語版を作ったほうが権利関係は会社が面倒を見てくれるから良い気がする。
無料だから片手間で安易に契約が出来ると考えるのは、コミュニティー全体へ多大な損害を与えます。>>マグロウヒルが著作権
0656デフォルトの名無しさん
2008/09/12(金) 19:04:06下らんレスの応酬するおまえモナー
0657デフォルトの名無しさん
2008/09/12(金) 19:04:10今回もその傾向がでてるね。
0658465
2008/09/12(金) 19:05:32大切な事のような気がするんですよね。Lispのためならがんばれる気がします。
=====================================
なんと言うか以前まとめてくださった方の内容で向こうの質問の返信には
成ると思うのですが、どんな感じなのでしょうか?
0659デフォルトの名無しさん
2008/09/12(金) 19:05:470660デフォルトの名無しさん
2008/09/12(金) 19:07:31これだけ船頭が集まってくるんだ
熱意があるなら訳が出来てから出版社に持ち込めばいいんだよ
0661465
2008/09/12(金) 19:07:44ときどき乱文に成るかもしれませんがご容赦ください
0662デフォルトの名無しさん
2008/09/12(金) 19:08:56>動脈硬化を起こしてしまうけど
動脈硬化を起こすのはベンチャー精神に欠けるからだろ。
人が何を言おうと自分が正しければリスクをも厭わずにやり遂げるぐらいじゃないと。
匿名掲示板だから議論が進まないで実現できませんでしたなんてのは言い訳にすぎない。
0663デフォルトの名無しさん
2008/09/12(金) 19:09:18守らせることが共同作業の基本
両方とも出来そうにないだろ
0665デフォルトの名無しさん
2008/09/12(金) 19:16:02質問
メールを書いた以外で既に何か進めていることあるの?
0666465
2008/09/12(金) 19:17:23少し関数などのページを訳して個人用に保存し始めました
0668デフォルトの名無しさん
2008/09/12(金) 20:47:49別に深い意味はないが、まあ、何もしてないっぽく見えるな
ブログとかやってないの?
0669デフォルトの名無しさん
2008/09/12(金) 20:51:520670デフォルトの名無しさん
2008/09/12(金) 21:31:18相手の意見を尊重しすぎると自信なくなるわな
0671デフォルトの名無しさん
2008/09/12(金) 21:34:42Nos vives limitrophes
Nos desirs de paix
Quelques zones franches
Bien delimitees
0672デフォルトの名無しさん
2008/09/12(金) 21:37:20動脈硬化になるのはしっかりした意見を持たないリーダーの下でデスマーチするプロジェクトに似ている。
きっと軸がブレないで運営できるかどうかの試金石なんだよ。
0673デフォルトの名無しさん
2008/09/12(金) 21:44:030674デフォルトの名無しさん
2008/09/12(金) 22:31:35リーダーは別にいなくても進むものもある
インティファーダとかそうだな
0675デフォルトの名無しさん
2008/09/12(金) 22:44:49暗に>>465はイランと言ってるの?
0676デフォルトの名無しさん
2008/09/12(金) 23:57:31どうでもいいとこで>>569以下のspeakedが気になるんだけど、
spokenとは違うの? ググっても良く分からん。英語詳しい人kwsk
0677デフォルトの名無しさん
2008/09/12(金) 23:58:26>>465は思った通りに書いて、相手の返事を待つだけでいいのじゃないのか?
事が巧くいってがんばった結果がでてから、ここまでやったので誰か手伝ってくれないかと言う方がよっぽどよいだろう?
0678デフォルトの名無しさん
2008/09/13(土) 01:49:27コッチ逝け
http://academy6.2ch.net/test/read.cgi/english/1219999558/
0679デフォルトの名無しさん
2008/09/13(土) 02:15:22翻訳した連中多分ここチェックしてるっしょ。
0680デフォルトの名無しさん
2008/09/13(土) 07:13:36今は、本来の目的に集中できるかどうかが問題。
コレステロールが悪いとか権利関係が悪いとか
責任の擦り合いが目的になるとやばい。
0681デフォルトの名無しさん
2008/09/13(土) 10:54:57すべからく人任せwww
0682デフォルトの名無しさん
2008/09/13(土) 11:06:410683465
2008/09/13(土) 12:49:350684465
2008/09/13(土) 12:54:490685デフォルトの名無しさん
2008/09/13(土) 13:31:38誰か教えてください
0686デフォルトの名無しさん
2008/09/13(土) 13:52:03シャープマクロの一種 #+ を使う。
あるいは、変数*features*の中身をみて振り分ける、とかかな。
;; #+ の例
#+clisp
(princ "Hello")
0687デフォルトの名無しさん
2008/09/13(土) 17:48:41これは忠告だよ。会社を通して邦訳本出す、
という形の方がよほど現実的。
何かあったときここのスレッドの住民に
けしられたから〜とか言いそうだなあ。
0689デフォルトの名無しさん
2008/09/13(土) 18:39:04二 他人に頼むにしても自前の人脈がない・そうした作業の経験がない
これでどこへ行こうというのだね
私とその大砲で勝負するか
小僧から石を取り戻せ
0690465
2008/09/13(土) 19:22:50珍しいと思うのですが。
0691デフォルトの名無しさん
2008/09/13(土) 19:24:33権利絡みで色々うるさくなったら面倒な事に
まきこまれるのはあなただけで、
ここの住民はいつもと変わらずここで
レス付け続ける、ってだけだから。
0692デフォルトの名無しさん
2008/09/13(土) 19:27:22自分の気になっているところからやれば、公開はダメでも身に付くし。
まともな訳を書こうと思うと、生半可な理解では到底無理だから。
0693465
2008/09/13(土) 19:30:35ですが、今更急に断るわけにもいきませんし、
0694465
2008/09/13(土) 19:35:35今のところ30ページほど翻訳してみました。
0695デフォルトの名無しさん
2008/09/13(土) 19:42:02日本語訳はどうでもいいから,chmファイルがほしい
0696デフォルトの名無しさん
2008/09/13(土) 20:17:56>>560
>Hyper Spec
>ファイル数:2318
>>694
>今のところ30ページほど翻訳してみました。
0697デフォルトの名無しさん
2008/09/13(土) 20:25:140698デフォルトの名無しさん
2008/09/13(土) 20:27:080699465
2008/09/13(土) 20:28:060700デフォルトの名無しさん
2008/09/13(土) 20:42:17勉強会的な小コミュニティなら、翻訳しても文句は言われんでしょ。
ある程度やってみて、いけそうな雰囲気なら再交渉してオープンにすればいいんだし。
0701デフォルトの名無しさん
2008/09/13(土) 21:53:17ありがとうございます.
この方法だとSLIMEを使ってC-c C-kでコンパイルしたとき
たとえば
#+clispと#+sbcl
の2つで振り分けていたとして,#+clispはclisp依存のコード,#+sbclのほうは
sbcl依存のコードが書かれていたとき,両方ともコンパイルしようとしてエラーがでて
しまいます.
なんとか,これも分けることはできないのでしょうか?
0702デフォルトの名無しさん
2008/09/14(日) 11:54:39こちらで試したところ、エラーなくコンパイル出来ました。
#+を使うときは、
#+clisp フォーム(S式やアトム)
のように使いますが、#+が有効なのは、直後の一つだけの
フォームですが、そのへんはお分かりになっていますか?
;; 例
#+clisp
(defun foo () ...) ; #+clispが有効
(defun bar () ...) ; #+clispとは無関係
また、以下のようにも書けたりします。
(setq hoge #+clisp 1 #+sbcl 2) ; clispなら1、sbclなら2がhogeに代入される。
そうでなければ、あとはslimeの設定の問題とか…。
0703デフォルトの名無しさん
2008/09/14(日) 13:52:35すみません,うまくいきました.
>#+が有効なのは、直後の一つだけの
>フォームですが、そのへんはお分かりになっていますか?
これをわかってなかったようです.
0704デフォルトの名無しさん
2008/09/15(月) 09:27:31HyperSpecのCHMを作ってくれるソフトならあった。
ttp://sourceforge.net/project/showfiles.php?group_id=30035&package_id=203252
0705デフォルトの名無しさん
2008/09/15(月) 12:47:22これは便利だ!
0706デフォルトの名無しさん
2008/09/15(月) 13:15:140707デフォルトの名無しさん
2008/09/16(火) 14:25:45どなたかサイトをおおしえいただけないでしょうか?
0708デフォルトの名無しさん
2008/09/16(火) 14:26:310709デフォルトの名無しさん
2008/09/16(火) 14:56:04http://clqr.berlios.de/
0710デフォルトの名無しさん
2008/09/16(火) 15:21:00これいいね。製本したの売って欲しい。1000円までなら出す。w
0711デフォルトの名無しさん
2008/09/16(火) 17:15:47どういう時にそんなことがしたくなるの?
0713デフォルトの名無しさん
2008/09/16(火) 18:05:30:keyのオプションがあるときとないときで,生成される式を変えたい.
0714デフォルトの名無しさん
2008/09/16(火) 18:11:47受けられることが多い。自分の考えたアプローチが適切でない場合があるからだ。
0715デフォルトの名無しさん
2008/09/16(火) 18:12:39もうちょっと具体的に
(if sup?
`(progn
'(key => ,key))
`(progn
',key)))
(foo :key foo)
(KEY => FOO)
(foo)
DEFAULT
こういうことかな?
0717デフォルトの名無しさん
2008/09/16(火) 18:27:13ありがとうございます.
私が欲しているのは,closeを書かなくても最終的に勝手にcloseしてくれる
with-open-stream見たいなマクロです.
今通信のプログラムを書いおり.ClientとServerに分かれた
プログラムなのですが,ClientからServerにコマンドを発行します.
このときClientがServerに向けて発行したコマンドが適切でなかった場合や,
コマンドの実行が失敗したとき,ServerはFAILED的なメッセージを返したいの
ですが,多数あるコマンドを処理するハンドラがnilを返したら,FAILEDを返信する
コードを自分で書くのは面倒なので,マクロで何とかできないかなと思ったわけです.
いろいろ書きましたが,最終的にはこれがやりたいことです.
0718デフォルトの名無しさん
2008/09/16(火) 19:52:060719o
2008/09/16(火) 20:17:08すんなり望みのものが得られました.
もうひとつ質問なのですが,
format関数で新しい行を追記するのではなく,ある場所に上書するのは
どうすればよいのでしょうか?
何をしたいのかというと,Linuxのtopコマンドみたいな出力を行いたいです.
0720デフォルトの名無しさん
2008/09/16(火) 20:19:480721デフォルトの名無しさん
2008/09/17(水) 00:32:400722デフォルトの名無しさん
2008/09/17(水) 00:57:46cl-ncursesをSBCL 1.0.11.debianにasdfで自動インストールしようと思ったら
; loading system definition from /usr/lib/sbcl/site-systems/cl-ncurses.asd into
; #<PACKAGE "ASDF0">
; registering #<SYSTEM :CL-NCURSES {AC27721}> as CL-NCURSES
; loading system definition from /usr/lib/sbcl/site-systems/uffi.asd into
; #<PACKAGE "ASDF0">
; registering #<SYSTEM UFFI {ADD6159}> as UFFI
STYLE-WARNING: defining *NULLPTR* as a constant, even though the name follows
the usual naming convention (names like *FOO*) for special variables
;;; Loading #P"/usr/lib/libncurses.so"
NIL
*
debugger invoked on a SB-INT:SIMPLE-READER-ERROR in thread #<THREAD "initial thread" {A84D681}>:
SB-INT:SIMPLE-READER-ERROR on #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDIN* {9115901}>:
unmatched close parenthesis
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [ABORT] Exit debugger, returning to top level.
(SB-INT:SIMPLE-READER-ERROR
#<SYNONYM-STREAM :SYMBOL SB-SYS:*STDIN* {9115901}>
"unmatched close parenthesis")
0] :0
こんなメッセージが出てとまってしまいます...どうすればよいのでしょう?
0723デフォルトの名無しさん
2008/09/17(水) 01:51:19| unmatched close parenthesis
とかいわれてるから括弧の対応がおかしいところがあるんではないかと。
0724デフォルトの名無しさん
2008/09/17(水) 08:23:440725デフォルトの名無しさん
2008/09/17(水) 16:17:550726デフォルトの名無しさん
2008/09/17(水) 18:37:260727デフォルトの名無しさん
2008/09/18(木) 17:32:18見たいなリストが与えられて
(要素の数は不定,だから((1 2 3) (4 5 6) (7 8 9)...)かもしれないし((1 2 3))かもしれない)
それを(mapcar #'+ '(1 2 3) '(4 5 6) '(7 8 9))
見たいな感じでばらしてmapcarに渡したいんだけど,こういう場合どういう風に
すればエレガントですかね?
0728デフォルトの名無しさん
2008/09/18(木) 17:42:59(apply #'mapcar (cons #'+ '((1 2 3) (4 5 6))))
0729デフォルトの名無しさん
2008/09/18(木) 17:53:04これは面白い!
こういうのをさっと思いつけるようになりたいなぁ
0730デフォルトの名無しさん
2008/09/18(木) 18:02:040731デフォルトの名無しさん
2008/09/18(木) 18:02:55こっちだった。
0732デフォルトの名無しさん
2008/09/18(木) 18:05:29(loop for i in '((1 2 3) (4 5 6) (7 8 9))
sum (apply #'+ i))
0734デフォルトの名無しさん
2008/09/23(火) 21:27:11SBCL 1.0.20 + clsql + mysqlで日本語(UTF-8)が通らなくて困っています。
LinuxUbuntu6にsshでつないでEmacs22.2.1上のslimeです。
クライアントは、windowsXP poderosa4.10 のUTF-8です。
slimeでは日本語は通ります。
ttp://faroffsea.blogspot.com/2007/09/mysqlclsql.html
上のサイトを参考に、
[mysqld]
skip-character-set-client-handshake
default-character-set = utf8
としてみましたがうまくいきません。
どなたかわかる方いらっしゃいましたら教えてください。
よろしくお願いします。
0735デフォルトの名無しさん
2008/09/23(火) 21:28:21動かしてみた状態です。何か問題があるのでしょうか?
; SLIME 2008-07-29
CL-USER> (setf sb-impl::*default-external-format* :utf-8)
CL-USER> (setf sb-alien::*default-c-string-external-format* :utf-8)
CL-USER>"あいうえお" => "あいうえお"
CL-USER> (clsql:connect '("localhost" "name" "name" "p") :database-type :mysql)
CL-USER> (clsql:def-view-class tes () ((body :type string)) (:base-table tes))
CL-USER> (clsql:create-view-from-class 'tes)
CL-USER> (clsql:insert-records :into "TES"
:attributes '(body)
:values '("aiueo"))
CL-USER> (clsql:insert-records :into "TES"
:attributes '(body)
:values '("あいうえお"))
CL-USER> (clsql:query "select * from TES")
(("aiueo") ("?????")) ;;?????になってしまっている。
("BODY")
0736デフォルトの名無しさん
2008/09/23(火) 22:54:27M-: default-process-coding-system
これらの結果は?
0737デフォルトの名無しさん
2008/09/24(水) 03:01:32ありがとうございます。結果は以下です。
M-: slime-net-coding-system => utf-8-unix
M-: default-process-coding-system => (mule-utf-8 . mule-utf-8)
0738デフォルトの名無しさん
2008/09/24(水) 10:33:02;; if we have :sb-unicode, UFFI will treat :cstring as a UTF-8 string
と書いてあったから、普通にビルドしてれば通るんじゃ。
つーか問題の切り分けは出来てるん?
mysql直接叩いても化けるのか、sbcl+clsql+mysqlでも化けるのか、
slimeを通したときだけ化けるのか判断できないんだが。
0739デフォルトの名無しさん
2008/09/24(水) 11:48:21すべての形でだめです。
sbclのreplから
* "あいうえお" => "あいうえお"
* (clsql:create-view-from-class 'tes)
* (clsql:insert-records :into "TES" :attributes '(body) :values '("あいうえお"))
* (clsql:query "select * from TES")
(("?????"))
("BODY")
mysqlから
mysql> show variables like 'char%';
character_set_database,character_set_filesystem,以外全部utf8
mysql> insert into TES values("あいうえお");
mysql> select * from TES;
+-------+
| BODY |
+-------+
| ????? |
| ????? |
+-------+
0740デフォルトの名無しさん
2008/09/24(水) 12:18:34mysqlで日本語が通らないならmysqlのスレで質問すべきだろう、と思うが
0741デフォルトの名無しさん
2008/09/24(水) 12:55:53そうですね。失礼しました。
0742デフォルトの名無しさん
2008/09/24(水) 13:13:18あとアドバイスだけど、長い日本語を入れて出力を nkf -g すれば
壊れてるのか、他のエンコードで出力されちゃってるのかは判断できるよ。
参考までに。
0743デフォルトの名無しさん
2008/09/24(水) 13:30:53すみません。すれ違いなのにアドバイスありがとうございました。
mysqlについて調べてみて、character_set_server=utf8
を追加して、DBを構築しなおしてみたらうまくいきました。
おさわがせしました・・・。
0744デフォルトの名無しさん
2008/09/25(木) 00:47:140745465
2008/09/26(金) 19:03:14Lispworksから返信が返ってきたのですがその一部で確認頂きたい事が
有りましたので一部引用いたします。
We would like to invite Kent Pitman (who originally built the
HyperSpec) to join this email thread. Is that OK with you? Please let
me know.
この部分なのですがこの場合はどのようにするべきでしょうか?
やはりshibuyalispなどにプロジェクトを立ち上げてそちらをご連絡するのが
ベストでしょうか
0746465
2008/09/26(金) 19:04:06Lispworksから返信が返ってきたのですがその一部で確認頂きたい事が
有りましたので一部引用いたします。
We would like to invite Kent Pitman (who originally built the
HyperSpec) to join this email thread. Is that OK with you? Please let
me know.
この部分なのですがこの場合はどのようにするべきでしょうか?
やはりshibuyalispなどにプロジェクトを立ち上げてそちらをご連絡するのが
ベストでしょうか
0747デフォルトの名無しさん
2008/09/26(金) 19:05:110748デフォルトの名無しさん
2008/09/27(土) 08:01:08だけだろ? yesかnoで答えるだけじゃん。
その引用からなぜ「やはり〜」になるのか意味不明なんだが。
0749デフォルトの名無しさん
2008/09/27(土) 08:55:32礼儀で聞いてきてるだけなんだから、どうどうとYESと答えりゃいいんじゃね?
0750465
2008/09/27(土) 12:44:46YESでいきたいと思います。
0751デフォルトの名無しさん
2008/09/30(火) 13:46:44http://page14.auctions.yahoo.co.jp/jp/auction/s91370712
0752デフォルトの名無しさん
2008/09/30(火) 15:14:51オクだからLispMachineでも出てるのかと思ったら
噴いたじゃねぇかゴルァ
0753デフォルトの名無しさん
2008/09/30(火) 20:24:21ttp://dl.getdropbox.com/u/215714/20080419193048.jpg
0754デフォルトの名無しさん
2008/10/02(木) 04:24:30大人っぽい括弧が括弧良くコードに落ち着きを与えてくれます。
お洒落な関数型や手続き型のような雰囲気があります。CLOS、
MOP、FFIなどお仕事を選ばないデザインも長く飽きずに
お使いいただける要素かと思います。
0755デフォルトの名無しさん
2008/10/02(木) 22:56:49修正できる所をご教授願います。
(defmacro sethash (table key word)
`(setf (gethash ',key ,table) ,word))
(defmacro multiple-sethash (table &rest key-word-lst)
`(progn
,@(mapcar #'(lambda (pair)
`(sethash ,table ,@pair))
(group key-word-lst 2))))
(defun group (source n)
(if (zerop n) (error "zero length"))
(labels ((rec (source acc)
(let ((rest (nthcdr n source)))
(if (consp rest)
(rec rest (cons (subseq source 0 n) acc))
(nreverse (cons source acc))))))
(if source (rec source nil) nil)))
0756デフォルトの名無しさん
2008/10/03(金) 01:10:15こうすると hello! が2回表示されるよ?
On Lisp の「マクロのその他の落し穴 」参照。
(defparameter *hash* (make-hash-table))
(defun my-hash ()
(format t "hello! ")
*hash*)
(multiple-sethash
(my-hash)
:foo 1 :bar 2)
0757デフォルトの名無しさん
2008/10/03(金) 03:36:55(defmacro puthashmany (table &rest key-and-value-list)
`(let ((tbl ,table) (lst ',key-and-value-list))
(loop for (k v . r) on lst by #'cddr do (setf (gethash k tbl) v))))
0758デフォルトの名無しさん
2008/10/03(金) 04:11:47(defmacro puthashmany (table &rest key-and-value-list)
(let ((tbl (gensym "TBL")))
`(let ((,tbl ,table))
,@(loop for (k v . r) on key-and-value-list by #'cddr collect `(setf (gethash ,k ,tbl) ,v)))))
0759デフォルトの名無しさん
2008/10/03(金) 08:26:59(defun speed-test (times)
(do ((i 0 (1+ i))
(sum 0 (+ sum i)))
((= i times) sum)))
実行してみると・・・
CL-USER> (time (speed-test 10000000))
Real time: 5.828125 sec.
Run time: 5.578125 sec.
Space: 159668340 Bytes
GC: 250, GC time: 1.265625 sec.
49999995000000
5秒以上かかります。Javaだとだいたい100msで終わるのですけど。
Spaceをいっぱい食っているのもよく分かりません。環境はCLISPです。
0760デフォルトの名無しさん
2008/10/03(金) 10:49:25とりあえず確認。
コンパイルはした?
0761デフォルトの名無しさん
2008/10/03(金) 12:23:01うちのチープマシンじゃ
clispの場合コンパイルしても1秒かかる orz
sbclだと0.12秒
0762579
2008/10/03(金) 12:25:44さらに、ちょっと合っているか分からないですけど、
更にこんな感じでチューニングしてみました。
(defun speed-test (times)
(declare (optimize (speed 3) (safety 0)))
(declare (fixnum times i sum))
(do ((i 0 (1+ i))
(sum 0 (+ sum i)))
((= i times) sum)))
でも、何にも効いてないような・・・。
CL-USER> (compile 'speed-test)
WARNING: SPEED-TEST is already compiled.
SPEED-TEST
NIL
NIL
実行。
CL-USER> (time (speed-test 10000000))
Real time: 6.28125 sec.
Run time: 5.90625 sec.
Space: 159668340 Bytes
GC: 249, GC time: 1.578125 sec.
49999995000000
逆に遅くなってますね・・・。
0763579
2008/10/03(金) 12:49:48とりあえず、私の書き方が悪いわけじゃなさそうだということが分かって良かったです。
ちなみに末尾再帰で書いてもあんまり改善しませんでした。というか、遅くなりました。
(defun speed-test (times sum)
(if (zerop times)
sum
(speed-test (- times 1) (+ sum times))))
CL-USER> (compile 'speed-test)
WARNING: SPEED-TEST is already compiled.
SPEED-TEST
NIL
NIL
CL-USER> (time (speed-test 10000000 0))
Real time: 6.84375 sec.
Run time: 6.328125 sec.
Space: 159999132 Bytes
GC: 250, GC time: 2.25 sec.
50000005000000
CL-USER>
0764デフォルトの名無しさん
2008/10/03(金) 13:44:29clispは末尾再帰を最適化しない(ことが多い? 全然しないのか少しはするのか知らない)。
末尾再帰の最適化をしない処理系で期待しても無駄というもの。
disassembleしてみりゃすぐわかるから確認すれ。
0765デフォルトの名無しさん
2008/10/03(金) 15:34:30761だけどclispでコンパイルしないと12秒位かかるんよ,(compile 'speed-test)して1秒
0766デフォルトの名無しさん
2008/10/03(金) 15:40:23ちなみに763のコードはコンパイルしないとスタック足りなかった。
[1]> (defun speed-test (times)
(do ((i 0 (1+ i))
(sum 0 (+ sum i)))
((= i times) sum)))
SPEED-TEST
[2]> (time (speed-test 10000000))
Real time: 10.158625 sec.
Run time: 10.16 sec.
Space: 0 Bytes
49999995000000
[3]> (compile 'speed-test)
SPEED-TEST ;
NIL ;
NIL
[4]> (time (speed-test 10000000))
Real time: 0.780928 sec.
Run time: 0.78 sec.
Space: 0 Bytes
49999995000000
[5]>
0767デフォルトの名無しさん
2008/10/03(金) 17:57:39clispはコンパイルしたら末尾再起はループに展開されるぞ
0768デフォルトの名無しさん
2008/10/03(金) 19:50:20767 さん。コメントありがとうございます。知らなかったので大変助かりました。
794で悩んだことはおかげさまで解決しました。
0769デフォルトの名無しさん
2008/10/03(金) 19:57:28ループを減らして結果が most-positive-fixnum 以下になるようにすると消費メモリが 0 になるのが確認できると思う。
性能は現在のバイトコードインタプリタならこんなもんだろう。タイトループの実行速度でJIT装備のJavaより速いなんてのはムリ。
性能が必要ならトレースキャッシュなJITが実装されるまで待つか、自分で実装するか、別の実装を使うかどちらか。
0770デフォルトの名無しさん
2008/10/03(金) 20:07:40えー
おれが前にやったらだめでガックリした覚えが
0771579
2008/10/04(土) 07:57:42おお!明確な答え、ありがとうございました。
確かに小さな値に対しては速かったんです。
ちょっと処理系を変えながらいろいろ試してみたいと
思います。ありがとうございました。
0773デフォルトの名無しさん
2008/10/08(水) 00:03:33スレッド間通信をさせたいんですが
なんかそういう目的のためのキューとかメールボックスとか
それ系のデファクトスタンダードなライブラリってないんでしょうか
asdf-installからacl-compat入れてみたんですが
acl-compat.mp:queueはないみたいなんです
0774デフォルトの名無しさん
2008/10/10(金) 15:31:040775デフォルトの名無しさん
2008/10/15(水) 16:48:14それとも予定は無い?
教えて詳しい人。
0776デフォルトの名無しさん
2008/10/21(火) 23:03:470777デフォルトの名無しさん
2008/10/25(土) 11:57:25ttp://sourceforge.net/forum/forum.php?forum_id=880598
ttp://sourceforge.net/project/screenshots.php?group_id=30035
0778デフォルトの名無しさん
2008/10/27(月) 23:53:24(let ((hoge (lambda ~~)))) どっちのlambdaが正しいの?
前者だと思ってるけど、GNU CLISP 2.45だとどっちでも同じ意味で通る。
0779デフォルトの名無しさん
2008/10/28(火) 00:25:41(macroexpand '(lambda () ())) => #'(lambda () ()) みたいな関数に展開されるマクロとなってる。
どっちを好むかはlisperの中でも好みはわかれるところ。このマクロ導入の経緯はPCLに書いてあるよ。
0780デフォルトの名無しさん
2008/10/28(火) 00:47:18On Lispでは#'だったから疑問に思ってた。
仕様書よんでみます〜 ^o^
0781デフォルトの名無しさん
2008/10/29(水) 23:43:29とかやると
(append '(1 2 3 4) '(1 2 3 4 5))
見たいなリストが得られるマクロ(?)がほしいんだけど
そのままevalに渡したら,そのまま実行できるやつ形式に出力してくれるやつ.
(defmacro test (a b)
`(list 'append ,a ,b))
こういう風に書いたんだけど,どうしても
(APPEND (1 2 3) (1 2 3))
クオーティングされちゃうんだよな...
a, bに渡されたものがそっくりそのままa, bに入るようにはかけないものか?
0782デフォルトの名無しさん
2008/10/29(水) 23:50:420783782
2008/10/29(水) 23:54:28とりあえず実践Common Lispの9章まで読んでみるといいと思うよ。
英語OKならPractical Common Lispでもいい。
0784デフォルトの名無しさん
2008/10/30(木) 00:09:05aまたはbがコンスで、かつそのcarが'QUOTEの場合だけ、事前にもういっちょquoteしてやったらどうよ
0785デフォルトの名無しさん
2008/10/30(木) 02:37:06逆だろ。
「英語がダメなら実践Common Lispでもいい」じゃないのか普通は。
原書である上にタダで読める方を後にもってくる理由がわからん。
0786デフォルトの名無しさん
2008/10/30(木) 08:33:550787デフォルトの名無しさん
2008/10/30(木) 08:50:17言いたいことはわかる。でもその「理由がわからん」ってのは嘘だねw
「レスって何ですか?」とかの親戚。「あるべき道しか理解できないキャラ」作るの好きだよな、マって。
0788デフォルトの名無しさん
2008/10/30(木) 09:18:43天然だろ。
キャラ作るという発想は陰謀論の親戚。
0789デフォルトの名無しさん
2008/10/30(木) 09:47:380790デフォルトの名無しさん
2008/10/30(木) 10:06:32なんで?
0791デフォルトの名無しさん
2008/10/30(木) 10:26:390792デフォルトの名無しさん
2008/10/30(木) 12:12:080793デフォルトの名無しさん
2008/10/30(木) 12:47:58(defmacro test (fun &rest lists)
(let ((form `(,fun ,@lists)))
`(format t "~S => ~A" ',form ,form)))
(test mapcar #'+ '(1 2 3) '(4 5 6) '(7 8 9))
↓
(mapcar #'+ '(1 2 3) '(4 5 6) '(7 8 9)) => (12 15 18)
こーゆーのはちょこちょこ使う。
0794デフォルトの名無しさん
2008/10/30(木) 23:12:24なんでわざわざ引数わけてるの?
(defmacro test (&rest form)
`(format t "~S => ~A" ',form ,form))
じゃダメなん?
0795793
2008/10/31(金) 01:04:400796デフォルトの名無しさん
2008/10/31(金) 06:59:480797デフォルトの名無しさん
2008/11/02(日) 18:14:47を入れてVista上で使いはじめところなんですが、質問があります。
グラフィック系のプログラム(3D-CADや2Dグラフ表示)を
作りたいんですが、お勧めのライブラリとかありますか?
検索でこれ(ttp://www.cliki.net/graphics%20library)を
見つけたんですが、多すぎてどれを選べません。 orz
できるだけインストールが簡単なものがいいです。
お知恵をお貸しください。m(_ _)m
0798デフォルトの名無しさん
2008/11/02(日) 19:18:18ttp://miyamuko.s56.xrea.com/xyzzy/cairo/intro.htm
0799797
2008/11/03(月) 01:23:54ありがとうございます。
さっそく動かしてみます!
3D系のものも、何かないでしょうか・・・。
3D CADのブール演算のようなものを作りたいんですが、
そのプリ・ポストに使う予定です。
0800デフォルトの名無しさん
2008/11/04(火) 14:15:000801デフォルトの名無しさん
2008/11/05(水) 01:12:57(require :hunchentoot)
すると落ちる
コンソール上だと落ちない
0802デフォルトの名無しさん
2008/11/05(水) 08:16:51REPLバッファで式を評価すると
---
error in process filter: slime-dispatch-event: Elisp destructure-case failed: (:presentation-start 1 :repl-result)
error in process filter: Elisp destructure-case failed: (:presentation-start 1 :repl-result)
error in process filter: slime-dispatch-event: Elisp destructure-case failed: (:presentation-end 1 :repl-result)
error in process filter: Elisp destructure-case failed: (:presentation-end 1 :repl-result)
---
みたいなエラーがミニバッファに表示されて、それから結果が返ってきます
何が悪さをしているんでしょう?
Emacs側なのかそれともLisp側なのか
0803デフォルトの名無しさん
2008/11/05(水) 10:30:30実行環境を書かないと同じ経験した人ですら書き込み不能と思われ
0804801
2008/11/05(水) 14:16:58ubuntu8.04
でapt-getでinstallされるsbclとslime
emacs22
を使いました
hunchentootはasdfでinstallしました
0805デフォルトの名無しさん
2008/11/14(金) 19:52:19saveinitmem関数で実行形式のGUIアプリケーションを作ったのですが
これはポータブルなのでしょうか?それともダウンロードしたユーザーのマシン内にclispや
tcl/tk,ltkがインストールされていないと配布しても実行できないのでしょうか?
もし実行できないのならLispからGUIを呼び出したアプリケーションの
配布方法を御享受願います。ほかにもCUIのツールがあるのですが
どのように配布すればいいのかわからないのでよろしくお願いします。
0806デフォルトの名無しさん
2008/11/17(月) 11:19:53maximaの関数をsbclから直接利用しようとしたら
lapack呼ぶ関数がgclでしか動かないみたいなのだけど
数値計算したかったらgclを使えってことなんでしょうか
0807デフォルトの名無しさん
2008/11/25(火) 01:14:28どのようにすればいいのでしょうか?
開発環境がdebianなので他のOSに有るのかはわかりませんが
su-to-rootとという内部コマンドがあり-XオプションをつけるとX上のダイアログで
rootになれさらに-c cmdオプションでcmdをroot権限で実行する事ができます。
これとLtkを利用してボタンを押すとsu-to-rootでroot権限を手に入れて
cmdを実行するという事をしたいのですがその実行したいcmdにも引数が必要だと
(ext:run-program "su-to-root" :arguments '("-X" "-c" "cmd" "cmd-option"))
と言う風にするとcmd-optionがsu-to-rootの引数と認識されてしまいます。
そこで
(ext:run-program "su-to-root" :arguments '("-X" "-c" "cmd cmd-option"))
としてみても動作は同じでした。
これを解決するにはどのようにすればいいのでしょうか?
よろしくおねがいします。
0808デフォルトの名無しさん
2008/11/25(火) 01:22:36CLの質問じゃない気がするが。俺の環境じゃ "cmd cmd-option" で動く。
0809デフォルトの名無しさん
2008/11/25(火) 06:02:53このような微妙な質問は何処ですればいいのか....
0810デフォルトの名無しさん
2008/11/25(火) 13:31:380811デフォルトの名無しさん
2008/11/30(日) 21:34:10頭のmake-thread nameが余計だ
一瞬何のスレだかわからん
これにせいで明らかに失速してる
0812デフォルトの名無しさん
2008/11/30(日) 21:54:50前の【入門】Common Lisp そのn【質問よろず】 ってスレタイは
初心者にも優しい感じがして好きだったなあ
0813デフォルトの名無しさん
2008/11/30(日) 22:57:23次にスレ建てするときは戻すのを希望
0814デフォルトの名無しさん
2008/11/30(日) 23:12:55した結果が common-lisp :part 5 というスレだよな〜とは思っていた。
0815デフォルトの名無しさん
2008/12/01(月) 14:21:31× common-lisp
0816デフォルトの名無しさん
2008/12/02(火) 20:41:07最初にlispの情報を集める時は
入門 tourotial lisp
で検索する
今のスレタイだと検索にひっかからない
0817デフォルトの名無しさん
2008/12/02(火) 20:49:360818デフォルトの名無しさん
2008/12/02(火) 21:20:260819デフォルトの名無しさん
2008/12/02(火) 22:13:54それが神のlisper
0820デフォルトの名無しさん
2008/12/03(水) 00:14:250821デフォルトの名無しさん
2008/12/03(水) 14:47:370822デフォルトの名無しさん
2008/12/23(火) 17:57:00サイズを制限(?)するのであればfill-pointerが使えるようだが,書込み開始のオフセット
アドレスを指定する方法がわからん
誰か教えてください
0823デフォルトの名無しさん
2008/12/24(水) 21:01:33make-arrayの:displaced-toと:displaced-index-offset引数を指定で可能かと
ttp://www.lispworks.com/documentation/HyperSpec/Body/f_mk_ar.htm
0824デフォルトの名無しさん
2008/12/30(火) 14:35:30LTK、SDL、CLIMなどがあるということはわかったのですが、それぞれの特徴なんかを教えていただけたらと思います。
0825デフォルトの名無しさん
2009/01/13(火) 23:02:240826デフォルトの名無しさん
2009/01/19(月) 12:00:40練習問題を解いているのですが、誰か採点してくれませぬか。
もうちょっと短く書けるぞボケ! とか指摘してもらえるとうれしいです。
問題: リストの要素数ほどドット '.' を表示する関数をループ、再帰で書け
; ループ版
(defun display-dots (lst)
(do ((x lst (cdr x)))
((null x) 'done)
(format t ".")))
; ループ版 (length を使う)
(defun display-dots (lst)
(do ((i 0 (+ i 1)))
((= i (length lst)) 'done)
(format t ".")))
; 再帰版
(defun display-dots (lst)
(if (null lst)
'done
(progn
(format t ".")
(display-dots (cdr lst)))))
0827デフォルトの名無しさん
2009/01/19(月) 16:58:43おれだったらこう
(defun display-dots (lst)
(progn
(mapcar #'(lambda (x) (format t ".")) lst)
'done))
0828デフォルトの名無しさん
2009/01/19(月) 17:10:46doの終了条件からlength呼出をくくりだしたほうがいいんじゃないか
0829デフォルトの名無しさん
2009/01/19(月) 18:52:51(defun display-dots (lst &optional dots)
(if lst
(display-dots (cdr lst) (concat "." dots))
(progn (format t dots)
'done)))
趣旨を無視すれば、わたしならこうかな。
(defun display-dots (lst)
(format t "~{~*.~}" lst)
'done)
0830デフォルトの名無しさん
2009/01/19(月) 20:12:26>>826の再帰版は末尾回帰したかったのでは?
0831デフォルトの名無しさん
2009/01/19(月) 20:34:20progn内で呼び出してたら末尾再帰にならないんじゃないかな?
0832デフォルトの名無しさん
2009/01/19(月) 20:39:43(if (not lst)
(progn (format t dots) 'done)
(display-dots (cdr lst) (concat "." dots)))
とした方がより>>826の意図を(たぶん)すくいあげてるし、お行儀がいいかなと。
0833pl602.nas954.p-kanagawa.nttpc.ne.jp 826
2009/01/19(月) 21:53:22まだ本で mapcar と &optional のところまで進んでいないので、参考になります。ありがとうございます。
mapcar を使うとイテレータができて、&optional を使うと末尾再帰が書きやすくなるんですね (たぶん)。
とりあえず、まだ本に出てきていない mapcar と &optional を使わないという前提で、
みなさんのコードを参考に次のようにしてみました。
; 末尾再帰版
(defun display-dots (lst)
(if lst
(progn
(format t ".")
(display-dots (cdr lst)))
'done))
0834pl602.nas954.p-kanagawa.nttpc.ne.jp 826
2009/01/19(月) 21:59:01こんな問題でした。
問題: リストを引数とし、a というシンボルがいくつあるか返す関数をループ
と再帰で書け
; ループ版
(defun na (lst)
(let ((n 0))
(do ((x lst (cdr x)))
((null x) n)
(if (eql 'a (car x))
(setf n (+ n 1))))))
; 再帰版
(defun na (lst)
(if (null lst)
0
(if (eql 'a (car lst))
(+ 1 (na (cdr lst)))
(na (cdr lst)))))
Common Lisp は細かい関数がたくさん用意されているようなので、
もう少し勉強を進めて短く書けるようになりたいです。
0835デフォルトの名無しさん
2009/01/19(月) 22:29:04navi2ch を使っているならパッチ当てるべし
0836826
2009/01/19(月) 23:34:19おわー、いつの間にか fusianasan になっていました。
navi2ch が古かったんですね。ありがとうございます。
0837デフォルトの名無しさん
2009/01/19(月) 23:38:35> (mapcar #'(lambda (x) (format t ".")) lst)
ここは mapc 使おうぜ
0838デフォルトの名無しさん
2009/01/19(月) 23:53:230840827
2009/01/20(火) 00:31:32(defun na (list &optional (count 0))
(if (not list)
count
(na (cdr list) (if (eql 'a (car list)) (+ count 1) count))))
ってとこか。&optionalなしの末尾回帰はキビシイ
0841デフォルトの名無しさん
2009/01/20(火) 01:17:57(labels ((na (lst n)
(if lst
(na (cdr lst) (if (eql 'a (car lst)) (1+ n) n))
n)))
(na lst 0)))
みたいなところだろうけど、これは&optionalより先の話題か…
0842デフォルトの名無しさん
2009/01/20(火) 19:28:03(let ((n 0))
(dolist (x lst n)
(when (eql 'a x)
(incf n)))))
か
(defun na (lst)
(loop
for x in lst
count (eql 'a x)))
かな。
Paul Grahamの本だとloopマクロはあんまし出て来ないよね。
しかしこーゆーチュートリアル的なコードを頻繁に見てると
count関数の存在を忘れそうになるw
0843デフォルトの名無しさん
2009/01/20(火) 22:28:20(defun na (lst)
(do ((x lst (cdr x))
(n 0 (+ n (if (eql 'a (car x)) 1 0))))
((null x) n)))
0844デフォルトの名無しさん
2009/01/21(水) 00:56:33こういうリストがあって、
(* x (* 2 y))
これのyに値を代入した関数を作るマクロを書いたんですが、
上手く動作しなくて・・・
(defmacro chg (symb val lst)
`#'(lambda (x)
,(subst val symb lst)))
使用例:
(funcall (chg y 3 (* x (* 2 y))) 4 )
意図したとおりに動作する 結果:24
(setf f '(* x (* 2 y)))
(funcall (chg y 3 f) 4)
結果が以下のようになってしまう・・・。
(* x (* 2 y))
どうか、ヒントをください・・・。
0845デフォルトの名無しさん
2009/01/21(水) 02:02:21> (funcall (chg y 3 f) 4)
この書き方だと、subst 実行時に (subst 3 'y 'f) になっちゃって、
substが、fが指し示すリストに対して適用されない。
って書き方で良い?
たぶん、もっと正しい用語があるんだろうけど…。
いまのぼくにはむりっす。
0846デフォルトの名無しさん
2009/01/21(水) 02:12:08#'(lambda (x) (* x (* 2 3)))が返されるけど、
2つ目は (subst y 3 'f) → f だから #'(lambda (x) f) となってしまうよ。
0847デフォルトの名無しさん
2009/01/21(水) 02:15:520848デフォルトの名無しさん
2009/01/21(水) 07:27:39クォートされて単なるシンボルのリストになっているlstの値をevalで評価して、変数を含んだ式を取り出す必要がある。だからこう:
(defmacro chg (symb val lst)
`#'(lambda (x)
,(subst val symb (eval lst))))
0849デフォルトの名無しさん
2009/01/21(水) 10:00:46お前がやろうとしているのは
(setf lst1 '((= n 0) 1))
(setf lst2 '(t (* n (factorial (- n 1)))))
(defun factorial (n) (cond lst1 lst2))
これと同じことだな。
0850デフォルトの名無しさん
2009/01/21(水) 18:30:06そうすると
(funcall (chg y 3 (* x (* 2 y))) 4 )
が使えなくなるから、
(if (symbolp lst) (eval lst) lst)
と分岐するのが良い。
本当に>>844の意図してる挙動なのか知らないけど・・・。
0851デフォルトの名無しさん
2009/01/21(水) 23:57:21みなさん、いろいろとアドバイスありがとうございます・・・m(_ _)m
∫∫f(x,y)dxdy の数値積分をしたかったんです。
具体的には、2次元のガウス積分です。
∫f(x)dx を計算する関数を作ったので、2次元でも利用しようと・・・
f(x,y) のyに定数を入れて f(x) にしてから1次元のガウス積分
関数に渡すつもりだったんです。
C++でつくるなら、何も考えずに∫∫f(x,y)dxdy専用関数を作るんですが、
強力なマクロが使えるLispなら・・・と勉強を兼ねて冒険した次第です。
みなさんのアドバイスをもとに、もう一度考えてみます。
(たぶん、>>848,850さんの関数を使わせてもらうことになりますが)
ありがとうございまいた。
0852デフォルトの名無しさん
2009/01/22(木) 00:27:20「強力な○○が使える××なら・・・」
いかにもC++脳のひとがいいそうなせりふですが
マクロは使わないのが正解のような気がします
これでいいんじゃないですか
(setf f #'(lambda (x y) (* x (* 2 y))))
(setf g #'(lambda (x) (funcall f x 3)))
0853デフォルトの名無しさん
2009/01/29(木) 00:19:57Lispbox[http://gigamonkeys.com/lispbox/]
をダウンロードしました。
WindowsXPに、CLISP版のLispboxを導入しました。
現行のLispbox-0.7では、CLISPのバージョンは2.37です。
WindowsでEXEを作成できるCLISPはバージョン2.38からと見かけました。
http://lispuser.net/commonlisp/clisp.html#sec-12
EXE作成機能を使いたいのでCLISPの現行最新安定版2.47を
Lispboxの環境に導入したいのですがうまくいきませんでした。
Emacsを21.3から22.3へ
CLISPを2.37から2.47へ
SLIMEをslime-20060110からslime-2009-01-25へ
それぞれ変えて該当するフォルダと入れ替えました。
また、Lispbox-0.7での下記に相当するファイルを
中身を書き換えて追加しましたが、REPLバッファ?が表示されませんでした。
たくさんの文字が一箇所に集まるアニメーションが出ませんでした。
%LISPBOX_HOME%lispbox.bat
%LISPBOX_HOME%emacs-21.3/site-lisp/lispbox.el
%LISPBOX_HOME%clisp-2.37/lispbox-register.el
Lispboxの環境をいかしつつ、最新のCLISP、Emacs、SLIMEを導入する方法はないものでしょうか。
あるいは、ほかにLisp処理系をアップグレードするときの良い方策がありましたらご紹介いただけないでしょうか。
0854デフォルトの名無しさん
2009/01/29(木) 01:03:10http://lispuser.net/files/clisp-2.47-full.zip
そのページからは2.46にしかリンクがないから安定版じゃないのかな?
0855デフォルトの名無しさん
2009/01/29(木) 01:29:460856デフォルトの名無しさん
2009/01/29(木) 01:47:04大きなアプリ書けるようになってから取り掛かっても遅くない。
0857デフォルトの名無しさん
2009/01/29(木) 02:02:13夜更かしのかいがありました。
まだ何事もよく分からぬものなので
ご参考にしつつ明日以降、教えていただいたことを掘り下げていこうとおもいます。
まずはexeにこだわらず学習していこうとおもいます。
開発環境の操作方法や設定なども身につけたいです。
ひとつずつ試していこうとおもいます。
アドバイスありがとうございました。
0858デフォルトの名無しさん
2009/01/29(木) 02:12:12いろいろな処理系、ライブラリ、環境試せるよ。
0859デフォルトの名無しさん
2009/01/30(金) 18:32:20Windows版のCLISPは、ヴァージョンによってはSLIMEがうまく起動しない、
という報告が前スレにもあがってたね。一応、参考まで。
http://www.bookshelf.jp/2ch/tech/1201402366.html#973
0860デフォルトの名無しさん
2009/01/30(金) 22:10:11情報ありがとうございます。
0861デフォルトの名無しさん
2009/02/01(日) 23:53:170862デフォルトの名無しさん
2009/02/12(木) 01:03:40配布したいのですが相手方はエンドユーザーなので処理系の話などは理解してくれないと思います。
そこでWindows向けのexeファイルを作ろうと思うのですが
あいにく私の手元にはWin機が一台も無く出先のPCにclispを一時的に
インストールしexeを作成次第アンインストールして置こうと思っています。
clispのext:saveinitmemでwindowsのexeファイルを作成しようと思っているのですが、
ここでできるファイルはあいてPCのアーキテクチャが同じであれば無事動作する物と考えてよいのでしょうか?
おそらく友人のPCも出先のPCも"インテルはいってる"の環境だと思うので
無事動作するのならばそのためにやっかいなWindowsマシンを購入する必要は無いと
思っているのですがよろしくおねがいします。
0863デフォルトの名無しさん
2009/02/12(木) 02:14:07能書きはいいからさっさとWindws Server 2008をダウンロードして使え
0864デフォルトの名無しさん
2009/02/12(木) 04:48:210865デフォルトの名無しさん
2009/02/12(木) 06:26:44やはりWindows向けにはそのようにするしか無いのでしょうか?
>>864
Windows用のclispをダウンロードして
そこでプログラムをWindows向けに作成しろと言う事でしょうか?
0866デフォルトの名無しさん
2009/02/12(木) 07:00:260867デフォルトの名無しさん
2009/02/12(木) 10:38:34zipで処理系と一緒に渡すんじゃ駄目なの?
無理に話を難しくすることはないと思うが…
0868デフォルトの名無しさん
2009/02/12(木) 11:55:290869デフォルトの名無しさん
2009/02/12(木) 12:20:45まず「lha/zip/lhasaをインストールして」ってのを嫌って、
exe形式のセルフ展開アーカイブってのが流行ったけど、
今はwindowsでも普通にzip形式で配布してるよ。
中にインストーラが入ってたり。圧縮もできるからね。
EXE厨って何なんだ一体。
0870デフォルトの名無しさん
2009/02/12(木) 13:30:30ありがとうございました。
Windows環境ではアプリケーションはインストールが基本でした。
それを失念してしまっていて展開してスタンドアロン実行できないと困ると思っていました。
インストーラーとスクリプトファイルを同梱して渡す事にしました。
0871デフォルトの名無しさん
2009/02/12(木) 14:39:28どうでもいいがCAB形式忘れてる
0872デフォルトの名無しさん
2009/02/12(木) 16:08:52なにか参考になる書籍・Webページなどがありましたらご紹介願います。
C言語などで実装できればと思っています。
0873デフォルトの名無しさん
2009/02/12(木) 16:09:440874デフォルトの名無しさん
2009/02/12(木) 16:15:18レベル高すぎだと思う。
ttp://www-masu.ist.osaka-u.ac.jp/~kakugawa/hacks/clisp/
とか?
0875デフォルトの名無しさん
2009/02/12(木) 16:33:19あるていどほとんどの言語は使いこなせるのですがLispは仕組みについても知りたいですし
ガベージコレクションやビックナムやマクロなど素晴らしい機能の実装について見てみたいので
自作してみたかったのですまず>>874さんのご紹介してくださった1000行lispをじっくり学んでみようと思います。
0876デフォルトの名無しさん
2009/02/12(木) 16:49:21minischeme(tinyscheme)のがいいと思う。
3000行ぐらいだったかと。末尾再帰や継続も使える。
minischeme-0.85でググれば出てくる。
0877デフォルトの名無しさん
2009/02/13(金) 19:45:29インストールしました。toplevelで変数をsetqで束縛しようとすると
スペシャル変数になってしまう事はわかったのですが、
どうも手続き型言語の癖が抜けないようで数値入力を受けるプログラムで
(let ((x (gensym))
(format t "Num:")
(setq x (read)))
と書いてしまうのですがこのとき(setq x (read))の部分で毎回
undefined variable: X
と警告が帰ってきてしまいます、当然と言えば当然なのでどうすればいいのか迷っています。
このように手続き型の様に入力プロンプトから入力を受ける時のLispの伝統や規則が有れば
お教え願います。
0878デフォルトの名無しさん
2009/02/13(金) 19:57:19なんの問題もなく動くけど…
0879デフォルトの名無しさん
2009/02/13(金) 20:03:070880デフォルトの名無しさん
2009/02/13(金) 20:09:37gensymを何だと思ってると、ああなるのか。
0881デフォルトの名無しさん
2009/02/13(金) 20:11:59> toplevelで変数をsetqで束縛しようとすると
> スペシャル変数になってしまう事はわかったのですが、
ここからして違うが…
最初から勉強し直せ。
0882デフォルトの名無しさん
2009/02/13(金) 20:13:39(defun prompt-read (prompt)
(format t "~A" prompt)
(read))
で、あとは (prompt-read "Num: ") とかでどうかな?
0883デフォルトの名無しさん
2009/02/13(金) 20:16:140884デフォルトの名無しさん
2009/02/13(金) 20:20:46お前の斜めっぷりには参ったw
0885デフォルトの名無しさん
2009/02/13(金) 21:02:46Num:12
とするとxに12が代入されるようにしたいのです。
gensymしてるのは他にxと言う変数を使っているので
変数名の衝突を避けようとして使ってみました。たしかにいまいち使い方がわかりません。
ちなみにsbclないで(let (x) (format t "Num:") (setq x (read)))とすると
入力を受け付ける状態になって12と例えば入れるとその後にNum:が表示されます。
友人がclispでやっていたときはたしかNum:12とできていたような気がします。
その辺についてもよろしくおねがいします。
0886デフォルトの名無しさん
2009/02/13(金) 21:29:01> ユーザーにLispな部分を見せたくないので
なんじゃそりゃ
で、括弧が1つ足りないのは分かったのかい
0887デフォルトの名無しさん
2009/02/13(金) 21:33:37どんな言語をどれくらい使っていましたか?スコープの理解が不十分なように見受けられます。
例えば、 (let (x) (setq x (read))) の後で(print x) とした場合、(read) したxの値はもう消えています。
このあたりの感覚はLISPの書籍等を読みながら、実際に動かして練習したほうがいいでしょう。
また、後者の話は続にいう入出力のバッファリング問題ですが、C言語の経験等はありますか。
0888デフォルトの名無しさん
2009/02/13(金) 21:38:26何はともあれ素直にEmacs使ってSLIMEでやった方がいいと思うよ。
0889デフォルトの名無しさん
2009/02/13(金) 21:40:58そういう事は一通り理解してからにしなさい
0890デフォルトの名無しさん
2009/02/13(金) 22:14:01すいませんはじめの例題でなぜかletを使っていました。
コードを隣のノートマシンの画面から手打ちしたので間違えていたようです。
Lisp以外の言語はC/C++を7年,Javaを3年
Perlを3年Pythonを2年ほど学習した事が有ります。
とりあえずLispでもコードは書いた順序で動作すると思っていたのですが
(format t "Num:") (setq x (read))としても
formatが入力受付後に出ているのでよくわかりません。
Cだと
int x;
printf("x: ")
scanf("%d",&x);
とすればx:が出た後そのまま入力を受け付けてくれたように思うのですが
0891デフォルトの名無しさん
2009/02/13(金) 22:23:450892デフォルトの名無しさん
2009/02/13(金) 22:28:10>バッファリングの問題
問題という事はsbclの仕様上の問題だと言う事でしょうか?
ありがとう御座いました。
0893デフォルトの名無しさん
2009/02/13(金) 22:28:32でforce-outputの「説明」をちゃんと読むがよろし。
0894デフォルトの名無しさん
2009/02/13(金) 22:38:11Num:12 をxに代入する問題をなんでlispで?Cでいいのでは
0895デフォルトの名無しさん
2009/02/13(金) 22:42:56あとCにもfflushなんてのがあったなー
0896デフォルトの名無しさん
2009/02/13(金) 22:46:29BigNumとか強力なマクロとか...
取り合えずドキュメントを読んでみます。
clispもlocaleのエラーが起動時にうるさいですし
0897デフォルトの名無しさん
2009/02/13(金) 22:50:48助かります!!
ありがとう御座いました。やっぱLispって難しいからわくわくします。
0898デフォルトの名無しさん
2009/02/13(金) 22:53:51下記のコード
(let (x) (format *standard-output* ">") (force-output *standard-output*) (setq x (read)))
でどうでしょう。これは C でいうところの
{ int x; printf(stdout, ">"); fflush(stdout); scanf("%d", &x); }
です。このコードには問題がありまして、値を設定した直後にletスコープが終了するため、
変数xがなくなってしまいます。これはお望みの動作と違うような気がしますが。
0899デフォルトの名無しさん
2009/02/13(金) 22:54:56何一つ聞いちゃいないな
0900デフォルトの名無しさん
2009/02/13(金) 22:59:43scanfで対話的に入力しなきゃならん仕事なのか?
もうちょっとましなデータ入力しようよ。
0901デフォルトの名無しさん
2009/02/13(金) 23:00:19(setq x (read)) を (read) にしてしまえばいい。
xの存在理由がなくなるけど
0902デフォルトの名無しさん
2009/02/13(金) 23:04:57質問者は「 は…年学習した」とはいっても「使える」とは一言も言ってないw
0903デフォルトの名無しさん
2009/02/13(金) 23:10:05ユーザーに見せたくない、とおっしゃっておられますが、誰かに説明でもするのでしょうか。
断片的な単語が誤った文脈で使われているようですし、理解が不十分な状態で説明を行うのは止めたほうがいいと思います。
老婆心から忠告しますが、あなたの現在の実力では筋の通った説明にはならないでしょう。キーワードを並べただけでは説明にはなりません。
0904デフォルトの名無しさん
2009/02/13(金) 23:17:53(defun num (sym) (format *standard-output* "Num:")(force-output *standard-output*)(set sym (read)))
これでどう?>>897
(num 'x) と実行すれば x に代入されるぞ。(num 'y)でyに代入だ。
一応求める動作はしてるんでないかい
0905デフォルトの名無しさん
2009/02/13(金) 23:18:18ありがとう御座いました。
自分にも反省点や学習した点が多々有りますので
じっくりとマニュアルを読みながら学習したいと思います。
0906デフォルトの名無しさん
2009/02/14(土) 00:30:07Lispが難しいんじゃなくて、お前さんの頭がお粗末なんだよ。
0907デフォルトの名無しさん
2009/02/14(土) 01:56:350908デフォルトの名無しさん
2009/02/14(土) 02:38:14ここでも見るよろし
0909デフォルトの名無しさん
2009/02/14(土) 04:04:537年もC/C++をやっていると称する人間を初心者扱いとか、
逆に本人に失礼だろう。
0910デフォルトの名無しさん
2009/02/14(土) 07:15:54釣りにしては調子の外れ具合が予想の斜め上すぎる
0911デフォルトの名無しさん
2009/02/14(土) 07:56:26Common LispとSchemeの関係は
VisualWorksとSqueakの関係みたいなものでしょうか?
0912デフォルトの名無しさん
2009/02/14(土) 08:18:320913デフォルトの名無しさん
2009/02/14(土) 09:15:11C++(実用一点張り)とPASCAL(学術重視)みたいな関係というかそういう比較って意味ないと言うか
0914デフォルトの名無しさん
2009/02/14(土) 09:35:380915デフォルトの名無しさん
2009/02/14(土) 09:39:58そんなことどうでもよくね?
0916デフォルトの名無しさん
2009/02/14(土) 11:37:52VisualWorksとSqueakの関係とか目的も状態も全然違う。
ありのままで理解する努力が必要でしょう。
0917デフォルトの名無しさん
2009/02/14(土) 12:04:23それでまた犬と猫は動物だから同じだとか言うと、いや、全然違う、と
0918デフォルトの名無しさん
2009/02/14(土) 12:10:180919デフォルトの名無しさん
2009/02/14(土) 13:55:02全世界を愚痴らなくちゃいけないから大変だ。
0920デフォルトの名無しさん
2009/02/14(土) 14:59:06とこれは俺の言葉。
0921デフォルトの名無しさん
2009/02/14(土) 15:02:220922デフォルトの名無しさん
2009/02/14(土) 15:29:16全否定されているうちに悟りを開く講習会とか、あんたの好みに合いそうだけどなー
0923デフォルトの名無しさん
2009/02/15(日) 05:43:44関連はありますか?
0924デフォルトの名無しさん
2009/02/15(日) 11:50:29修論は半分くらいしか書けてなくて
しかもオチが未定だったぞ。
よく卒業できたもんだ。
0925デフォルトの名無しさん
2009/02/15(日) 11:57:480926デフォルトの名無しさん
2009/02/15(日) 23:54:27まあ関連はないんですけどね。
0927デフォルトの名無しさん
2009/02/16(月) 14:39:28ところで妙に凝ったスレタイはどうする?
0928デフォルトの名無しさん
2009/02/16(月) 14:46:29凝った、というかキモイけどな
立てる奴が勝手にすればいい
0929デフォルトの名無しさん
2009/02/16(月) 15:48:45彼女ができるlispはどれですか?
0930デフォルトの名無しさん
2009/02/16(月) 16:20:08Common Lisp と Scheme の関係は、
Smalltalk と SELF の関係みたいなもんかな。
文法は一緒だけど、後者はシンプリシティを追求しているとことか。
0931デフォルトの名無しさん
2009/02/16(月) 16:29:550932デフォルトの名無しさん
2009/02/16(月) 17:12:13(MAKE-THREAD :NAME COMMON-LISP :PART 5)
0933デフォルトの名無しさん
2009/02/16(月) 18:29:130934デフォルトの名無しさん
2009/02/16(月) 19:55:34このスレタイはちとやりすぎだろ、なんか入門者お断りって雰囲気だし
0935デフォルトの名無しさん
2009/02/16(月) 20:12:43現スレタイはちょっと凝りすぎで痛い気がする・・・
0936デフォルトの名無しさん
2009/02/16(月) 20:17:20ちなみに旧スレタイ
【入門】Common Lisp その6【質問よろず】
0937デフォルトの名無しさん
2009/02/16(月) 20:33:570938デフォルトの名無しさん
2009/02/16(月) 20:37:48旧スレタイに更に1票
0939デフォルトの名無しさん
2009/02/16(月) 20:42:39これでいい
0940デフォルトの名無しさん
2009/02/16(月) 21:03:50Part.6だから括弧の数も6で合わせないとダメ
0941デフォルトの名無しさん
2009/02/16(月) 21:35:520942デフォルトの名無しさん
2009/02/16(月) 21:58:24LISP勉強したいとかいってる初心者にいきなりSICP勧めるとか…
0943デフォルトの名無しさん
2009/02/16(月) 22:13:260944デフォルトの名無しさん
2009/02/16(月) 22:16:430945デフォルトの名無しさん
2009/02/16(月) 22:20:26わけわからん
せめて日本語にしようぜ
0946デフォルトの名無しさん
2009/02/16(月) 22:23:42大した内容もないのに、ちょっと括弧の打ち所が悪かっただけで。
もう動かないんだぜ。
0947デフォルトの名無しさん
2009/02/16(月) 22:38:150948デフォルトの名無しさん
2009/02/16(月) 23:19:360949デフォルトの名無しさん
2009/02/16(月) 23:19:53わかりにくさを追求するとこういうのも
0950デフォルトの名無しさん
2009/02/16(月) 23:35:16∧,,∧ ∧,,∧
∧ ∧ ( ) ( ・ω・)
(ω・ ) ( U) ( つ日ノ ∧,,∧
| U u-u u-u ( uω)
u-u (∩∩)
∧,,∧ ∩ ∧_∧
(・ω・') ⊂⌒( ・ω・)
⊂∪∪⊃ `ヽ_∩∩
0951デフォルトの名無しさん
2009/02/16(月) 23:35:50∧,,∧ .∧,,∧
∧∧(´‐ω‐`)(´‐ω‐`)∧∧
(´‐ω‐).∧∧) (∧∧ (‐ω‐`)
| U (´‐ω‐`)(´‐ω‐`) と ノ
u-u (l ) ( ノ u-u
`u-u' `u-u'
0952949
2009/02/16(月) 23:42:340953デフォルトの名無しさん
2009/02/16(月) 23:47:420954デフォルトの名無しさん
2009/02/16(月) 23:55:46)/ ノノ~)) (ノ゙゙")〉 l!
( ヽc#・-・)0 リ゚ヮ゚*|||< 泣き虫>>952
/ y/ / | ̄~|/ レ
<_」=∞< 0─とヾノ
____ / / l ヽヽ______// l ヽヽ_________
ヽuー-ーu'' ヽuー-u''
0955デフォルトの名無しさん
2009/02/16(月) 23:57:02γ~___〉 くじけるではないぞ
〈 〈 ・ω・) /l/l
) ̄~~ (,__、]う彡 ・・\
""へヘノ(_ノヽ-ヽ、__メ、゚_゚)
j(´ ||__し'_|| /
彡ヘ  ̄ ,ノ
| | | ̄ ̄| | |
|_|_| |_|_|
0956デフォルトの名無しさん
2009/02/16(月) 23:58:11/;;;人
. /;;/ハヽヽ わしはこんなスレタイに
/;;ノ´・ω・)ゞ しとうはなかった!
/////yミミ
し─J
0957デフォルトの名無しさん
2009/02/17(火) 01:53:23悩むところだな。検索にかかるという意味では
まぁ俺も旧でいいと思うが
0958デフォルトの名無しさん
2009/02/17(火) 02:56:560959デフォルトの名無しさん
2009/02/17(火) 03:01:58(越後の縮緬問屋の隠居じゃ :part 6)
とかで、どう?
0960デフォルトの名無しさん
2009/02/17(火) 03:03:290961デフォルトの名無しさん
2009/02/17(火) 03:09:38>>936でよろ
0962デフォルトの名無しさん
2009/02/17(火) 03:59:17|∧∧| (( ) ) (( ) ) ((⌒ )
__(;゚Д゚)___ (( ) ) (( ⌒ ) (( ) )
| ⊂l >>959 l⊃| ノ火.,、 ノ人., 、 ノ人.,、
 ̄ ̄|.|. .|| ̄ ̄ γノ)::) γノ)::) γノ)::)
|.|=.=.|| ゝ人ノ ゝ火ノ ゝ人ノ
|∪∪| ||∧,,∧ ||∧,,∧ || ボォオ
| | ∧ (´・ω・) (・ω・`) ∧∧
| | ( ´・ω) U) ( つと ノ(ω・` )
~~~~~~~~ | U ( ´・) (・` ). .と ノ
u-u ( ) ( ノ u-u
`u-u'. `u-u'
0963デフォルトの名無しさん
2009/02/17(火) 04:02:23∧,,∧ ∧,,∧ ∧,,∧ ∧,,∧ ∧,,∧
( ´・ω) (,, )(,, )(,, )(,, )ナムナムー
| ⊃|__,>;* ザッザッ ⊂ ヾ ⊂ ヾ ⊂ ヾ ⊂ ヾ
u-u ・;*;'∴ ( ,,) ( ,,) ( ,,) ( ,,)
~~~~´゙`゙゙´´ ~~゙`゙´\ ∧,,∧/`゙゙´´ ~~゙゙´``´`´~~~~~~~~~~~~゙゙´``´`´
>>959
0964デフォルトの名無しさん
2009/02/17(火) 04:17:21TVドラマ水戸黄門で、黄門様は自分の身分を偽り「越後のちりめん問屋の隠居、光右衛門」と名乗っています。
つまり
「越後のちりめん問屋の隠居」=「黄門」=「Common」
という等式が成り立ちます。これを適用すると、
(越後の縮緬問屋の隠居じゃ :part 6) => (Common :part 6)
となるため、Lispが抜けていて「Common Lisp」か「Common programming language」か
確定できないという重大なバグがあります。
従って、「(越後の縮緬問屋の隠居じゃ :part 6)が次スレのタイトルに相応しい」
という仮説は棄却されます。
0965デフォルトの名無しさん
2009/02/17(火) 06:38:400966デフォルトの名無しさん
2009/02/17(火) 09:19:37(【入門】アーッ!Lisp その6【質問よろず】)
でよろしいか-p)
0967デフォルトの名無しさん
2009/02/17(火) 10:25:430968デフォルトの名無しさん
2009/02/17(火) 12:14:30いちいち人に聞くな
0969デフォルトの名無しさん
2009/02/17(火) 18:50:38変なスレタイで建てたら削除依頼しちゃうぞ
0970デフォルトの名無しさん
2009/02/18(水) 00:28:53http://pc11.2ch.net/test/read.cgi/tech/1234884136/
0971デフォルトの名無しさん
2009/02/18(水) 00:31:46GJ
0972デフォルトの名無しさん
2009/02/18(水) 01:25:56久しぶりに見たけど、しっくりくるからやはりこれしかないな
0973デフォルトの名無しさん
2009/02/18(水) 14:29:190974デフォルトの名無しさん
2009/02/18(水) 17:30:26意外と簡単なんだね
0975デフォルトの名無しさん
2009/02/20(金) 18:03:38または本はないでしょうか
0976デフォルトの名無しさん
2009/02/21(土) 18:00:040977デフォルトの名無しさん
2009/02/21(土) 19:12:09きほんてきにデバッグ方法は処理系によって違うと思われ
0978デフォルトの名無しさん
2009/02/24(火) 12:30:310979デフォルトの名無しさん
2009/02/24(火) 18:31:10ここって980(とかともかくレス一定数以上)越えてしばらく書き込みなかったら
落ちたりするっけ?
0980デフォルトの名無しさん
2009/02/24(火) 19:02:05どうでもいいだろう
0981デフォルトの名無しさん
2009/02/24(火) 23:04:02次スレは980でいいだろ
0982デフォルトの名無しさん
2009/02/24(火) 23:47:27まぁゆるりといこうか
0983デフォルトの名無しさん
2009/02/24(火) 23:55:39英語が読めるならPAIPに小さなSchemeもどきのコンパイラの作り方が出てくるよ。
0984デフォルトの名無しさん
2009/02/25(水) 03:58:440985デフォルトの名無しさん
2009/02/25(水) 16:57:08http://lambda.s55.xrea.com/CMUCL.html
0986デフォルトの名無しさん
2009/02/25(水) 18:17:42sf.net
のcvsパスが変更になっただけでした
0987デフォルトの名無しさん
2009/02/25(水) 23:26:030988デフォルトの名無しさん
2009/02/26(木) 00:45:580989デフォルトの名無しさん
2009/02/26(木) 00:56:40C-c C-z
の逆向きってないのかな
0990デフォルトの名無しさん
2009/02/26(木) 02:15:560991デフォルトの名無しさん
2009/02/26(木) 14:02:440992デフォルトの名無しさん
2009/02/26(木) 14:10:000993デフォルトの名無しさん
2009/02/26(木) 17:19:540994デフォルトの名無しさん
2009/02/26(木) 17:36:210995デフォルトの名無しさん
2009/02/26(木) 17:43:580996デフォルトの名無しさん
2009/02/26(木) 17:48:060997デフォルトの名無しさん
2009/02/26(木) 17:53:070998デフォルトの名無しさん
2009/02/26(木) 18:03:320999デフォルトの名無しさん
2009/02/26(木) 18:29:151000デフォルトの名無しさん
2009/02/26(木) 19:00:0610011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。