1 名前:デフォルトの名無しさん mailto:sage [2012/01/29(日) 15:37:08.66 ] Common Lisp、SchemeをはじめとするLisp族全般のスレです ■前スレ Lisp Scheme Part33 toro.2ch.net/test/read.cgi/tech/1318150738/ ■テンプレ wiki.fdiary.net/lisp/ ■関連スレ 【入門】Common Lisp その8【質問よろず】 hibari.2ch.net/test/read.cgi/tech/1309940115/
367 名前:デフォルトの名無しさん mailto:sage [2012/04/13(金) 19:27:43.96 ] すみません make-my-listの第一引数には一番外側のリストの順番に対して操作する関数を、 第二引数はリストをわたします。 第二引数のリストは、説明がしづらいのですが、1番目は生成されるリストのatomの数、2番目は1番目をいくつまとめるか、3番目は2番目をいくつまとめるか、という風になります >>365 こうしたいです >(make-my-list (lambda (x) (* 2 x)) '(3 2 1)) ( ((2 2 2) (2 2 2)) ) >(make-my-list (lambda (x) (* 2 x)) '(4 2 3)) ( ((2 2 2 2)(2 2 2 2)) ((4 4 4 4)(4 4 4 4)) ((6 6 6 6)(6 6 6 6)) ) >(make-my-list (lambda (x) (x)) '(3 2 3)) ( ((1 1 1) (1 1 1)) ((2 2 2) (2 2 2)) ((3 3 3) (3 3 3)) )
368 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/13(金) 19:50:21.27 ] >>367 部分的に共有構造になってるけどそれでもいいか? (define (make-my-list p l) (let ((n (car l)) (m (cadr l)) (z (caddr l))) (map (lambda(x) (make-list m (make-list n (p x)))) (iota z 1))))
369 名前:デフォルトの名無しさん mailto:sage [2012/04/14(土) 12:55:57.88 ] ありがとうございます。
370 名前:デフォルトの名無しさん mailto:sage [2012/04/16(月) 22:00:01.44 ] 質問です。プログラミングのコードって、Tabキーで解りやすくインデントがされますよね。 けれど、こういう掲示板にコードをコピペで張り付けると、インデントが全部消えちゃいます。 掲示板にコピペしても、インデントが残るようにするにはどうしたらいいんでしょうか。 ちなみにエディターはemacsです。
371 名前:デフォルトの名無しさん mailto:sage [2012/04/16(月) 22:05:21.75 ] 気にしないでいいと思いますが Pythonみたいなインデントに文法上の意味がある言語ならともかく どうしてもというなら とか全角空白とか
372 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/16(月) 23:08:37.71 ] >>370 このスレの住人なら emacs かそれに準ずる高機能エディタを使ってます。 それにコピペして数ストロークのコマンドでインデントは再現できます。 emacs なら C-x h でバッファ全体を選択した後に C-M-\ ですね。 なので、少なくともこのスレではあまり考えなくてかまいません。 >>371 の示す手順も掲示板のクセ次第です。 にちゃんねるでは通用しても掲示板の全てで通用するわけではないです。 見る側のブラウザやフォント指定次第では幅が合わずにやっぱり表示が崩れたりする上、 実際に実行させるために空白文字に戻す必要が生じてかえって手間だったりも。 それも数ストロークのコマンドで出来ますけど。 最近ではコードの断片を保存するサービスがいくつかあります。 そういうサイトを利用して掲示板には URL を貼り付けるといったこともよく行われています。 主なところでは、 ideone.com/ codepad.org/ codetter.com/ https://gist.github.com/ でしょうか。 各掲示板によって (にちゃんねるなら各スレごとに) だいたいの運用方法が暗黙に定着しているので、 過去のやりとりを参考にして下さい。
373 名前:デフォルトの名無しさん mailto:sage [2012/04/16(月) 23:51:34.70 ] Janeで見ているなら、レス番にアンカーがあればそこを右クリック なければ選択状態にして右クリック
374 名前:370 mailto:sage [2012/04/17(火) 09:08:20.11 ] >>372 動作確認(C-M-\)をしました。感動しました。マジでありがとう。
375 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 11:48:33.71 ] >>370 2chでは行頭の半角スペース・Tab は何個あっても消える。 全角スペースならおk。
376 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 16:06:43.90 ] dat上では消えてないから、専ブラで行頭空白保存する設定で使えばインデント復元できる。
377 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/18(水) 22:25:05.23 ] Guile 2 って Windows で動かんの?
378 名前:デフォルトの名無しさん mailto:sage [2012/04/21(土) 21:54:21.81 ] Gauche0.9.3きちゃう? これでGauche-tkも動く〜
379 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/21(土) 23:36:46.70 ] Windows でスレッドが使えるようになったのが個人的にはかなりありがたい。 それと https 通信に stunnel が不要になったのもデカいかな。 リリースに向けた作業って地味に面倒でモチベーションを維持しにくいからそうすぐってわけでもないと思うな。
380 名前:デフォルトの名無しさん mailto:sage [2012/04/21(土) 23:42:08.03 ] まじか。Windows環境でもスレッドうごいちゃうの?ビルド環境ないんで 0.9.3 は wktk しながら待たせてもらいます。
381 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/21(土) 23:53:48.61 ] そんなおまいらのために最新版を Windows 向けにビルドしてやったぞ。 www1.axfc.net/uploader/Ne/so/131324 Gauche-tk は入れといたけど tk そのものは別途インストールしてね。
382 名前:デフォルトの名無しさん mailto:sage [2012/04/22(日) 01:08:43.25 ] やだ…仕事はやい… ありがとー
383 名前:デフォルトの名無しさん mailto:sage [2012/04/22(日) 12:30:49.56 ] なにこのキモイ流れ?
384 名前:デフォルトの名無しさん mailto:sage [2012/04/22(日) 12:36:45.57 ] 河童のキモ流れ … 河童が肝を洗っているとうっかり流してしまいそのまま死ぬこと。 転じてキモがられて社会的に死ぬこと。
385 名前:デフォルトの名無しさん mailto:sage [2012/04/23(月) 14:13:08.18 ] ユーモアの欠片もないな
386 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 18:24:18.79 ] すいません、質問です。 '((a b) c d) と (list (list 'a 'b) 'c 'd) は、どこが違うんでしょうか?
387 名前:デフォルトの名無しさん mailto:sage [2012/04/27(金) 18:48:39.11 ] >>386 tips.lisp-users.org/scheme/index.cgi?%E3%83%AA%E3%82%B9%E3%83%88%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B
388 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/04/28(土) 00:45:03.59 ] >>386 C++ や Java の感覚で表現するなら前者はリテラルで後者はコンストラクタによってオブジェクトを作ってるイメージかなぁ。
389 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 02:16:59.90 ] 文字列と文字列の入った配列ぐらい違う
390 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 02:37:36.59 ] >>389 いや、無理に参加しなくてもいいんだよ
391 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 03:11:40.27 ] 前者は処理系によっては変更不可属性を付けられてもおかしくない
392 名前:386 mailto:sage [2012/04/28(土) 08:23:46.72 ] 387みたけど、しっくりこない。 「quote を使うとリストを定数として書くことができる。」とか書いてあるけど >(define symbol_1 '(1 2 3 4)) >ok >(car symbol_1) 1 >(cdr symbol_1) (2 3 4) うーん、わかんない。symbol_1は定数なの? (car 'symbol)をやってみると、 1st argument symbol to car not List object っていう風に怒られます。
393 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 08:39:01.76 ] quoteは、渡されたS式をそもそもソースコードとして評価せずそのまま返す、という機能だよ
394 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 14:56:42.22 ] >>392 CLで書いているけどこんな形で変わってくる ttp://ideone.com/nT1Tr quoteは読み込みのタイミングで一回だけリストを作っているけど、 listやconsなんかは評価ごとに新しいリストを作っている。 あと、もう一度symbol_1を評価してみれば分かるけど、 carやcdrはsymbol_1を変更してない。
395 名前:デフォルトの名無しさん mailto:sage [2012/04/28(土) 21:03:13.31 ] わかんない人は処理系のソースを読もうぜ 仕組みが一発でわかるぜ このへんはLISPでLISP書いてもわかんないとこだぜ
396 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 02:10:46.39 ] >>392 > (car 'symbol)をやってみると、 > 1st argument symbol to car not List object っていう風に怒られます。 readした後には[ car | [ symbol | nil ]]と言う二つのcons cellになってる。 [ car | [ quote | [ symbol | nil ]]]ではない。 carの引数がsymbolというシンボルオブジェクトなのだから、リストでないと怒られて当たり前。
397 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 02:51:05.97 ] atomとlistとconsの違いも判ってないやつにquoteなんて教えても無駄
398 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 03:21:45.50 ] うん、まあ判らないだろうなということ教えてるよね
399 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 05:15:35.89 ] 括弧で括った式 (関数 引数) この形式は関数の適用を意味する 関数と引数は一度しか評価されない 括弧で囲った式には、関数ではない特殊形式も存在する (特殊形式 引数) 特殊形式の引数が評価されるかは、その特殊形式によって決まる 引数の数は関数や特殊形式によって決まる 式(1 2 3 4)は、最初の要素が関数でも特殊形式でもないため、 評価するとエラーとなる 引用符の付いた式 '(1 2 3 4)は評価すると(1 2 3 4)が返る '(1 2 3 4)は(quote (1 2 3 4))と書ける quoteは特殊形式であり、 引数を評価せず、そのまま返すという機能を持つ
400 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 05:18:28.64 ] (define symbol_1 '(1 2 3 4)) defineは特殊形式であり、右辺の式を評価した結果の別名を定義する ここでは右辺の'(1 2 3 4)が評価され(1 2 3 4)となり、 symbol_1 → (1 2 3 4)という関連付けが行われる symbol_1のようなシンボルは評価すると関連付けられた値を返す 式symbol_1を単体で評価すると(1 2 3 4)を返す シンボルcarには関数が関連付けられており、 この関数はconsで作成された2値を格納するコンテナから、 最初の要素を返すという機能を持つ 式carを単体で評価するとその関数を返す (car symbol_1)は上で説明した通り関数の適用であり、 symbol_1が評価され、その部分が(1 2 3 4)になり、 同時にcarが評価され、その部分が関数になる それぞれの評価が終わるとcarの関数が適用され、 (1 2 3 4)の最初の要素の1が返る
401 名前:デフォルトの名無しさん mailto:sage [2012/04/29(日) 05:27:06.74 ] carの関数適用までが終わると、 式(car symbol_1)のすべての評価が終わったことになり、 結果を表示した後、次の式へ移るか、入力待ち状態になる この一連の流れをread-eval-print-loop(REPL)という
402 名前:392 mailto:sage [2012/04/29(日) 14:57:46.86 ] わかりました。すごくありがとう。 carに束縛された関数が評価されるのと同時に、 symbol_1が評価されて(1 2 3 4)が返り、 (1 2 3 4)は、carに束縛された関数に渡されるから、 >(car (1 2 3 4)) >1 となるわけね。みんな、ほんとうにありがとう。
403 名前:デフォルトの名無しさん mailto:sage [2012/04/30(月) 00:07:01.81 ] 本屋で「scheme手習い」と「scheme修行」がScalaのコーナーにあったんで Lispコーナーに移してきた。
404 名前:デフォルトの名無しさん mailto:sage [2012/04/30(月) 21:13:09.57 ] 俺も分離状態にあった『手習い』と『修行』をセットにしておいた。
405 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 18:43:33.28 ] プログラミングGaucheがscheme関連の良書だと気付かれてないのはどうすれば良いの
406 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 20:31:54.05 ] >>405 第4部がつまんないからだろ? その他の部分はありきたりの言語入門書と大して変わらんし…
407 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 20:55:25.75 ] ありきたりと言うが、schemeにはまっとうな言語入門書が他にないじゃん
408 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 21:17:48.45 ] 入門書は必要ないだろ
409 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/01(火) 21:21:41.12 ] 前にも書いたような気がするが、言語そのものに関する解説はケント・ディヴィグの「プログラミング言語SCHEME」が一番まともだと思う。 このレベルなら入門者にも充分に理解できる範囲だと思うし。 が、俺はだいぶん後になってから読んだので本当に入門に適しているかどうかわかんね。
410 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 22:17:12.12 ] 「プログラミング言語SCHEME」が入門者用だと?ふざけんな! 若い頃あれよんで、あまりのストイックさに泣いたわ。
411 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 22:53:15.92 ] 今なら『Scheme手習い』も『Scheme修行』も本屋に行けばあるだろうが。 これで岩波コンピュータサイエンスの『Scheme入門』も再版されたら文句なしなのだが。
412 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 23:03:21.11 ] 岩波のcommon lisp入門は持っているけど schemeの方はどんな感じ?
413 名前:デフォルトの名無しさん mailto:sage [2012/05/01(火) 23:11:06.87 ] >>405 半年強ぐらい前に日本語ネイティブな入門書として勧めたら、環境構築か忘れたけど何か欠けてるという指摘があった。 その時節電で止まってたオンライン版はみられる状態になってた。 karetta.jp/book/programming-gauche
414 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/01(火) 23:41:52.38 ] >>410-411 手習いと修行は問題集みたいな感じだと思うけどな。 何もしらないところから手探りで問題を問いていく内に Scheme への理解へも深まっている、というようなコンセプト。 それはそれで入門書としてよく出来てるいい本だと思うけど、 「言語」が前面に出てるのは「プログラミング言語SCHEME」 じゃないかという感じ。 やっぱ一番最初に読む本では無いかなぁ。
415 名前:デフォルトの名無しさん mailto:sage [2012/05/02(水) 04:24:10.08 ] >>414 俺はネットで公開してる原著の方でScheme入門したけどすんなり読めたよ。 プログラミング言語そのものが初心者という人向けではないけど Javaなり何なりわかってる人がSchemeを扱えるようになるには平易でいい。
416 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/06(日) 22:23:10.69 ] >>378 リリースに向けた作業が大詰めに入ってる模様。
417 名前:デフォルトの名無しさん mailto:sage [2012/05/07(月) 18:40:20.76 ] >>416 おー msysで野良ビルドしちゃる exeで勝手にインスコされるようなのは嫌なんよね
418 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 02:32:53.29 ] gaucheはぜひネイティブコンパイルを実装してほしい
419 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 05:12:40.78 ] 以前、試しにJITコンパイラまでなら実装してみたけど、 保守コストとのトレードオフで採用は難しいみたいな話してなかったっけ? ほぼひとりで開発してる上に本業もあるわけだし、時間足りんでしょう。
420 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 07:05:34.34 ] CPUは1つじゃないからな ARMなんかは複数命令混ざってるから JIT専門業者がいたら丸投げした方がいい
421 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 09:17:19.99 ] ネイティブコンパイル信仰者は、まずは既存のコンパイラをちゃんと調べて、 どういうpros-consがあるかちゃんと示せばいいのに、なんで「ネイティブネイティブ」って うわごとのようにくりかえすだけなんだろうか。 StalinとかChickenとか既にあるんだから。
422 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 09:44:36.96 ] gaucheが良いけどネイティブでないのが不満なのでは。 自分用にgaucheで書いたのを、配布段階でD言語で書き直した経験がある。 一般人への処理系インストールサポートは無理だった。
423 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 11:40:46.38 ] 動的型がどうしよもない ネイティブ化してもスレッデドコードに毛が生えた程度 ボトルネックをなんとかしないと個人でやる限界に近い
424 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 12:32:42.66 ] 配布だけの問題ならちょっとした工夫でなんとかなるだろ。 形式だけ exe になってりゃいいって言うなら mingw-exify が使えるし、 プリコンパイルしておけば速度も多少は改善できる。 もともとスクリプト言語として使う分には充分すぎる速さだしな。 いずれにしても配布しにくいという問題については考えているところみたいなので、 blog.practical-scheme.net/shiro?20120506-being-used どういう解決がいいのか希望があれば今の内に提案すれば方向性に 影響を与えられるかもしれないよ。
425 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 13:29:19.90 ] all in one な exe ファイルが欲しい、ということなら全く別の話だね
426 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 13:58:13.39 ] 元のexe欲しいって話からは外れていっていると思うけれど、 >>424 そこに書いてある配布は、処理系自身の問題で。 >>422 の言っているのはアプリの話でしょ。 最近、スクリプト系は、 処理系自身がコード配布も含めたパッケージシステム持つのが多いよね。 WindowsもMacも、aptみたいに依存関係まで管理するオープンな機構がないから。 node.jsはnpmってのが出来た。 ただ事前にnode.js, python, gitをインストールしなければいけない。 schemeで全部書いて配布に含めることである程度解決できるんじゃないか。 R(r-project.org)は配布に含まれてる。そしてCRANからインストール。
427 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 14:29:13.64 ] 最適化の話でなくてexeにするだけなら難易度はかなり低い gaucheもできたような つーかexeにしたいなんて誰か書いたか?
428 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 16:53:39.03 ] >>426 gaucheも gauche-package install <URL> で一応webから直接インストールできる。 依存関係はみてくれないみたいだし、CPANみたいに一ヶ所にまとまっててほしいけど。
429 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 17:00:58.33 ] やっぱり芋づる式にインストールしたいね。
430 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 20:31:22.63 ] 処理系やライブラリをインストールしてもらうのって難しいからな。 CUIを使うと壊れると思ってやがる。GUIのパッケージ管理システムも欲しい。
431 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 21:07:41.24 ] Rは、R commandarってGUIラッパーもパッケージとして配布されてる。
432 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 21:16:37.47 ] py2exeならぬgo2exeか
433 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/08(火) 21:46:15.10 ] >>426 そもそも >>422 がネイティブコードが欲しい理由は処理系のインストールをサポートすることにネックがあると述べている。 ここではネイティブコードにするのは処理系のインストールの手間を無くす手段のひとつとしてやっているので、 処理系のインストールが充分に簡単、あるいは意識されないならばネイティブコードにする必要もなかったことになる。 確かにそれぞれ処理系の話とアプリケーションの話だけど根は同じだよ。
434 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/08(火) 21:47:32.52 ] >>427 > 最適化の話でなくてexeにするだけなら難易度はかなり低い > gaucheもできたような mingw-exify だな。 コードを文字列のままくっつけるだけだけど。 速度が要る場合にはライブラリをプリコンパイルする仕組 (gencomp) を使えばちょっと速くなるし最適化も 普通にスクリプトをロードするよりはちょっと強くかかるはず。 > つーかexeにしたいなんて誰か書いたか? exe を作らずにネイティブコンパイルする実行モデルに慣れてない人が ネイティブコンパイル = exe を作ると理解したんじゃない?
435 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 21:55:55.75 ] >>432 exeじゃなくてhellじゃなかろか、extension名
436 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 22:02:13.79 ] mingw-exifyっての使えば数メガバイトで 普通のexeアプリのようにschemeアプリを配布できるの?
437 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/08(火) 22:06:36.70 ] >>436 Gauche のライブラリがいずれにせよ必要なので単一の exe に出来るわけではない。 windows 用 gauche のパッケージに入ってる gauche-install.exe 等は mingw-exify によって処理して 作っているのでソース読めば意味がわかるよ。
438 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 22:56:15.91 ] delphiだって糞でかいランタイムが必要なんだぜ 気にすんな
439 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/08(火) 23:04:26.33 ] まったくだ。
440 名前:デフォルトの名無しさん mailto:sage [2012/05/08(火) 23:28:39.38 ] むしろ、Gaucheのバイナリ用ランタイム作ればいいのに 配布して終わりの形にできないと、作っても売れないのでおもちゃの域を出ない
441 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/08(火) 23:47:14.53 ] dll 類はともかく、 scm ファイルが多すぎるな。 zip にまとめたアーカイブから直接ロードする機能の提案はあったので、コア付近で実装すれば scm を全部アーカイブしてしまえるかも。 zip からロードする拡張パッケージはあるけど、それが依存しているライブラリを zip に入れるわけにはいかないので、 本格的にやろうとすると Gauche 本体で対応する必要はあると思う。
442 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 00:31:32.02 ] でも、そこまでできるようになったら scheme処理系の中でも群を抜いて使われるようになると思う
443 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 04:49:51.25 ] でもdllは実行時までに別ファイルになってないとならないだろ? 実行前に展開してもらう なら、アプリとGauche一式をzipで配っても同じことのような気もするんだが。 どうしてもexeひとつがいいなら、自己解凍アーカイブにしてexeをクリックしたら 一時ディレクトリに展開してアプリ起動する、とか?
444 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 21:11:32.34 ] >>433 それが困る理由は、メモ帳で改造できちゃうこと
445 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 21:32:56.06 ] >>444 オープンソース派から見ればむしろ望ましい。
446 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 21:39:11.08 ] 秘密がないと金にならない
447 名前:デフォルトの名無しさん mailto:sage [2012/05/09(水) 22:20:58.23 ] 現実は厳しいんだな
448 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 02:47:58.65 ] ゴミみたいなネイティブコードバックエンドなら ちょっと頑張れば実装できるだろうけど 難読化のために機械語を使うのは正しいのか……?
449 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 03:10:09.28 ] gaucheのwilikiで bad type of argument for str: #<<regmatch> ほにゃらら>というエラーメッセージが出たら、 編集ボタンが消えてしまい、そのページを編集することができなくなってしまいました データそのものは消えていないと思うのですが、どうすればよいのでしょうか。
450 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 03:34:20.49 ] ソース配布が嫌ってだけなら今でもVMコードをdllにできるでしょ (Gauche本体のビルド時にやってる) 非公式みたいだけど。
451 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 09:06:02.53 ] >>449 practocal-schemeのwilikiならこんな所に書いたりせず、Shiroさんに連絡汁
452 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 09:07:29.26 ] >>451 そうですね。そうします。
453 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/10(木) 18:53:41.68 ] Gauche 0.9.3 キター
454 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 19:39:47.88 ] WinのPortable版が来るらしいぞ。配布がかなり楽になるな。
455 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 22:28:50.49 ] お、来たのか
456 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 22:42:12.60 ] chatonでshiroさんが投稿しているね。 sourceforge.net/projects/gauche/files/Gauche-mingw/Gauche-mingw-0.9.3.zip/download 素晴らしい。これでusbメモリに入れて持ち運べる。
457 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 23:24:22.05 ] おいらは今cygwinでビルド中 こいつが終わったらmsysのもやんなきゃ
458 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 23:27:17.89 ] >>457 windowsなら>>456 を入れれば良くない? cygwinでmingwのgaucheを動かす弊害って何かあるのかしら。
459 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/10(木) 23:34:38.09 ] >>458 cygwin は間に入ってファイルパスを変換する。 (cygdrive とか) MinGW 版だとその変換が行われないので、 ファイルを見付けられないケースが起こってしまう。
460 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 23:34:59.47 ] >>458 単なる趣味でーすw
461 名前:デフォルトの名無しさん mailto:sage [2012/05/10(木) 23:52:58.27 ] >>459 なるほど
462 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 00:44:46.56 ] む、ビルドできねえ 2008-06-12のcygwinじゃやっぱ古すぎて駄目なのか それともどっか壊したのかなぁ 今更新規のcygwin入れるのもなんかアホくさいなぁ msys+mingwに至っては2004-04-30だしw
463 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 01:17:10.41 ] アドミン権限じゃないと書きこめないフォルダにインストしてるというオチだけはありませんように…
464 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 20:32:12.76 ] ./configure --enable-multibyte=sjisにするとコケるのか デフォのutf8にすりゃいいけど自鯖のはsjisでやってるからなぁ
465 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/11(金) 20:54:25.68 ] 言語処理系によって文字コードの扱い方に関する思想は色々だけど、Gauche の場合は 「内部的には一貫した文字コードを使い、入出力の段階で変換、 場合によっては不完全文字列という形で保持できるけどそのエンコードが何かってのはプログラマの責任で。」 というもの。 なので、内部的に使う文字コードは最も大きい文字セットを持つ UTF-8 を選択した方が問題が少ない。 内部文字コードが Shift JIS の場合に UTF-8 から変換をかけると情報が落ちてしまう場合がある。 変換にかかる時間が惜しいほどシビアな条件とかであえて選ぶのなら話は別だけど、 惰性でやってるだけならこれを機会に変えてみるのもいいかもね。 それはそれとしてバグはこのスレに書くより WiLiKi なり Chaton なりを通じて報告した方がいいね。
466 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 22:03:28.49 ] >>465 まぁバグじゃなくてmsysのバージョンが古いせいってのもありえるから まだまだ要検証だけどさ slibの場所も見落としてたし 一応0.9.1とか古い奴をビルドしてみたらこっちはできたみたいだけど なんだろうねー
467 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/11(金) 22:19:04.26 ] >>466 私の方でも試してみる。 今回から out-of-tree build が出来るようになってるからこういう検証が楽でいいね。
468 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/11(金) 22:27:49.25 ] >>466 再現 (?) した。 ビルド中にドキュメントの処理のところでエラーになる。 ../src/gosh -q -I../src -I../lib -lgauche-init /c/home/Gauche/doc/extract -jp -o gauche-refj.texi /c/home/Gauche/doc/gauche-ref.texi *** SYSTEM-ERROR: couldn't open input file: "[conv(utf8->SHIFT_JIS) from \"c:\\home\\Gauche\\doc\\intro.texi": Invalid argument Stack Trace: _______________________________________ 0 (with-input-from-file (find-file file) (cut filter pattern-in patt ... At line 60 of "c:/home/Gauche/doc/extract" 1 (with-input-from-file (car a) (^ () (if *outfile* (with-output-to- ... At line 141 of "c:/home/Gauche/doc/extract"
469 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 23:04:13.64 ] >>467 out-of-tree build って何?
470 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 23:24:55.46 ] >>468 そうそう、それ ひょっとしてiconv.exeが消えてるかとも思ったけどそんなことも無かったし
471 名前:デフォルトの名無しさん mailto:sage [2012/05/11(金) 23:46:58.21 ] doc/て文書だからあんま関係ないしスキップできないの?
472 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/11(金) 23:49:37.41 ] >>470 port-name 手続を使っているところに問題があると思う。 > PORTの名前を返します。ポートがファイルに関連付けられている場合は、ポートの名前は > ファイル名です。そうでない場合、ポートを説明する文字列が返されます。 "[conv(utf8->SHIFT_JIS) from \"c:\\home\\Gauche\\doc\\intro.texi" というのは変換ポートを説明する文字列だ。 UTF-8 ならば UTF-8 で書かれたドキュメントを読み込むときには変換ポートを通さないのでファイル名そのものを 得られていたが、 UTF-8 から Shift JIS へ変換する変換ポートを通すときにはその変換ポートの説明を得てしまう。 よって、それを元にファイル名を付けようとすると変なことになる。
473 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/11(金) 23:56:46.36 ] >>471 makefile をいじればとりあえず無視して進むことは出来るよ。 でも、結果的に今回はドキュメント生成スクリプトの些細な問題だったからいいけど、 Gauche 本体の問題が顕現した可能性もあるから、 いずれにせよ検証はした方がいいってこと。
474 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 07:27:08.46 ] おっ! 修正されたみたいだね。 > chaton.practical-scheme.net/gauche/a/2012/05/11#entry-4fad58d1-d2ec6 > shiro utf-8以外のエンコーディングでconfigureするとdoc/のビルドに失敗するので、 > 修正した0.9.3.2を出しました。 > utf-8でコンパイルするぶんには急いでアップデートしなくてもいいでしょう。
475 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 15:05:52.82 ] >>474 shiro さんってこのスレ見てんの?
476 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 15:11:13.17 ] doc/のビルドに失敗って… そもそもビルドする必要あるのだろうか
477 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 16:01:38.52 ] >>476 おまいは doc 無しで Gauche プログラミングできるのか。
478 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 16:05:40.27 ] Windows版はそもそもdocがない
479 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 17:36:33.78 ] マジで !? と思ったらあるやん。 share./info に。
480 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 17:42:48.37 ] shareの下なんか見ない
481 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 17:51:50.88 ] 禅問答するためのスレではない。
482 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:13:32.83 ] infoファイルってWindowsでどうやって見るの?
483 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:17:28.66 ] 色々やりかたはあるが、たぶんEmacsをインストールするのが一番簡単。
484 名前: ◆QZaw55cn4c mailto:sage [2012/05/12(土) 18:23:10.84 ] うわさのtextinfoですか? そんなものもあったなあ
485 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:24:21.78 ] windows用の場合info2htmlかなんかに掛けて .chmファイルとかにまとまってると便利なんだけど もっと一般的な形式があればそれで pdfじゃ多分読まない
486 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:25:46.24 ] win使いのほとんどはオンラインのhtml見てるんじゃないかと思う
487 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:26:50.61 ] ダイアルアップ時代はネット上のHTMLをローカルに保存して見てました
488 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:29:44.00 ] そっか、ドキュメントルートをwgetしてローカルで見るのが早いわな うん、解決
489 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 18:43:38.02 ] winでemacsでinfo-lookupです。
490 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 19:42:49.92 ] えっと、andoriodでも相変わらずemacsみたいな変態が幅利かせてる・・の?
491 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 19:54:40.81 ] Androidって何の話?
492 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 20:09:35.94 ] お、ビルドでけた info.gzをhtmlにする方法ってなんかあったような気がするが忘れた ttp://practical-scheme.net/vault/gauche-refj.tgz ここリンク死んでるのな
493 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 20:47:12.54 ] >>479 Windows版のshare/info/の下は全部gzで固まっててビルドしてくれる気すらない
494 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 20:49:59.78 ] あ、wiliki動かしたらlibiconv-2.dllが無いって怒られちゃった たしか前はそんなこと言われなかったと思ったのに まー適当に拾ってきて入れたけど やっぱりどっか壊してたんだな
495 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 21:05:24.99 ] >>493 違うよ。 それが成果物なんだよ。 元は英語、日本語を平行して記述した形式になっててそれを Gauche で書かれたスクリプトで切り分けてその形にすんの。
496 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 21:13:09.79 ] >>492 gauche のソースツリーの中で doc ディレクトリに下りてから make htmls とすれば html 形式のドキュメントも生成してくれるよ。
497 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 21:17:14.99 ] >>482 だいたいは emacs から見る。 freedeai.180r.com/up/src/up11210.png 知りたい関数名がある箇所にポイントを持っていてちょいといくつかのキーを叩けば そのままドキュメントを開いてくれるというのはすばらしい開発効率をもたらしてくれる。 索引から探すとかアホらしくてやっとれんので、html 版はそんなに見ないよ。
498 名前:デフォルトの名無しさん mailto:sage [2012/05/12(土) 21:58:29.29 ] >>497 windowsのemacsを使ううえで、どうすればそうできるのですか? EmacsからGaucheを使う - karetta.jp karetta.jp/book-node/gauche-hacks/004640 今のところこれしか設定していません。
499 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 23:25:24.18 ] >>498 俺は leque さんの gauche-mode を使ってるなぁ。 www.katch.ne.jp/~leque/software/repos/gauche-mode/ ドキュメントがあるディレクトリとキーバインドだけ設定すればいいようになってる。 gauche-mode と言いつつ R6RS の一部に対応してたりするので、 俺は gauche 以外の Scheme を書くときでも gauche-mode を使ったりする。
500 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/05/12(土) 23:38:42.70 ] >>475 わからん。 どちらかに断じることが出来る根拠はない。 ただ、ブログとかで Gauche 関連のことを書くと初心者の しょーもない疑問にも応えに現れることがあるので、 割と広範囲に観測してはいると思う。
501 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 00:43:09.37 ] >>499 ありがとうございます。 うまく設定できました。
502 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 15:33:07.96 ] Kyoto.lisp は盛り上がりましたか?
503 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 16:06:36.44 ] msysの方はおkとして cygwinの方はsignal.cのとこで死んじゃうなぁ Scm_SigCheckのあたりから SIGPWRがundeclaredとかってさ threads=noneにすればいけるけど ちなみにcygwin 1.5.25-15 gcc 3.4.4だす
504 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 16:41:01.21 ] cygwinてまだメンテされてんのか なんか一時期まともにダウンロードできなくて見捨てた
505 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 17:14:23.49 ] 最近はandLinuxとかが普通じゃないの?
506 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 18:24:39.46 ] Windows との連携というか距離感というか、そのへんで選択肢は変ってくる。 cygwin アプリからは Windows API も呼べるけど、 andLinux 上で動くソフトは完全な Linux アプリなわけで、 どっちが良いとか普通とかとは言えないと思う。
507 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 19:31:52.46 ] >>502 ざっくりいってshibuyalispが現地参加者80人ust参加15人で、95人 kyotolispが現地35人、ust50人で、85人ってところみたいだから、大成功の部類じゃね?
508 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 20:07:46.92 ] andというかCoLinuxって64bitだとまだ動かないんじゃないの?
509 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 22:17:04.58 ] linuxは乞食の集まりだから進化が遅い
510 名前:デフォルトの名無しさん mailto:sage [2012/05/13(日) 23:07:43.05 ] 今回のでどのプラットフォームでもglやらtkとかGUIで遊べちゃう Gauche最強伝説だな newlispで組んだpcypをGaucheで組みなおそw
511 名前:デフォルトの名無しさん mailto:sage [2012/05/14(月) 16:09:00.86 ] こんな所にpeca民が 配信楽しみにしてます
512 名前:デフォルトの名無しさん mailto:sage [2012/05/15(火) 22:39:20.95 ] >>511 配信なんてしませんよw linuxでもwinみたいにpeercastが見たくて作っただけだからw