1 名前:ミスターエックスワイジー [2007/10/06(土) 23:44:07 ID:L/pKByeF0] xyzzyってさ、一見さんお断りの京都料亭みたいでさ、何から手をつけていいのかわからないでしょ? とりあえず,初心者同士で解決できる問題はまず過去ログ・グーグルで検索した後ここで相談しましょう たとえば ・ここのHPに書いてある通りにやりましたができません. ・xyzzyが起動しなくなりました. ・キーバインドってどうやって変更するの? 初心者の私が答えられるのはこの程度です. 自分でlispが書けるような方,こんな機能が欲しいのですが だれか作ってくださいという方は Win板本スレへ。 xyzzy Part15 @Win板(通称:本家) pc11.2ch.net/test/read.cgi/win/1175649315/ 過去ログ & 関連リンクは>>2-5 あたりに。
481 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/07(金) 16:58:54 ID:v5grRbPT0] >>479 > >リードマクロがない > ある これは xyzzy にはあったね。他はちゃんと xyzzy にはあるって書いてあるだろ。 何て文盲なんだwww で、結局半分以上は xyzzy にも当てはまってるジャン? > 殆ど当てはまらないよ。 と言う理由を早く見せておくれよ。
482 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/07(金) 17:01:29 ID:TEMyC8Yi0] >>481 えー?そんな事言われてもアレだけあって 当てはまってるの2つ位ジャン? しかも、別に駄目って程でもなくて、どっちも良い感じのだし やっぱり殆ど当てはまらないよ。
483 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/07(金) 17:04:47 ID:v5grRbPT0] >>482 > 末尾再帰の最適化がない > 正規表現がダサい > スレッドがない > Lint > λ計算遊びがやりにくい > 多相性がない これだけだろ。 俺もこれらはどうでもいいと思うが、 これらが全てどっちでもよいなら、そもそもそのサイトを持ち出すことが的外れ。
484 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/07(金) 17:14:02 ID:TEMyC8Yi0] 入らない方 > 末尾再帰の最適化がない はclなら絶対条件ではないしょ。つまり当てはまらない > Lint これも要らないでしょ > λ計算遊びがやりにくい これは慣れでしょ。Emacsでもxyzzyでもあんまり関係ない。 入る方 > 正規表現がダサい 多少ダサいね。これはちょっと確かに微妙 > スレッドがない これもないが、まあ、どっちでも良い感じだけど > 多相性がない これも別に駄目な点じゃないし。 多めにみて3つだな、スレッドがないの外部と連携の良いxyzzyでは 完全にとはアウトとは言い切れないけど。
485 名前:名無しさん@お腹いっぱい。 [2008/03/07(金) 18:17:35 ID:v5grRbPT0] >>484 必要ないとか言語仕様的に必須じゃないとかそういう話じゃなくて、 実装されてるかどうかが問題じゃないのか? 必要じゃない、または問題無いから、その機能は実装されてなくても 当てはまらないってどんだけゆとりだよw ちなみにこれ↓どういう意味? > あとその日記はMewの人だよ。
486 名前:469 mailto:sage [2008/03/07(金) 21:20:11 ID:42SYDIsw0] とげとげしいかんじなのは発言者が小数で回してるからだろか。 肩に力が入りすぎっすよ。 lispの言語仕様がどうこうとか emacsとの比較とかは使いかたにはあんまり関係無い。 #lispを書き始める人は何割なんだろう?とか #emacsとの違いがとても気になるのemacsに行かずにxyzzyに留まる人は何割なんだろう?とか #実際の数字は知らないけど実感として両方とも半分未満なんじゃないだろうかと思ってる。 細かい仕様に関しては「使いかた」ではなくて本スレでやったほうが良いんじゃない? クロージャがどうとかリードマクロがどうこうとかが楽しいのはわからないでもないけど 全てのアプリケーション利用者が挙動を把握しておくべきことではないでしょ。 このパッケージ入れればこんなに楽しいな。 数行コピペすればここが好みの仕様になるね。 誰でもがごりごりlisp書きたくなるわけじゃないよね。 とかそんなかんじのスレだと思ってたんだけどちょっと上級すぎる議論だね。 #個々人の向上心とかとはまるで別の話のつもり。 #初級コースで本気でアクセル踏まないでと言っているつもり。 >>475 使い始めた00年以降のコミュニティの動向は把握しているはず。
487 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/08(土) 01:50:22 ID:Ss/NAjpI0] スレ読まずにカキコ xyzzyの隠し機能でも聞き出すつもりで質問したら レスでマクロ開発されてしまって恐縮することしきり
488 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/08(土) 09:07:24 ID:y5LkTOEM0] 流れを把握する気にもならずにカキコ 俺は自分もほしいと思った機能だからとか暇つぶし、 あとたまにコード書かないと忘れそうだから やってるだけだが、他の人もそんな感じじゃね?
489 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/08(土) 13:25:04 ID:rrMKpZVx0] 俺もそんな感じだな 最近はたまに数行〜数十行書くだけだが……
490 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/08(土) 13:44:09 ID:vrndz6zk0] 続きは本スレで!
491 名前:名無しさん@お腹いっぱい。 [2008/03/08(土) 23:10:38 ID:VYAZVVjf0] 流れと関係ない質問で恐縮ですが、教えてください。 OS を Vista にしたところ、xyzzy のファイラーで My Documents 等 特定のフォルダ内容を表示できなくなってしまいました。 何かの設定で表示できるようになるのでしょうか? UAC は無効にし、管理者権限で実行もしているのですが…… どなたかよろしくお願いします。
492 名前:名無しさん@お腹いっぱい。 [2008/03/09(日) 09:23:38 ID:V6NDnA2Y0] 自己レスです。 「Documents」フォルダになったんですね。「My Documents」も 残っているように見えるので勘違いしてました。 なれるまでずいぶんかかりそうだな……
493 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/09(日) 21:41:28 ID:Us7mstHb0] xyzzy wikiって落ちてます? それともどこかに引っ越しました? ググっても辿り着けなくて…
494 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/09(日) 21:50:39 ID:GI+eFuo30] >>493 落ちてるっぽいね。
495 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/09(日) 23:30:11 ID:ZwMUdl/D0] xyzzyではgtagsを使ってソース解析していますが、cscopeなるものもxyzzyから使用できるらしく、 導入しましたが、いまいち良さがわかりません。xyzzyからcscope使っている人いますか? あと、splintをxyzzyから使用できないでしょうか? (そもそもsplintの使い方を覚えないといけませんが・・・)
496 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/10(月) 00:02:02 ID:cZzTknXY0] xyzzyでコーディングならdoxygenもいいですよね。 私は組込みソフト開発でC言語で開発してます。
497 名前:名無しさん@お腹いっぱい。 [2008/03/10(月) 23:43:05 ID:GuOBuX0p0] ( ゙゚'ω゚')モマママ…マジで!? love6.2ch.net/test/read.cgi/kao/1198685446/
498 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/11(火) 07:07:03 ID:lEYPmKpK0] >>497 何のスレだよw
499 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/11(火) 08:32:52 ID:UoQpZBHH0] どんな場面で使うんだ、その顔文字…。
500 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/11(火) 23:57:09 ID:dIkeyo9v0] 使う所がないとか言われた時に ( ゙゚'ω゚')モマママ…マジで!?
501 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/12(水) 01:39:51 ID:jklpl0g70] (`・д・´)ヤメタマエ
502 名前:名無しさん@お腹いっぱい。 [2008/03/12(水) 02:06:53 ID:/iA++lMx0] ( ゙゚'ω゚')モマママ…マジで!?
503 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/12(水) 07:09:07 ID:hE6613V/0] (`・д・´)ヤリタマエ
504 名前:名無しさん@お腹いっぱい。 [2008/03/12(水) 11:22:06 ID:cyNCRmzO0] ttp://www1.bbiq.jp/rohinomiya/products/ のahk-mode.lをバイトコンパイルしようとすると、 IFフォームの形式が不正です: ((save-excursion (skip-chars-backward " ") (bolp)) nil (editor::ahk-indent-line) (newline)) とエラーが出ます。 xyzzyのバージョンは0.2.2.235ですが、どこを直せばよいか教えてください。
505 名前:muSSsomzwuEobRw mailto:qrawid@vhkals.com [2008/03/12(水) 11:24:18 ID:fHMZRP1N0] ffT3X3 <a href="uhkgjxldgipl.com/ ">uhkgjxldgipl</a>, [url=qwdcgjdwwijh.com/]qwdcgjdwwijh[/url], [link=vdsjlyocgonj.com/]vdsjlyocgonj[/link], lwllvidelkaw.com/
506 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/12(水) 11:56:40 ID:eQR3J2bz0] 511-512 行目 (ahk-indent-line) (newline)) を (progn (ahk-indent-line) (newline))) とすればいいんじゃないかな。
507 名前:504 mailto:sage [2008/03/12(水) 13:26:14 ID:cyNCRmzO0] >>506 ありがとうございました。それで行けました。
508 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/12(水) 18:10:22 ID:CXuyJm1k0] filter-bufferでperl使って処理とかが便利そうだけど、 perl初心者レベルでも学習できるわかりやすい解説ページってないのかな。
509 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/12(水) 20:42:11 ID:AnJeQUM/0] いくらなんでもそれはスレ違いだろう
510 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/13(木) 08:16:41 ID:g0Mb53Ft0] だがそのアイデアはいただいた
511 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/13(木) 12:25:00 ID:Ug2dojLK0] php-mode の時は、php の chm を javascript-mode の時は、JavaScript のchmなヘルプを 引くといった感じで、mode ごとのヘルプを引けるようにするにはどうしたらいい?
512 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/13(木) 12:44:59 ID:Eom/GLXP0] >>511 モードごとに chm ファイルのパスを指定する変数作って、それで引く。 hookに設定するコードを追加する。
513 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/13(木) 12:59:20 ID:Jol6pkqo0] モードとファイルパスの alist 作ればフック使わなくて済むんでない?
514 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/13(木) 14:05:21 ID:9Z2p3YPs0] >>510 wktk
515 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/15(土) 18:40:13 ID:XrRca/v/0] 会社と家で串の有無という違いがあるんですが、 それでも同じsiteinit.lを行き来&ネットインストーラーでインストール だけでxyzzyで同じ動作を成立させたいので、 property.lとかファイルを作ってその中にプロキシなど環境依存の設定を書いて、 siteinit.lにはwhenで変数の中身を判定して、あったらそれを串として www-modeやnetinstallerの串に指定し、 nilなら指定しない、というlispを書きたいんですが、 なにか参考になるlispありませんか? まだ入門xyzzyでかじりだしたばかりなんですが、 もうすでに誰か書いていそうで……。
516 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/15(土) 18:48:31 ID:+O/leNY/0] (machine-name)
517 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/16(日) 01:23:16 ID:we8c+bHH0] >>516 そんなのあったんですね。 ありがとうございます。
518 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/16(日) 03:01:46 ID:svGtugEF0] QuickTourで新発見してしまった……まだまだだな
519 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/17(月) 18:32:27 ID:lFhpr7NB0] 一時的に処理を中断・待ち状態にしてエンター入力で処理を継続させたいと思ったのですが (read)はエンターキー押しただけでは受け付けないみたいなのですが、 エンターだけでも受け付けるようにするにはどうしたらよいのでしょうか?
520 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/17(月) 18:51:59 ID:FQtW4JOP0] (read-char *keyboard*) かな
521 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/17(月) 18:55:23 ID:4lgYTGWx0] >>519 read-char かな。 (while (char-not-equal #\RET (read-char *keyboard*))) あるいは msgbox とか。
522 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/17(月) 19:12:45 ID:6o34g/8i0] >>519 場合によっては sit-for も使えるかもね。
523 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 02:50:49 ID:ZsQRlX2Z0] xyzzy日記って無くなってたんだな ちょと残念
524 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 11:52:43 ID:8U31pdFE0] >>523 xyzzyWikiに移っただけで、中身自体は今もあるよ。 xyzzy.s53.xrea.com/wiki/index.php?QuickTour
525 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 12:14:52 ID:/Jo6trcq0] Cでプログラムを作るときにxyzzyを使ってますが、その際アウトラインモードを使おうと思いますが、 どうもいまいちです。設定の仕方が悪いのでしょうか?Javaとかは最初からJava用のアウトラインモード の設定みたいなのがありますが・・・
526 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 18:19:56 ID:bkn0Asid0] >>525 Outline-tree2じゃダメ? 関係ないけど、誰かtwitter-mode作らないかな…… あとrtm-modeも。
527 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 20:04:06 ID:Z6y0Wmx70] >>526 任した
528 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 21:19:18 ID:pQ5vP1V20] twitterの誰か作ってなかったか?
529 名前:名無しさん@お腹いっぱい。 [2008/03/20(木) 21:42:49 ID:AZP8sQWp0] へなちょこリファレンスの印刷物って売ってないの? ほしいんですけど。
530 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/20(木) 23:30:07 ID:N2q+/VBz0] 禁句だったらスルーしてもらって構わないけど Emacs/Meadow じゃなくて xyzzy を使う利点ってなに?
531 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 00:10:09 ID:/eM3zPw90] EmacsやMeadowのごてごてした感というかLinux臭さがなくて、 WindowsっぽいUIなので。 そんで、キーバインドや機能構成はEmacs系の方が好きだから、 他のWindowsのエディタじゃなくてEmacs系のxyzzyを選ぶ。
532 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 00:35:47 ID:5b69tGxq0] - emacs lisp より xyzzy lisp のほうが書いてて楽 - netinstaller の存在 - 開発者が少ないので適度な問題が転がっているのでハックしがいがある -- meadow だとそれもうあるよってなって elisp を自分で書くことはあまりないと思う(まぁあまり書く気ないけど) - 昔のpcだとmeadowは重かった - meadow の gui がwindows と調和が取れてなくダサい - xyzzy は font の設定が楽
533 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 00:45:44 ID:Bsz+M8OW0] 自分はUSBメモリに入れて持ち歩いています。
534 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 00:46:46 ID:0UmH4LjD0] >>524 よく調べずごめんなさいorz
535 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 00:48:16 ID:mSQK44EX0] うちのノートPCだとMeadowは未だに結構もっさり感があるんだよな…。
536 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 01:26:52 ID:NcuvwGtK0] >>535 量も大きいし xyzzyの方がインストールとかはラクダね
537 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 02:38:42 ID:2zIxn3J10] ruby は NTEmacs で html は xyzzy とか 編集するファイルによって使い分けてる。 でも xyzzy のほうが全体の雰囲気は好き
538 名前:名無しさん@お腹いっぱい。 [2008/03/21(金) 12:34:59 ID:zwtOj2FZ0] >>533 自分もw 何気にこれは便利だよね
539 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 14:20:52 ID:NcuvwGtK0] >>529 紙のリファレンスとかは印刷しないとないと思われ。 でも、xyzzyからリファレンスを参照した方が便利だから 必要性は薄い感じはする。 ref-view.lとかinfo-modoki-modeとかを導入すると良いよ。
540 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 20:50:09 ID:bFWI3fWW0] >>530 Meadow/NTemacsだと日本語テキストの描画が重いのと、Windows上での安定性の差からかな 画面をスクロールさせたときに数秒固まるのはなんとかならないのかね。
541 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 21:01:02 ID:NA0lHU160] スクロールが普通ってのは意外と大きなポイントだったりする。 MeadowとかでWindowsっぽい普通のスクロールにしようと色々いじっても、 キーリピートするとやっぱりページスクロールになったり、遅かったり。 まあ、慣れと言われればそれまでなんだが。
542 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 22:46:57 ID:ceqm4x/Y0] >>539 電車とかで読みたいんじゃない? 俺も言われてみたら本で読みたいな、 と思った。 普段からいろんな関数知ってればすっと lisp書けそうだし。
543 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/21(金) 23:14:49 ID:XTH2m5GN0] やっぱ紙はいいよね。
544 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/22(土) 01:40:21 ID:cb7zk5u6O] ふと、DSでchm読めたら最高じゃね?と思ったんだが目が疲れるかな。 xyzzyのchmの他にもCLHS、CLTL2、OnLispとか持ち歩きたい。
545 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/22(土) 18:44:59 ID:j8ejh/VH0] >>544 Infoに変換したら? 最近Infoのマニュアル少なくなってきて俺涙目。
546 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/22(土) 22:53:05 ID:RJi3gfdZ0] linux系からwindowsに乗り換えてきたらmeadowより敷居が低かった。ていうかメドーは立ち上がらなかった。
547 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/22(土) 23:22:40 ID:LFZ9W0SB0] >>546 設定済みmeadowなら敷居は高くないと思うよ。 スクロールを高速にするパッチを入れてみたが、大分速くなったもののテキストによってはまだ重いね。 キーリピートしても1行ずつスクロールするようにすればいいんだが、その程度なら書けそうな気もする。 しかし、他のアプリでコピーができなくなったり、meadow2だとDYNAで文字入力が出来なくなったり 他のアプリに影響を及ぼすことがあるのは痛い。 それと、moccur-grepでファイルを移動していたらmeadowが落ちた。文字コードのせいかもしれないが やはり安定性に多少の問題があるような気がする。 拡張ライブラリが豊富なのと画像表示など機能が多いのはかなり魅力なんだけどね。
548 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:16:01 ID:LPw1MvYP0] merge-pathnames ってディレクトリパス作れないんですか? (setq *ebdict-directories* '((merge-pathnames "Koujien" dict-directory) (merge-pathnames "Webstar" dict-directory) (merge-pathnames "Wordnet" dict-directory))) こんな感じで辞書フォルダ設定しようとしたら、 辞書引くときにこんな感じで怒られちゃいました。 不正なデータ型です: merge-pathnames: pathname
549 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:27:24 ID:wLcTUJuT0] >>548 こうかな。 (setq *ebdict-directories* `(,(merge-pathnames "Koujien" dict-directory) ,(merge-pathnames "Webstar" dict-directory) ,(merge-pathnames "Wordnet" dict-directory)))
550 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:29:21 ID:LPw1MvYP0] >>549 うわ……元々カンマがあったのを忘れてました……。 すみません。ありがとうございます。
551 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:31:02 ID:kb7j9F9a0] とりあえず *ebdict-directories* を評価してみるといいよ。
552 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:31:42 ID:kb7j9F9a0] リロードするんだったorz
553 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:36:53 ID:LPw1MvYP0] 評価してみたら'()内がまるまる入ってたんですが、 カンマ入れてみたら今度は ','がバッククオート構文以外で現れました で蹴られるように……。
554 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:38:20 ID:LPw1MvYP0] あ、なんかシンボルの最初のやつが違うのか。 なるほど。 ありがとうございました。
555 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 01:40:43 ID:wLcTUJuT0] >>554 リファレンスの backquote とか見ればなんとなく意味がわかるかも
556 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 07:44:15 ID:NhCMrJiZ0] ディレクトリの数が多くなってくるとこうするのが好きだなぁ。 (setq *ebdict-directories* (mapcar #'(lambda (path) (merge-pathnames path dict-directory)) '("Koujien" "Webstar" "Wordnet")))
557 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 13:09:31 ID:FMoHEnkw0] scheme-modeを久しぶりに入れようと思ったらなくなっちゃいました。 ttp://fun.sci.fukuoka-u.ac.jp/wiki/index.php?xyzzy
558 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 21:10:33 ID:1AObhsCU0] >>557 結構前から消えてるね 拡張Lisp見つけたら片っ端からコレクションしてる俺は勝ち組み
559 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 21:37:00 ID:7ToPnKQ+0] >>556 なるほど。確かにそっちの方がスマートですね。 ありがとうございます。 >>555 うーん、なんとなくわかったようなわからんような……。
560 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 21:47:34 ID:7ToPnKQ+0] xyzzy Lisp Programming辺りを読んで出直してきます……。
561 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 22:10:40 ID:FMoHEnkw0] >>558 数日前にはあったよ。結構前からとはこれいかに?
562 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 23:05:49 ID:1AObhsCU0] ちょっと前 5分 少し前 30分 結構前 2時間 かなり前 数日 すごく前 古代
563 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 23:43:53 ID:kb7j9F9a0] かなりとすごくのギャップが激しいなw
564 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/23(日) 23:53:55 ID:LCPYsBbe0] なんで具体的な数字からいきなり古代とかになるんだよw
565 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/24(月) 01:06:16 ID:DZPkEqmK0] ひとつ、ふたつ、みっつ、…えっと、たくさんっ
566 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/24(月) 18:16:27 ID:pZJoAxj10] 萌えた
567 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 21:22:00 ID:vft/Trh+0] Lisp勉強中 (defun たす (&rest p) (let ((sum (apply #'+ p)) (num '("ひとつ" "ふたつ" "みっつ"))) (cond ((> sum 3) "たくさんっ!") ((> sum 0) (nth (1- sum) num)) (t "ないよっ!")))) (たす 1 3) => たくさんっ! マクロにも挑戦してみた。面白そうなんだけどわけわかんね。 (defmacro けいさん (&rest exp) `(progn (setq とね 0 をね 0 たすの #'たす) (apply ,@(reverse exp)))) (けいさん 1 とね 3 とね 4 とね -5 をね たすの) => みっつ 小一時間かかってやっと少しわかってきた('A`) こんなんでいいのかな。
568 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 21:35:13 ID:vft/Trh+0] うそ。なんかミスってた。マクロの方"ふたつ"って出る。 (apply ,@(reverse exp) 0) にすれば合う。 apllyって引数をリストで渡さないで羅列にしとくと 最後のが無視されるのかな? リファレンス見たけどわからん。
569 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 22:34:47 ID:3OCHSTON0] >>568 なんでかは知らないけど apply の最後の引数はリストじゃないとダメらしい。 (apply #'+ -5 4 3 1) => 2 (apply #'+ -5 4 3 1 ()) => 3 (apply #'+ '(-5 4) 3 1) => 不正なデータ型です: (-5 4): number (apply #'+ -5 4 '(3 1)) => 3
570 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 22:39:29 ID:s0yHGKbv0] 何でも何も、そのまんまの動作だろ。
571 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 22:54:17 ID:3OCHSTON0] いや、何でこういう仕様になっているのかなってこと。 別に最後の引数だけ特別扱いしなくても良さそうなのに。 って書いてから思ったけどそんなことしたら (apply #'list '(1 2 3)) が (list 1 2 3) なのか (list '(1 2 3)) なのか 分からなくなっちゃうのか。 勝手に納得しました。
572 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 22:59:57 ID:A8Dcbrq10] だな。 (apply #'+ -5 4 3 1 ()) ってのは (apply #'+ '(-5 4 3 1)) を書き換えた形なわけだし。 末尾が(本来なら)nilである必要があるってことだ。
573 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 23:08:17 ID:A8Dcbrq10] すまん、なんか勘違いしてた。無かったことに
574 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 23:26:21 ID:3OCHSTON0] なんとなく分かった気がする。 単純に引数を順番に繋げているだけなのかも。 例えば (arg1 . (arg2 . (arg3 . last-arg))) は (arg1 arg2 arg3 . last-arg) と等価だけど、この場合 last-arg がリストじゃないと nil でターミネイトされない。 って理解でいいのかな?
575 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/25(火) 23:40:13 ID:s0yHGKbv0] apply の最後の引数は defun とか lambda 式の引数の &rest の部分
576 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/26(水) 00:33:48 ID:HpZOS2g+0] >>568 羅列で渡したいならfuncallを使えばいいじゃん。
577 名前:568 mailto:sage [2008/03/26(水) 00:58:15 ID:74fzE1emO] >>569-576 おお、なんか色々ありがとう。 >>576 リファレンスに 引数の個数が静的に定まらない場合にはfuncallは向かない って 書いてあったから、ろくに調べず避けてたんよ。 確かにfuncall使うとうまくいくなあ。 向かないっていうのはどういう状況なのかな…
578 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/26(水) 01:05:43 ID:P5nzC0k10] >>577 > リファレンスに 引数の個数が静的に定まらない場合にはfuncallは向かない って マクロ展開すれば分かるけど定まってるじゃん。 (macroexpand '(けいさん 1 とね 3 とね 4 とね -5 をね たすの)) (progn (setq とね 0 をね 0 たすの #'たす) (apply たすの をね -5 とね 4 とね 3 とね 1)) > 向かないっていうのはどういう状況なのかな… 「けいさん」をマクロじゃなくて関数で書いたときとか。
579 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/26(水) 20:06:58 ID:74fzE1emO] >>578 あああマクロ展開で'たす'にばらした引数のリスト渡せるんだから apply使う必要ないってことか。丁寧にありがとう。 applyの挙動についてはOnLisp見たらわかりやすい説明があった。 頑張って読もう。
580 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/27(木) 16:20:33 ID:tHIU8V9iO] リストの最後はぬるぽ
581 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/28(金) 03:57:52 ID:p6SwFBAV0] 翻訳 '(a . (b . (c . (d . ())))) => (a b c d)