- 1 名前:デフォルトの名無しさん mailto:sage [2009/04/24(金) 19:12:39 ]
- ※ ここはCommon Lisp、SchemeをはじめとするLisp族全般のスレです ※
■過去スレ Part25: ttp://pc12.2ch.net/test/read.cgi/tech/1231856193/ Part24: ttp://pc11.2ch.net/test/read.cgi/tech/1224939205/ Part23: ttp://pc11.2ch.net/test/read.cgi/tech/1215875388/ Part22: ttp://pc11.2ch.net/test/read.cgi/tech/1211381920/ Part21: ttp://pc11.2ch.net/test/read.cgi/tech/1207300697/ Part20: ttp://pc11.2ch.net/test/read.cgi/tech/1205021786/ Part19: ttp://pc11.2ch.net/test/read.cgi/tech/1200237296/ Part18: ttp://pc11.2ch.net/test/read.cgi/tech/1186922295/ Part17: ttp://pc11.2ch.net/test/read.cgi/tech/1177065699/ Part16: ttp://pc11.2ch.net/test/read.cgi/tech/1172404795/ Part15: ttp://pc11.2ch.net/test/read.cgi/tech/1151025773/ Part14: ttp://pc11.2ch.net/test/read.cgi/tech/1132275726/ Part13: ttp://pc11.2ch.net/test/read.cgi/tech/1115901841/ Part12: ttp://pc11.2ch.net/test/read.cgi/tech/1100229366/ Part11: ttp://pc11.2ch.net/test/read.cgi/tech/1091456033/ Part10: ttp://pc11.2ch.net/test/read.cgi/tech/1075630259/ Part09: ttp://pc11.2ch.net/test/read.cgi/tech/1069594582/ Part08: ttp://pc5.2ch.net/tech/kako/1058/10582/1058263391.html Part07: ttp://pc5.2ch.net/tech/kako/1042/10421/1042167213.html Part06: ttp://pc3.2ch.net/tech/kako/1031/10315/1031560687.html Part05: ttp://pc3.2ch.net/tech/kako/1023/10230/1023091882.html Part04: ttp://pc.2ch.net/tech/kako/1016/10162/1016211619.html Part03: ttp://pc.2ch.net/tech/kako/1008/10082/1008220265.html Part02: ttp://pc.2ch.net/tech/kako/1002/10025/1002584344.html Part01: ttp://piza2.2ch.net/tech/kako/987/987169286.html ■テンプレート置き場 ttp://wiki.fdiary.net/lisp/ (id:guest pass:cl)
- 970 名前:929 mailto:sage [2009/07/26(日) 12:10:38 ]
- やりたいことは,エロファイルの整理
知りたいことは,シェルスクリプトなどで簡単にできる問題を lisp脳はどう考えるかです.
- 971 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 12:17:12 ]
- シェルスクリプト使うよ
- 972 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 12:17:30 ]
- (define (a x)
(let ((end (last x))) (cond ((isalpha end) 'place_a) ((isnum end) 'place_1) (else (error "tukareta"))))) (for-each a ero) 'placeの所はフォルダにおく処理
- 973 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 12:27:17 ]
- >>970
rename.pl(1)使います。
- 974 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 12:32:52 ]
- >>967
俺その>>945。 リーダーマクロについて、何か勘違いをしてる気がする。 根本的に正規表現とは違う層の概念だよ。 独自の記法をS式にマッピングするだけ。 単に、正規表現以外の文字列のパターンマッチが知りたいのなら、 パーザコンビネータとかがそれ。上に出てるPEGとか。
- 975 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 12:56:46 ]
- >>958
あなたには頭の体操は「美しく」解決しなきゃいけないのかそれともそうではないのか。 「美しく」とはどういうことかなどを定義されることをお勧めします。そしてその後レス してください。
- 976 名前:929 mailto:sage [2009/07/26(日) 14:30:38 ]
- >>974
> リーダーマクロについて、何か勘違いをしてる気がする。 いえ,理解出来ていないというか,誤解しているのでしょう. だから,相手に対して勘違いをあたえる. > 根本的に正規表現とは違う層の概念だよ。 > 独自の記法をS式にマッピングするだけ。 ディレクトリ(ファイル)名のリストを作る.そのリストを読み込む際,リードマクロを使って処理をディスパッチする.のかなぁって考えました. > 単に、正規表現以外の文字列のパターンマッチが知りたいのなら、 > パーザコンビネータとかがそれ。上に出てるPEGとか。 文字列処理で正規表現使わない.リードマクロを使う.と言う発想じゃなくPEGを使うって発想するのですね.
- 977 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 14:44:38 ]
- >> リーダーマクロについて、何か勘違いをしてる気がする。
>いえ,理解出来ていないというか,誤解しているのでしょう. 勘違いして理解してるから誤解だろ。
- 978 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 15:06:02 ]
- >>976
リードマクロは表現をS式にマッピングする機能だって上で出てるだろうが。 書いてある表現のパースは必要なんだよ。 違う層の話が入り混じっててわけわかんなくなってるぞ。
- 979 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 15:20:13 ]
- まあ確かにcfgやreは無駄に難しいから
素朴な再帰下降パーサーを高階関数とかで改良していこうという方針は正しい気がする そして、Perlのような言語がそういう方針転換をするよりも 過去の成果物にとらわれないLispのほうが有利だと言えないこともない
- 980 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 19:08:54 ]
- 50以上レスが進んでるから何かと思えばずっと雑談か
暇だなおまいら
- 981 名前:デフォルトの名無しさん [2009/07/26(日) 19:53:39 ]
- 処理系何使ってるあたしはGauche。
- 982 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 20:40:58 ]
- /\___/ヽ
/ノヽ ヽ、 / ⌒''ヽ,,,)ii(,,,r'''''' :::ヘ | ン(○),ン <、(○)<::| |`ヽ、 | `⌒,,ノ(、_, )ヽ⌒´ ::l |::::ヽl . ヽ ヽ il´トェェェイ`li r ;/ .|:::::i | /ヽ !l |,r-r-| l! /ヽ |:::::l | / |^|ヽ、 `ニニ´一/|^|`,r-|:「 ̄ / | .| | .| ,U(ニ 、)ヽ / | .| | .|人(_(ニ、ノノ
- 983 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 20:51:39 ]
- テキスト処理を主体としたいわゆる「スクリプト言語」的な使い方をするなら Gauche はやはり強いよなぁ。
日本語の扱いをちゃんとしているところがよい。 Ypsilon なんかはやたら高速なのがよい。 まぁ、用途によるんじゃね?
- 984 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 20:58:51 ]
- Gaucheとclisp、newlispを入れてる
newlispは簡単にwindow出せたりして面白いよ
- 985 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 21:30:14 ]
- ベタで申し訳ないが、schemeの健全なマクロって必要なのか?
正直 ` , ,@ (gensym) だけのほうがスマートだし、変数捕捉されるのも考慮してこそマクロだと思うんだけどなぁ。 schemeの仕様作ってる人は何を心配してるんだろう。ユーザのこと心配してくれてるのかな。 (PGが人が使う用の為に作っちゃダメっていってたよ。)
- 986 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 21:30:36 ]
- ノシ clisp
- 987 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 21:35:59 ]
- 不健全なマクロはきたない。健全なマクロのほうが美しい。
- 988 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 21:54:42 ]
- ` gensym を必要としなくなれば
シンボルやコンスが無い言語でもマクロが書けるようになるかもしれない
- 989 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 22:11:13 ]
- >>985
モジュール化が絡んでくるとそう単純な話ではない。 scheme と CL ではスコープのルールも若干違う。 健全性に固執しすぎなのは確かかもしれないけど、 Scheme 的な一貫性のためには必要だと思うよ。
- 990 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 22:21:20 ]
- >>985
scheme では同じ名前のシンボルは常に同じシンボルなので、 gensym では名前の衝突を本質的には回避できない。
- 991 名前:985 mailto:sage [2009/07/26(日) 22:28:07 ]
- なるほど。今まで馬鹿みたいに「うは、ペアeval apply ぐるぐる最強!」とか思ってたけど、
ことはそう単純じゃないのね。もうちょっと精進するよ。馬鹿みたいなこといってごめんね。
- 992 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 23:09:19 ]
- 純粋さよりも簡潔さを重んじるSchemeとしてはそれこそ
シンプルな古典的マクロの上に保健的マクロを構築するアプローチのほうが合っていると思う R5RSのなかでもsyntax-rulesは浮いているように感じる
- 993 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 23:46:52 ]
- >シンプルな古典的マクロの上に保健的マクロを構築する
挫折した奴がここにおわす
- 994 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 23:52:29 ]
- >シンプルな古典的マクロの上に保健的マクロを構築する
これをまじめにやろうとすると、言語の構文をほぼ全て上書きして 意味論を追加するってこと LISPだから可能なんだけど おれは挫折した
- 995 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 01:06:27 ]
- シンプルさを保つべきだって考えと現実問題を解決するときに少々の汚れ仕事を請け負っても良いの2派閥の間の溝だからなぁSchemeとCommonLISP
- 996 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 05:59:54 ]
- >シンプルな古典的マクロの上に保健的マクロを構築する
Alex Shinn さんの chibi-scheme がそういうような方向性かな Syntactic Closure の上に Explicit Renaming と Syntax Rules を実装してる Syntax Rules はまだ動いてないところもあった気がするが ttp://synthcode.com/wiki/chibi-scheme
- 997 名前:デフォルトの名無しさん [2009/07/27(月) 08:13:36 ]
- CommonLisp(笑)、Scheme(笑)
これからはF#の時代だからwww
- 998 名前:デフォルトの名無しさん [2009/07/27(月) 08:23:37 ]
- 名前に#が付く言語ってwindows以外のOSで動くの?
- 999 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 08:32:57 ]
- Monoでそれなりには動くらしいよ
使ったことないからよく知らんけど
- 1000 名前:デフォルトの名無しさん mailto:sage [2009/07/27(月) 09:25:26 ]
- SML#があるじゃん
- 1001 名前:1001 [Over 1000 Thread]
- このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
|

|