From: Akinori MUSHA Date: 2000-10-07T20:06:26+09:00 Subject: [ruby-list:25380] Re: Python のブロック At Sat, 7 Oct 2000 18:27:08 +0900, ページコム佐藤 wrote: > インデントでブロックの終わりがわかる仕組みは、 > 新しいなぁと思いました。(少なくとも私には) > > みなさんはこれについてどのようにお考えですか? > 実際ちゃんと機能するのでしょうが、 > 弊害みたいなのは出てきたりしないのでしょうか? とりあえず one-liner が(実質)書けないですね。結局 Perl のお世話に なるのは避けられなかったり。  まあ、私は Ruby が好きでも文字列置換くらいなら Perl の方が タイプ数少ないので ruby -i~ -pe 'gsub /perl/,"ruby"' foo よりは perl -i~ -pe 's/perl/ruby/g' foo としますが、 sed/awk/perl が嫌いな人や苦手な人でもとりあえず ruby 一本でもいける、という安心感は大きいと思います。 (sed/awk/perl 等の素養はあった方がいいですが)  そのほか、ちょっとここの数行をループさせてみよう、などと思った ときに、インデントをちゃんとしないと文法エラーになっていまうので、 再インデントを自動的にやってくれるエディタを使っていないと (使っていても)面倒ですね。 aaa bbb ccc ddd eee とあるときに、ちょっと bbb から ddd までを何らかの制御構造の中に 入れて実行させてみたいと思ったら aaa if xxx: bbb ccc ddd eee としないといけない。テストが終わったらまたインデントを戻す必要が ある。  これが begin...end や {...} を使う言語なら、 aaa if xxx bbb ccc ddd end eee と二行入れるだけでテストできて、終わったらすぐ戻せて楽。  ものぐさなもんで。 -- / /__ __ / ) ) ) ) / Akinori -Aki- MUSHA aka / (_ / ( (__( @ idaemons.org / FreeBSD.org "We're only at home when we're on the run, on the wing, on the fly"