Kimura Fuyuki
fuyuk****@hadal*****
2003年 2月 20日 (木) 13:34:38 JST
At Wed, 19 Feb 2003 00:42:43 -1000 (HST), Shiro Kawai <shiro****@lava*****> wrote: > > > (define (main args) > > (let-args (cdr args) ((host "h=s" "www.yahoo.com") > > (port "p=n" 80)) > > (do-something host port))) > > これ、いいですね。 > parseoptの仕様は副作用を前提にしていてあまり気に入っていなかった > のですが、完全に関数的にするとどうしてもargs-foldのように複雑に > なってしまうので悩んでいました。 私は関数型言語屋ではないので副作用を嫌うというのはあまりないのですが、 parseoptは確かに定型的な処理を書くのにやや繁雑なきらいはあると思います。 args-foldは…そこまでして関数的にしたくないというか。;) でもいろんな引数パーサがあるのはいいと思いますよ。ちょっとしたスクリプ トなら Getopt::Stdが一番便利だったりもしますから(状況に応じて使い分け る)。Rubyのgetoptsもobsoleteとされつつけっこう使われてますし。 -- 木村 冬樹