[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 03/26 12:58 / Filesize : 286 KB / Number-of Response : 995
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

CommonLisp Scheme Part11



1 名前:デフォルトの名無しさん mailto:sage [04/08/02 23:13]
過去スレ
Part1: piza2.2ch.net/tech/kako/987/987169286.html
Part2: pc.2ch.net/tech/kako/1002/10025/1002584344.html
Part3: pc.2ch.net/tech/kako/1008/10082/1008220265.html
Part4: pc.2ch.net/tech/kako/1016/10162/1016211619.html
Part5: pc3.2ch.net/tech/kako/1023/10230/1023091882.html
Part6: pc3.2ch.net/tech/kako/1031/10315/1031560687.html
Part7: ruku.qp.tc/dat2ch/0311/20/1042167213.html
Part8: pc2.2ch.net/tech/kako/1058/10582/1058263391.html
Part9: pc2.2ch.net/test/read.cgi/tech/1069594582/
Part10: pc5.2ch.net/test/read.cgi/tech/1075630259/

関連リンクは>>2-10あたり


855 名前:デフォルトの名無しさん mailto:sage [04/10/18 15:42:44]
>そのためにCで書く部分が多くなるといったところではないだろうか。
話がつながってない気が


856 名前:デフォルトの名無しさん mailto:sage [04/10/18 17:13:28]
>>855
「VMで実行するインストラクション数を減らすために処理系やライブラリー関数をSchemeでなくCで実装する」を意図しておりました。
説明がへたですまぬ。



857 名前:850 mailto:sage [04/10/18 18:27:29]
>>851
うぷしてみたよ。
ttp://syobon.zive.net:85/src/syobon10968.zip.html
サンプル読めば簡単な窓ぐらいは作れるかもしれない。

858 名前:850 mailto:sage [04/10/18 18:35:35]
失敗した。
syobon10969.zipね。

859 名前:デフォルトの名無しさん mailto:sage [04/10/18 19:26:48]
schemeのプリミティブを使ってマクロを組み立てれば強力な記述力がある
構文を手にできるというのは別に誰も反対していないと思う。
しかしいくつか問題があって、一つはそのような構文を作るのに多用する継続の
利用コストが小さくないこと。
もう一つは共通語彙が貧弱なこと。SRFIで整えられてきてるけど、
各自で構文を作るのが実現できることと、それが実用上利益になることとは別問題。
それにSchemeコアが万能というわけじゃない。SRFIの多くは
結局使い勝手のために処理系の拡張を必要とするものが多い。

だから理念としてはScheme好きだけど実際に使うのはCommon Lispだったりする。



860 名前:デフォルトの名無しさん mailto:sage [04/10/18 20:42:09]
本人やる気ないなんて言わずに発展させていってくれよ。
面白そうじゃないかコレ。

861 名前:デフォルトの名無しさん mailto:sage [04/10/18 21:05:52]
本人にやる気がないのなら他の人が発展させていけばいい。

862 名前:デフォルトの名無しさん mailto:sage [04/10/18 21:51:10]
>>850
ソースくれよ。

863 名前:デフォルトの名無しさん mailto:sage [04/10/18 22:00:14]
やーだよ



864 名前:デフォルトの名無しさん mailto:sage [04/10/18 22:05:07]
が〜ん。
Gaucheが実行環境の永続化(?)をサポートするのをまとう。
構想はあると聞いてるので...

865 名前:デフォルトの名無しさん mailto:sage [04/10/18 23:47:37]
おい、このスレからチャレンジングな Scheme 実装が生まれようとしてるのか?!
面白くなってきたと思わないか?おまいら!

866 名前:832 mailto:sage [04/10/18 23:57:05]
>>854
なるほど確かにマクロでもそのファイルだけで閉じてれば良いかも
でもテストコードに関しては、例え繰り返しとかあっても抽象化する必要は無い、
即値も平気で書いて ok!とも思うけど
それにしても Lisp ほどテストがやりやすい環境も無い!
何たって関数単位で書いたらすぐ試せるし

867 名前:デフォルトの名無しさん mailto:sage [04/10/19 07:33:57]
>>857
実行速度が結構出るね。
cygwin上のgoshよりほとんどのケースで速かったよ。
compiled-closureってことはeval前にコンパイルだよね。
永続化も説得力のある代物でした。
正式に公開したらかなりいけてますよ。

868 名前:デフォルトの名無しさん mailto:sage [04/10/20 15:55:46]
Lisp Machineで作業しているところのビデオ。既出だったらゴメソ。
lemonodor.com/archives/000103.html
lemonodor.com/archives/000441.html

これを見て、「Lisp Machineでは、コンパイラのエラーメッセージでさえオブジェクト」
という意味がすこしわかったよ。

869 名前:デフォルトの名無しさん [04/10/21 12:54:30]
>>850 再うpきぼんぬ

870 名前:デフォルトの名無しさん mailto:sage [04/10/21 22:27:06]
低レベルな質問で済みません。
CLISP で fork(2) みたいに clisp のプロセスイメージをコピーするのってどうやれば良いので
しょうか? fork(2) して子プロセスで S 式を実行し、結果を親プロセスとやり取りするような
プログラムを書きたいのです。ext:run-program で CLISP 自体を実行してやるのが普通なので
しょうか?

CMUCL ではこんな風に出来る(出来た?)らしいです。
cl-cookbook.sourceforge.net/os.html#fork-cmucl

871 名前:デフォルトの名無しさん mailto:sage [04/10/22 07:48:15]
>>857
再うp!再うp!再うp!


872 名前:デフォルトの名無しさん mailto:sage [04/10/25 00:22:54]
lispでbottom upプログラミングしてると確かに
綺麗になるんですけど、他人には読めないコードに
なったりしません?
他人に読めないのは綺麗じゃねーって言われるかも
しれませんがやはりそんな感じがします。

抽象的なロジックでも、ほとんど組み込みのリスト操作や
map操作で実現できてしまうのが原因だと思うのですが、
(他の言語だといちいち名前をつけて抽出することになる)
皆さんはそういうこと感じませんか?

873 名前:デフォルトの名無しさん mailto:sage [04/10/25 00:51:44]
>>872
bottom upの意味が間違ってないか?
bottom upはロジックや定型処理を抽出してツールを
作ってそのツールを用いて本体を組むんだが。
そのツール(関数やマクロ)には当然名前がついている。
組込みのリスト操作やmapが生ででてくるのはbottom upとはまた別。



874 名前:デフォルトの名無しさん mailto:sage [04/10/25 01:14:56]
LISP 〔原書第3版〕 1巻 を読んでみたいんですが
手に入れる方法ってありますか?
店頭在庫ってまだあるんでしょうか?

875 名前:デフォルトの名無しさん mailto:sage [04/10/25 02:29:17]
大学の図書館には転がってるだろ。

876 名前:デフォルトの名無しさん mailto:sage [04/10/25 09:49:57]
>>874 漏れも読みたい!!
>>875 学生じゃないもん!!

877 名前:デフォルトの名無しさん mailto:sage [04/10/25 10:12:16]
学生でなかったら別に読まなくてもいいんじゃないの?

池袋のジュンク堂で2巻は見た。
実は俺も読みたいので、引きこもりをやめて学生になる春まで待つつもり。

878 名前:デフォルトの名無しさん mailto:sage [04/10/25 10:15:19]
工業系の図書館に普通においてあるぞ

879 名前:デフォルトの名無しさん mailto:sage [04/10/25 21:31:27]
>>876
それって,カバーを外すと緑色で,ピラミッドみたいなのが彫ってある本ですか?
まだ Lisp が書けなかったとき,古い本なのにオブジェクトシステムが
載ってて凄い本だと思いました.
郊外の学部の図書館 (うちの大学なんだけど) なら入口でカードが必要なかったりします.

880 名前:デフォルトの名無しさん [04/10/27 09:42:30]
Allegro CL 7.0出荷age

相変わらずパンピーには買えない値段なのかな...


881 名前:デフォルトの名無しさん mailto:sage [04/10/27 10:14:24]
C#みたいにGUIやWEBを組めますか?


882 名前:デフォルトの名無しさん mailto:sage [04/10/27 14:21:06]
GUIビルダもサーブレットコンテナもありますがなにか?

883 名前:デフォルトの名無しさん mailto:sage [04/10/27 16:56:40]
The Revised R6RS Status Report
ttp://www.schemers.org/Documents/Standards/Charter/2004-10-13.pdf



884 名前:デフォルトの名無しさん mailto:sage [04/10/27 17:02:08]
正直、Schemeは今のままでいいと思う。

885 名前:デフォルトの名無しさん mailto:sage [04/10/27 17:12:57]
まあ、srfi もあるしね。

886 名前:デフォルトの名無しさん mailto:sage [04/10/27 17:28:34]
モジュールの標準化は激しいバトルになるだろうな〜 できるんかいな?

887 名前:857 mailto:sage [04/10/27 21:00:29]
>>869
一部不具合を修正
ttp://syobon.zive.net:85/src/syobon11901.zip.html

888 名前:デフォルトの名無しさん mailto:sage [04/10/28 00:19:19]
moduleとobject systemは、srfiかs6rsかどっちかには入ってほしい...
でも、886の言うとおり激しいバトルになりそうな分野なので期待薄か

889 名前:デフォルトの名無しさん mailto:sage [04/10/28 00:30:48]
そのあたりは普通にやろうとしても一筋縄でいかない部分もあるしね
ましてやRxRSとなると…

890 名前:デフォルトの名無しさん mailto:sage [04/10/28 00:37:40]
PLTかbiglooのを丸々取り込んじまえばいいんだよ。
デザインに関しては、この二つが抜けてるから。

891 名前:デフォルトの名無しさん mailto:sage [04/10/28 00:55:58]
どっちのを取り込むの?
その設計で本当にいいの?
そもそも取り込む必要あるの?
等々…

892 名前:デフォルトの名無しさん mailto:sage [04/10/28 11:49:07]
www.schemers.org/Documents/Standards/Charter/2004-10-13.pdf

> module system
> A module system will definitely be part of R6RS. We have dis-
> cussed this topic extensively and are now converging on a spe-
> cific proposal

> object-oriented programming
> Issue left for R7RS

893 名前:デフォルトの名無しさん mailto:sage [04/10/28 12:56:09]
LISP 1 図書館で複写してもらおうと思ったけど
1枚25円かよ・・・
たけーorz



894 名前:デフォルトの名無しさん mailto:sage [04/10/28 21:58:56]
(define x 'foo)

(display '(x))
-->(x)#<undef>
(display (list x))
-->(foo)#<undef>

クォートって手続きlistの単なるシンタックスシュガーですよね
にも関わらず前者で変数名がプリントされちゃうのは仕様ですか?
writeやcons(とドット対)も試したんですけど、同じ結果です。(gaucheにて)

895 名前:デフォルトの名無しさん mailto:sage [04/10/28 22:05:35]
> クォートって手続きlistの単なるシンタックスシュガーですよね
この時点で間違い。

896 名前:デフォルトの名無しさん mailto:sage [04/10/28 22:05:47]
はあ?


897 名前:デフォルトの名無しさん mailto:sage [04/10/28 22:44:35]
>>894
(quote x) => X
(list x) => unbound variable `X'.

まともな入門書を読みたまえ...

898 名前:デフォルトの名無しさん mailto:sage [04/10/28 22:52:55]
ゴメンナサイ

899 名前:デフォルトの名無しさん mailto:sage [04/10/29 11:45:58]
(find (lambda(x)(equal? 'b x)) '('a 'b 'c))
#f
(find (lambda(x)(equal? "b" x)) '("a" "b" "c"))
"b"

なぜ前者は#fになるんでしょうか?

900 名前:デフォルトの名無しさん mailto:sage [04/10/29 11:57:44]
シンボルbとリスト(quote b)を比べてるから。


901 名前:デフォルトの名無しさん mailto:sage [04/10/29 12:14:35]
>>900
理解できました。ありがとう。

902 名前:デフォルトの名無しさん mailto:sage [04/10/31 08:12:34]
NOW Available Allegro CL 7.0
普通にライブラリ増えた感じだね
Allegro Prolog だけは謎だけど

903 名前:デフォルトの名無しさん mailto:sage [04/10/31 17:53:54]
vism



904 名前:デフォルトの名無しさん mailto:sage [04/10/31 19:15:31]
>>902
> Allegro Prolog だけは謎だけど
Franzって基本的に顧客ドリブンだから、「Prologホシイ」って
客がいたんじゃないの?


905 名前:デフォルトの名無しさん mailto:sage [04/10/31 20:18:57]
Franzて従業員何人ぐらい?
商売成り立ってる?

906 名前:デフォルトの名無しさん mailto:sage [04/11/01 09:03:48]
製造はカナーリ少人数でやってそうなイメージ

907 名前:デフォルトの名無しさん mailto:sage [04/11/01 11:12:22]
matz も書いていたけど言語ビジネスで
食っているのは MS くらいじゃないか。

908 名前:デフォルトの名無しさん mailto:sage [04/11/01 13:06:49]
MSのは言語ビジネスじゃなくて殿様ビジネス

909 名前:デフォルトの名無しさん mailto:sage [04/11/01 13:21:45]
言語とOS、セットにならないとまともな商売にならないってことだろうねえ
本当はそこにハードも一緒だったはずなんだけど、MSは特異な例ということで。

そこでLISPマシンですよ!!w

910 名前:デフォルトの名無しさん mailto:sage [04/11/01 17:57:47]
Sun とか Apple も MS 同様に OS + 言語 ( もしくは Office スイート ) で
殿様ビジネスできたか、というと違うのでやはり能力の違い。

911 名前:デフォルトの名無しさん mailto:sage [04/11/01 19:29:23]
Bolandはそこそこがんばったじゃないか。
某国コンパイラ無料公開した直後から怪しくなってきたが。
やっぱいくらなんでも無料はまずかったんじゃないか?
オープンソースや無料で競い合ってるうちにITバブル崩壊。
1000円でも金取るべきだった。


912 名前:デフォルトの名無しさん mailto:sage [04/11/01 22:47:31]
ボーランドも開発環境まで全部揃えて真っ向勝負かけたのが失敗だったんだよ。
コンパイル早くて、コンパクトで高速なコード吐くコンパイラ勝負してりゃいいせんいってたと思うんだが。

913 名前:デフォルトの名無しさん mailto:sage [04/11/01 23:07:57]
ライブラリももうちょっと充実してればなぁ。さすがにOSメーカーには敵わんか。



914 名前:デフォルトの名無しさん mailto:sage [04/11/02 07:26:37]
教授が英語で宿題出しやがったんだけど。。。
これ、解ける人いたらどういう問題か教えてくれんか?
you must write to primary functions:


(defun evaluate (expression a b) (....))
This function takes any lisp expression and evaluates it
with the stipulation that the values passed in through a and b are mapped to x and y,
so that if the expression uses the values x and y, the values passed in through a and b will be used in their place.

(defun mutate (expression) (....))
This function will take a mathematical expression,
change it according to random rules, and return the resulting
new "mutant" expression. Valid input for the function is
the list (+ x y) or any expression output by a properly implemented mutate function.


Modifying Mathematical Expressions in Lisp
tips:

(random 1.0) ;; generates a random float between 0 and 1
(random 3) ;; generates a random int less than 3 (0, 1, or 2)





915 名前:914(続き) mailto:sage [04/11/02 07:27:48]
rules:

operand rule (rule 1):
20% the operand will become x
20% the operand will become y
60% the operand will be a random float in [0,1]

operator rule (rule 2):
30% of the time the operator will be: +
30% of the time the operator will be: -
30% of the time the operator will be: *
10% of the time the operator will be: expt

mutation:
an expression will mutate exactly in one place
20% the operator
40% the first operand
40% the second operand

if an operand is itself an expression, then the mutation
will recurse down that branch to select the location of mutation


if an operand is selected it will mutate according to the following rules
60% the operand will mutate according to rule 1
40% the operand will expand
the new operator will be selected according to rule 2
the first operand will be identical to the original operand
the second operand will be selected according to rule 1



916 名前:914(続き) mailto:sage [04/11/02 07:28:16]
if an operator is selected the possibilities are:
80% the operator will mutate according to rule 2
20% the operator will colapse into an operand according to rule 1

if the expression is a single value...

917 名前:デフォルトの名無しさん mailto:sage [04/11/02 09:31:59]
ランダムに変えて評価しろって問題じゃない?

918 名前:デフォルトの名無しさん mailto:sage [04/11/02 11:21:33]
宿題の丸投げですか

919 名前:デフォルトの名無しさん mailto:sage [04/11/02 13:17:12]
問題文を読む限りそれほど難しいことを言ってるわけじゃないので
落ち着いてよく読め。


920 名前:デフォルトの名無しさん mailto:sage [04/11/02 13:27:49]
>>919
問題文を読むのに難儀している模様。

921 名前:デフォルトの名無しさん mailto:sage [04/11/02 15:16:12]
この英語じゃ無理も無いと思われ...
mutateは変数にxとyを使った式を適当に乱数でいじくって出力。
それをevaluateに食わせて計算をするってことかな。
遺伝的アルゴリズムでもやっとるんか?

922 名前:デフォルトの名無しさん mailto:sage [04/11/02 18:15:17]
>     20% the operator will colapse into an operand according to rule 1
これの意味がわからん。
     20% the expression will colapse into an operand according to rule 1
ということか?

923 名前:デフォルトの名無しさん mailto:sage [04/11/02 21:50:06]
collapse



924 名前:デフォルトの名無しさん mailto:sage [04/11/02 22:13:15]
で、この問題のどこが分からんのだ?

925 名前:デフォルトの名無しさん mailto:sage [04/11/03 00:04:24]
とりあえず GA ってのは置いといて
>>914 みたいな、
「確率的に分岐する処理を格好良く書けるマクロを書け」
って問題にして皆で考えないか?

926 名前:デフォルトの名無しさん mailto:sage [04/11/03 07:30:40]
>>925
素直に考えるとこんな感じになるのかなあ。

(pcase
(0.3 expr ...) ;; 30%の確率でこの節を実行
(0.6 expr ...) ;; 60%の確率でこの節を実行
(else expr ...)) ;; 残り(10%)の確率でこの節を実行

これならそんなに難しくないような。もっと格好いい書き方を
考えてる?



927 名前:914 mailto:sage [04/11/03 12:23:20]
みなさんありがとうです
教授も教授なんですが結構まじめに授業やってくれんくて

それで宿題ポンと出すんで中々難しいんだわつД`)
>>921 さんの説明だとなんとなく意味がつかめたっす

>>925 >>926
みんなでこの問題考えられたら嬉しいんすけど、
俺も案出してくんでよろしくおねがいします。


928 名前:デフォルトの名無しさん mailto:sage [04/11/03 13:03:10]
>>927
おまえが授業聞いてないだけだろ
失せろ

929 名前:デフォルトの名無しさん mailto:sage [04/11/03 13:57:23]
>>926
シンプルイズベスト、だね
他に格好良いのとかあるのか?
>>928
まあまあ、もはや問題自体は別にどうでも良いだろw

930 名前:デフォルトの名無しさん [04/11/03 16:41:01]
「計算機プログラムの構造と解釈」(和訳版)を読んでいるのですが、
1.2.4 べき乗の説明で、fast-exptの増加の程度は(p25の注釈37によると)
「2を底とするnの対数に、nの2進表現での1の数を足して1を引いたもの」
と説明があります。
この説明中の 『nの2進表現での1の数』 とはどのような数なのでしょうか?


931 名前:デフォルトの名無しさん mailto:sage [04/11/03 16:46:36]
1 less than the log base 2 of n plus the number of ones in the binary representation of n.

932 名前:デフォルトの名無しさん mailto:sage [04/11/03 16:51:49]
>>914
とりあえずevaluate作ってみたよん。
手元にLispがないからSchemeになってまふ。
オペランドは2つに固定ね(美しくないけど解りやすいから)

(define *operator* `((+ . ,+) (- . ,-) (* . ,*) (expt . ,expt)))

(define evaluate-1
(lambda (op opr1 opr2 a b)
(apply (cdr (assoc op *operator*))
(list
(cond
((eq? opr1 'x) a)
((eq? opr1 'y) b)
(else opr1))
(cond
((eq? opr2 'x) a)
((eq? opr2 'y) b)
(else opr2))))))


(define evaluate
(lambda (expression a b)
(let ((op (car expression))
(opr1 (cadr expression))
(opr2 (caddr expression)))
(evaluate-1 op (if (pair? opr1) (evaluate opr1 a b) opr1) (if (pair? opr2) (evaluate opr2 a b) opr2) a b))))

; (evaluate '(+ 4.1 (- y (* x 2.1))) 2.3 3.3) -> 2.5699999999999994


933 名前:デフォルトの名無しさん mailto:sage [04/11/03 16:58:56]
>>930
ビットが立っている数だろ?
100101(2) ⇒ 3




934 名前:デフォルトの名無しさん mailto:sage [04/11/03 17:46:27]
残りのmutateだよん

(define mutate-operator
(lambda ()
(let ((r (random 100)))
(cond ((< r 30) '+) ((< r 60) '-) ((< r 90) '*) (else 'expt)))))

(define mutate-operand
(lambda (operand)
(let ((r1 (random 100))
(r2 (random 100)))
(cond
((or (< r1 60) (null? operand))
(cond ((< r2 20) 'x) ((< r2 40) 'y) (else (random 1.0))))
(else (list (mutate-operator) operand (mutate-operand '())))))))


935 名前:934 mailto:sage [04/11/03 17:47:01]
(define mutate
(lambda (expression)
(let ((op (car expression))
(opr1 (cadr expression))
(opr2 (caddr expression))
(r (random 100)))
(cond
((< r 20)
(list (mutate-operator)
(if (pair? opr1) (mutate opr1) opr1)
(if (pair? opr2) (mutate opr2) opr2)))
((< r 60)
(list op
(if (pair? opr1) (mutate opr1) (mutate-operand opr1))
(if (pair? opr2) (mutate opr2) opr2)))
(else
(list op
(if (pair? opr1) (mutate opr1) opr1)
(if (pair? opr2) (mutate opr2) (mutate-operand opr2))))))))
; (mutate (mutate (mutate (mutate '(* (+ x y) (- x y)) )))) --> (+ (* 0.8420 0.1857) (- (+ x x) 0.9704))
>20% the operator will colapse into an operand according to rule 1
これの意味は不明なのでいれてないよん。

936 名前:デフォルトの名無しさん mailto:sage [04/11/03 18:40:25]
(list (mutate-operator)
(if (pair? opr1) (mutate opr1) opr1)
(if (pair? opr2) (mutate opr2) opr2)))
とかって
(list (mutate-operator) opr1 opr2))
にすると思ってた。

937 名前:デフォルトの名無しさん mailto:sage [04/11/03 21:10:25]
>>930,931
原文はなんてことないのに日本語訳だとわかりにくいですねえ。



938 名前:デフォルトの名無しさん mailto:sage [04/11/04 05:18:57]
みんなえらいな
助け合いってのが心に染みたよ


939 名前:デフォルトの名無しさん mailto:sage [04/11/04 12:24:08]
>>935
>20% the operator will colapse into an operand according to rule 1

そのoperatorを含む式が一つのoperand(x,y,定数のどれか)になる
ってのが対称的で美しい気がする。

operandがexpressionになるって規則もあるしね。


940 名前:flatline@Vim%Chalice ◆r6EONKKhcc mailto:sage [04/11/05 04:17:47]
おはようございます.
On Lispの邦訳がとりあえず第25章まで終りました.ご賞味下さい.
っ [ ttp://user.ecc.u-tokyo.ac.jp/~g340299/onlisp_j.pdf ]
あとパッケージについてのappendixが残っているのと,全体的な訳の見直し,注の整備,
見栄えの向上,HTMLやtexinfoへの変換(←やるかどうか怪しい)ですかね...

なお↑のサイトは私が来年4月に工学部に進学してまもなくすると
(移行措置も何もなく)一夜にして移転しますんで,ミラー置いておきますね.
っ [ ttp://www.komaba.utmc.or.jp/~flatline/onlisp_j.pdf ]
まだ工学部生としての学生証番号が決まってないので,
移転先がどういうアドレスになるかはまだ不明です.

941 名前:デフォルトの名無しさん mailto:sage [04/11/05 04:22:09]
>>940
すげーな。一人でやってるのか?これってどのぐらい時間かけてるの?
一日何分ぐらいやってる?


942 名前:デフォルトの名無しさん mailto:sage [04/11/05 04:34:13]
flatlineさんおつかれ。よくやったね。
後で印刷して、ありがたく読ませてもらうよ。

943 名前:デフォルトの名無しさん mailto:sage [04/11/05 05:27:24]
お疲れさまです。早速読んでみます。



944 名前:デフォルトの名無しさん mailto:'sage' [04/11/05 06:56:20]
>>940
おつかれさま!
texinfoホスイ


945 名前:flatline@Vim%Chalice ◆r6EONKKhcc mailto:sage [04/11/05 07:16:48]
>>941 メインは私ですが様々な方からいただいた指摘を取り込んであります.
かかった期間は2年弱. 数日にいっぺん,1,2時間ずつやってたかな?
;; 自分で本を書くのに比べれば微々たる労力,とも言えますが...

>>942 Appendixがないのと,誤訳が残ってそうなのは覚悟しといてください.
紙にしちゃうと読みやすいけど更新に追随し辛いですよね. 今後はChangeLogでもつけようかな?
あと,印刷するには余白が狭過ぎかもしれません... いずれ直します.

>>943 どうもです.何か気付いたら教えてください.

946 名前:flatline@Vim%Chalice ◆r6EONKKhcc mailto:sage [04/11/05 07:21:03]
>>944 モウチト待ッテ (´Д`;)

947 名前:デフォルトの名無しさん mailto:sage [04/11/05 07:22:26]
>>flatline
乙!喜んで読ませてもらう!

948 名前:デフォルトの名無しさん mailto:sage [04/11/05 13:39:53]
恭一また臭いこといってんな

949 名前:デフォルトの名無しさん mailto:sage [04/11/05 13:40:55]
ごめん誤爆した

950 名前:デフォルトの名無しさん mailto:sage [04/11/06 07:29:32]
そういえばgaucheのMinGWへのポートは結局どうなったの?


951 名前:デフォルトの名無しさん mailto:sage [04/11/07 04:12:29]
みなさんedってつかってますか?
clispでedをディスアセンブルしてメモ帳以外のエディタを使おうと思ったのですが、うまくいかないですよ。

952 名前:ミミ mailto:sage [04/11/07 04:20:14]
>>951
ディスアセンブル?
EDITOR 環境変数を変更するか、*EDITOR* グローバル変数を変更すればいいと思うんだけど。

953 名前:デフォルトの名無しさん mailto:sage [04/11/07 10:14:15]
Scheme入門(数学ネタ
ttp://www.altum.jp/math/exp2a/
なかなか面白いので晒しage



954 名前:デフォルトの名無しさん mailto:sage [04/11/07 20:16:45]
たぶん大学のサーバーに置いてあったころに見たな。

955 名前:デフォルトの名無しさん mailto:sage [04/11/07 22:58:11]
Gaucheでpsd使われてる方いますか?

956 名前:デフォルトの名無しさん mailto:sage [04/11/08 23:31:11]
LisperはGUI組む必要があるときどうしてますか?
CLIMはACLだと別売りみたいだし、LispWorksのドキュメント見るとobsolete扱いで
CAPI使え、みたいなこと書いてあるんで何がデファクトなのかよ〜わからん。
ウェブアプリケーションにしちゃうもん?

957 名前:デフォルトの名無しさん mailto:sage [04/11/08 23:34:59]
GUIイラネ

958 名前:デフォルトの名無しさん mailto:sage [04/11/08 23:42:19]
ですね

959 名前:956 mailto:sage [04/11/08 23:55:59]
GUIイラネ、で済めばいいんだけどさ(実際漏れもEmacsからほとんど外に出ないし)、
仕事でLisp使ってブツを作り上げておっさん連中にデモ・プレゼンするとき困らない?
Emacsのバッファで作業してるの見せてもおっさんには説得力ないんだよね
(でも予算の使い道の決定権を握ってるのは奴らだ)。
折角何の前例もないところにLispを使うという無茶を通して邪魔されないで済んでるので
できれば余計な横槍を入れられないように防衛線を張っておきたいのでし。

個人で使って自己満足してるだけならこんなこと気にする必要もないんだけどね。

960 名前:デフォルトの名無しさん mailto:sage [04/11/09 00:36:08]
>>959
>>15なんていうのはあるけれど。

961 名前:デフォルトの名無しさん mailto:sage [04/11/09 01:00:53]
ウェブアプリにできるような物ならウェブアプリでいいんじゃない?

962 名前:デフォルトの名無しさん mailto:sage [04/11/09 01:26:18]
>>952 *editor*変えたらうまくいきました。今まで何やってたんだ俺…

GUIかどうかは微妙だが、xyzzyでヒルベルト曲線を書くデモを見たときはちょっとビビった。

963 名前:デフォルトの名無しさん mailto:sage [04/11/09 02:07:40]
>>956
WWWアプリが一番楽なアプローチだけど
それができなきゃ自分でGUIライブラリのbindingsを書くしか。




964 名前:956 mailto:sage [04/11/09 02:16:38]
やはりウェブアプリに落ち着いちゃいますか。もしくはFFIで外界と接続する、と。
そのわりには307にレスつけてる人が少ないのを見ると、Lisperは必要なモノは自分で
自作しちゃうのかなぁ、やっぱり。

965 名前:デフォルトの名無しさん mailto:sage [04/11/09 03:04:01]
>>956-964
つまりLispはVisualBasicやVisualC++のかわりにはなりえないっていう結論になるの?


966 名前:デフォルトの名無しさん mailto:sage [04/11/09 03:17:04]
   ∩___∩   ?     
   | ノ\     ヽ        |
  /  ●゛  ● | ?      |
  | ∪  ( _●_) ミ       j
 彡、   |∪|   |   
/     ∩ノ ⊃  ヽ  
(  \ / _ノ |  |
.\ “  /__|  |
  \ /___ /

967 名前:デフォルトの名無しさん mailto:sage [04/11/09 03:20:16]
>>964
自作しちゃうので世に出てこなくてコミュニティが発展しないってのは
Lisperたちの問題としてよくでてくるよね。

>>965
(よくいる)Lisperのそういう作り込みを基本的に必要としてないってことかなぁ。
でも、垣根を下げるためには、そういう作り込みって重要よね。



968 名前:デフォルトの名無しさん mailto:sage [04/11/09 07:37:35]
動きが必要なら比較的良く使うのは OpenGL バインディングかなぁ…
ショボくていいなら Tk インターフェースを良く使う.でも最近だと Web で
DHTML つかうのがお手軽かもしれん.
プレゼン資料ならデータを他のツールで可視化(GNU Plot とか GraphViz とか)
よくやるなぁ.


969 名前:デフォルトの名無しさん mailto:sage [04/11/09 09:36:00]
>>967
逆だよ。
ブラックボックスはダメ。

970 名前:デフォルトの名無しさん mailto:sage [04/11/09 14:57:42]
仕様が公開されてればブラックボックスだろうが別にかまわないが

971 名前:デフォルトの名無しさん mailto:sage [04/11/09 21:44:48]
出来が良けりゃブラックボックスで良い
糞コードしか書けない奴はブラックボックスじゃなくてもいいけどな

972 名前:デフォルトの名無しさん mailto:sage [04/11/10 00:27:55]
Dr.Schemeはいかがでしょう?

973 名前:デフォルトの名無しさん mailto:sage [04/11/10 22:22:02]
なんかハリボテ感が強い>Dr
もうちょっとスマートにまとまらないのかな
GUIも独自とかじゃなくてScheme/tkとかwxSchemeとか



974 名前:デフォルトの名無しさん mailto:sage [04/11/11 02:23:40]
widestudioなんかは既にたくさんのOSと言語に対応している状態なんだから、
比較的楽にlispにも対応できる柔軟性を持ってそうに思えるんだけど、どうなんですかねぇ?


975 名前:デフォルトの名無しさん mailto:sage [04/11/11 09:38:49]
シェルスクリプトで書かれたLISPインタプリタとかってありますか?

976 名前:デフォルトの名無しさん [04/11/11 11:19:58]
>>975
シェルは分かりませんが、awk ならあります。
awklisp っってヤツね。
>>7 を見てね。


977 名前:デフォルトの名無しさん mailto:sage [04/11/11 12:02:28]
>>976
あ、これなかなか面白いです。どうもです。

978 名前:デフォルトの名無しさん mailto:sage [04/11/11 12:35:13]
ECLってどうですか? 使ってる人いますか?

979 名前:デフォルトの名無しさん mailto:sage [04/11/12 02:17:34]
scheme処理系では一般的に日本語(というかSHIFT-JIS)の扱いってどうしているんでしょうか。
SRFIで定義しているようなやつはCとかで書くのか、
それとも他のASCIIを扱う関数から定義しているものなのか…。
実際にSJIS使ったサンプルとかもあれば…。SRFIでは良くわかりませんでした。

今勉強がてらに使ってるやつでは例えば(string-ref "あかさたな" 0)とかするとエラー終了したりしてます。
ここで"あ"って返して欲しいんですが。

980 名前:デフォルトの名無しさん mailto:sage [04/11/12 07:36:43]
comp.lang.schemeよりコピペ。Scheme処理系のunicodeサポート。

1) Gauche: unarguably best Unicode support, including native
read/write syntax for strings, chars, regexps & char-sets; support for
SRFI-13 & SRFI-14; charconv libraries and extensions to I/O procedures
to specify encoding for ports, including auto-detection of Japanese
encodings.

2) PLT >= v299: native Unicode support; regexps and SRFI-13 are
Unicode-aware, SRFI-14 is not; port encodings assumed UTF-8.

3) Gambit: native Unicode support, no regexp or SRFI support, encoding
for files and terminal is fixed at startup time and limited to Latin-1
or common Unicode encodings (UCS-2, UCS-4 or UTF-8).

4) SISC/Kawa/Jscheme: leverages Java Unicode support; SISC has Unicode
aware SRFI-13, Unicode unaware SRFI-14, the others have neither;
encoding is determined by default by locale, but SISC and Kawa provide
port encoding procedures; Java uses UTF-16 internally which may cause
complications with surrogate pairs.



981 名前:デフォルトの名無しさん mailto:sage [04/11/12 07:37:26]
7) Chicken: characters are allowed within the full 21-bit Unicode
range, however by default the non-ASCII characters have no read/write
syntax. I have a unit almost ready for release that leverages this
and assumes UTF-8 encoded strings/ports to provide full Unicode
support, including regexps, SRFI-13 and SRFI-14. Chicken has an iconv
interface, and I also have a unit with a more friendly interface such
as (with-input-from-encoded-file enc file thunk).

8) MIT-Scheme: Unicode chars strings are disjoint types; 'alphabet'
type as Unicode-char alternative to char-sets; Unicode string ports;
no port encoding utilities.

9) Bigloo: Unicode strings and characters are disjoint types; no port
encoding utilities.

10) Chez/Elk/Guile/Inlab-Scheme/Rscheme/SCM/Stalin/Stklos: nothing.


982 名前:デフォルトの名無しさん mailto:sage [04/11/12 10:28:15]
どなたかそろそろ、次スレを立てていただけないでしょうか?

983 名前:デフォルトの名無しさん mailto:sage [04/11/12 12:16:45]
次スレ
pc5.2ch.net/test/read.cgi/tech/1100229366/l50



984 名前:デフォルトの名無しさん mailto:sage [04/11/12 15:18:09]
>>7にあるawklispに含まれていたperlispですが、
これはPerl4での動作することを想定して書かれていました。
なのでリファレンスやレキシカルスコープ変数はまったく使われておらず、
コードも煩雑なものとなっています。

Perl5でLISPインタプリタを実装した例などはありますか?
自分で勉強して書けと言われそうですが・・・

985 名前:デフォルトの名無しさん [04/11/12 17:46:04]
>>984
こっちのほうが分かりやすいかも。awk と sh で書いてあります。参考までに。
www-2.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/impl/awk/


986 名前:ミミ mailto:sage [04/11/12 20:01:50]
>>973
DrScheme の GUI (MrEd) は wxWidgets の初期のバージョンから
派生したものらしいよ。

987 名前:本田 [04/11/13 00:12:16]
>>956
>Lisp-Tk
www.cliki.net/Lisp-Tk

>ウェブアプリケーションにしちゃうもん?

>CL-HTTP
www.ai.mit.edu/projects/iiip/doc/cl-http/home-page.html
流行としてはGUIよりアプリケーションサーバーだと思う。


988 名前:デフォルトの名無しさん mailto:sage [04/11/13 00:19:04]
>>980-981
どうもありがとうございます。
やはり多国語を扱えるような処理系はネイティブでサポートしているのが多いんですね。
処理系のソースは持っているので自分でなんとかしてみます。

989 名前:デフォルトの名無しさん mailto:sage [04/11/13 00:20:16]
LISPでWEBサービスってできるの?

990 名前:本田 [04/11/13 00:38:31]
>>989
>db-sockets
www.cliki.net/db-sockets
こんなの使えば、HTTPも処理できるプログラム書けるはず。

991 名前:デフォルトの名無しさん mailto:sage [04/11/13 00:41:49]
>>990
そうなんだ。ありがとう^^

992 名前:デフォルトの名無しさん mailto:sage [04/11/13 00:59:44]
>>989
kahuaとか

993 名前:デフォルトの名無しさん mailto:sage [04/11/13 12:22:54]
WebサービスってGoogleみたいにSOAPとか使うやつのことだろ



994 名前:デフォルトの名無しさん mailto:sage [04/11/13 12:37:41]
>>993
そういう規格もありますねー にゃんにゃん






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<286KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef