langsmith:252
From: YAMASHINA Hio <hio hio.jp>
Date: Sat, 09 Jul 2005 19:00:22 +0900
Subject: [langsmith:252] Re: 自作言語citronv0.0.06(Was:Re: 自作言語citronv0.0.05)
こんにちわ, 山科です. From: Yukihiro Matsumoto <matz ruby-lang.org> Subject: [langsmith:251] Re: 自作言語citronv0.0.06(Was:Re: 自作言語citronv0.0.05) Date: Fri, 08 Jul 2005 02:58:55 +0900 > > | ひとまず, メソッドの重なりは > | 0. + クラスのupgrade > | 1. + 基底クラス > | 2. + 基底クラスのupgrade > | 3. + 派生クラス > | 4. + 派生クラスのupgrade > | 5. + あるクラスから派生の一番最後の位置でupgradeしたいとかあるかな? > | 6. + インスタンスでのupgrade > | の順になるかと思います. > | クラス/インスタンス毎にそれぞれのupgradeを保持しておいて, > | それぞれのメソッドの中でさらにメソッド呼び出しが発生するという > | 感じでしょうか. > | 継承ツリーの探索が二重になっているといったかんじ. > > なるほど。でもupgradeの結果がすぐに予想できない気がします。 > それは私が慣れていないからかな。 結果の予測というのが何を示しているのかがいま一つわかりかねますが, 慣れていないと言うより私では気付かない何か不安定さに引っかかる のかもしれません. 私の方ではこれより深いことはまだ考えていないのが現状です^^; > |> 必要ないんじゃないですか。予約語の接頭辞とかリテラル記述の直 > |> 前とか「@」がなくてもいいような気がします。「@main」はわから > |> ないでもないですが。 > | > | 接頭辞を付けた理由としては, 1つは識別子に使おうとした単語が > | 予約語だと悲しかったりするので. > | また, 新規にいろいろ書いてるので, これは予約語状態, これからちょっと > | 特殊なことが起きます, というのをわかりやすくするためという点もあります. > | でも返って悩ませているでしょうか? > > うーん、まあ、趣味的なところが大きいですからねえ。私の趣味で > はないと。余計なお世話ですが。 特に@の記号は必要でもなさそうということでなくすことも考えてみます. 1つ逆に質問なのですが, ruby では % を使った記法がありますが, こちらで記号を使っているのには何か理由があるのでしょうか? > |> 他ではC言語風の型指定なのにここだけpascal風味なんですね。 > | > | メソッドのこれは見た目ややこし気味なのでちょこっとはスリムな > | クロージャで. > | > c = @closure(string s):Object{ s.writeln(); }; > | クロージャだとこんなかたち. > | C風に書くとこんなかんじ? > | > c = Object @closure(string s){ ...; }; > | > | 頭から逐次解釈的に考える方が考えやすかったからでしょうか. > | ざ〜っと眺めていったときに, 微妙に思考がバックトラックするのが > | 好きじゃないので. > > それは分かるんですが、なら他の場所でも戻り値の型指定をPascal > 風味にするのが自然でないかなと思ったんですが。 確かに統一感に欠ける感じもするのでふつうにC風での記述に 変えておきます〜. というわけで以下はざっくりと雑談というかいいわけ? 他の場所がPascal風でないのは, 単に普段C風の書き方になれている せいかもしれないです. C++やJavaで, メソッドの定義を行う場所には通常の式は記述しないので, そこには宣言しかない前提でコードを読むことができます. 宣言の始まりなのか, 処理の記述なのかで悩むことはないのです. なので, メソッド定義ではC風でも問題はないわけです. 逆に式の中でメソッドを付く方はあまり浮かばないのでとばしておきます^^; でわ〜♪ -- YAMASHINA Hio <hio hio.jp> -- ML: langsmith quickml.atdot.net 使い方: http://www.atdot.net/~ko1/quickml
245 2005-07-03 23:33 [hio hio.jp ] 自作言語citron v0.0.05 246 2005-07-04 10:58 ┗[matz ruby-lang.org ] 247 2005-07-05 00:27 ┗[hio hio.jp ] 自作言語citronv0.0.06(Was: Re: 自作言語citronv0.0.05) 249 2005-07-06 19:10 ┗[matz ruby-lang.org ] 250 2005-07-06 23:13 ┗[hio hio.jp ] 251 2005-07-08 02:58 ┗[matz ruby-lang.org ] -> 252 2005-07-09 19:00 ┗[hio hio.jp ]