[#8606] can't build 1.1b9_28 on digital-unix — Go Nakagawa <nakagawa@...>

中川といいます。みなさんはじめまして。

15 messages 1998/07/01
[#8615] Re: can't build 1.1b9_28 on digital-unix — matz@... (Yukihiro Matsumoto) 1998/07/02

まつもと ゆきひろです

[#8621] Re: can't build 1.1b9_28 on digital-unix — Go Nakagawa <nakagawa@...> 1998/07/02

中川です。

[#8649] [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...>

最近はすっかり ruby にお世話になっております。岩岡です。

33 messages 1998/07/08
[#8708] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/13

まつもと ゆきひろです

[#8710] Re: [BUG] Segmentation fault — WATANABE Hirofumi <watanabe@...> 1998/07/13

わたなべです.

[#8711] Re: [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...> 1998/07/13

岩岡です。

[#8712] Re: [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...> 1998/07/13

岩岡です。

[#8713] Re: [BUG] Segmentation fault — IWAOKA Masahiro <iwaoka@...> 1998/07/13

自己フォロウを続けてしまいまして申し訳ございません。

[#8715] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8718] Re: [BUG] Segmentation fault — WATANABE Hirofumi <watanabe@...> 1998/07/14

わたなべです.

[#8722] Re: [BUG] Segmentation fault — ttate@... 1998/07/14

立石@JAISTです。

[#8723] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8725] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8726] Re: [BUG] Segmentation fault — ttate@... 1998/07/14

立石@JAISTです。

[#8727] Re: [BUG] Segmentation fault — matz@... (Yukihiro Matsumoto) 1998/07/14

まつもと ゆきひろです

[#8728] Re: [BUG] Segmentation fault — ttate@... 1998/07/14

立石です。

[#8770] ruby 1.1c0 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

38 messages 1998/07/17
[#8800] Re: ruby 1.1c0 released — Sinichiro Dezawa <dezawa@...> 1998/07/21

出沢です

[#8801] Re: ruby 1.1c0 released — matz@... (Yukihiro Matsumoto) 1998/07/21

まつもと ゆきひろです

[#8804] Re: ruby 1.1c0 released — TEI meiki <tei@...> 1998/07/21

こんにちは、鄭です。

[#8845] mapping a tagged file onto a class — Takao KAWAMURA <kawamura@...>

各行にフィルード名と値が含まれ、レコードの区切りは空行という、

18 messages 1998/07/23
[#8847] Re: mapping a tagged file onto a class — matz@... (Yukihiro Matsumoto) 1998/07/24

まつもと ゆきひろです

[#8848] Re: mapping a tagged file onto a class — Takao KAWAMURA <kawamura@...> 1998/07/24

In message "[ruby-list:8847] Re: mapping a tagged file onto a class"

[#8892] nil + 1, or Integer.to_i — Sinichiro Dezawa <dezawa@...>

出沢です

33 messages 1998/07/27
[#8893] Re: nil + 1, or Integer.to_i — matz@... (Yukihiro Matsumoto) 1998/07/27

まつもと ゆきひろです

[#8895] Re: nil + 1, or Integer.to_i — matz@... (Yukihiro Matsumoto) 1998/07/27

まつもと ゆきひろです

[#8903] Re: nil + 1, or Integer.to_i — Sinichiro Dezawa <dezawa@...> 1998/07/27

matz> 良く見るとto_i,to_fともにNumeric.htmlに記述があります.これ

[#8906] Re: nil + 1, or Integer.to_i — keiju@... (石塚圭樹 ) 1998/07/27

けいじゅ@日本ラショナルソフトウェアです.

[#8909] Re: nil + 1, or Integer.to_i — Sinichiro Dezawa <dezawa@...> 1998/07/27

出沢です

[#8920] Re: nil + 1, or Integer.to_i — keiju@... (石塚圭樹 ) 1998/07/28

けいじゅ@日本ラショナルソフトウェアです.

[#8921] Re: nil + 1, or Integer.to_i — matz@... (Yukihiro Matsumoto) 1998/07/28

まつもと ゆきひろです

[ruby-list:8622] Re: once function

From: "MAEDA Shugo" <shugo@...>
Date: 1998-07-02 14:40:52 UTC
List: ruby-list #8622
前田です。

>以前に僕がやってみたのより、よっぽどよさそうです。以前に質問したときに、
>まつもとさんに、Module#attr のような「メソッドをを追加するメソッド」を
>eval  を活用してできそうだ、といわれましたが、その一例をみたような気が
>します。自身もやってみたし、ヒントももらったんですが、どうも eval がイ
>ヤで、そこにコダワってしまって、違うやりかたを考えていたところです。

どうしてもこういうことをやろうとすると、evalを使わざるを
得なくなりますよね。
一応、汚い部分はユーザには見せないようにしたのですが(^^;

>一応、忘れているといけないのでいいますが、メソッドですから、foo?  みた
>いな名前もありうるので、実際につかうには、それをゴマカシてやらないとい
>けないと思います。

うっかりしていました。

--- once.rb.orig        Thu Jul  2 22:31:46 1998
+++ once.rb     Thu Jul  2 22:32:20 1998
@@ -15,8 +15,8 @@
   def def_once_i(name, id)
     eval %{
       def #{name}
-        def self.#{name}; @__#{name}__; end
-        @__#{name}__ = ONCE_METHODS[#{id}].call
+        def self.#{name}; @__#{name}; end
+        @__#{name} = ONCE_METHODS[#{id}].call
       end
     }
   end
@@ -27,8 +27,8 @@
   def def_once_i(name, id)
     module_eval %{
       def #{name}
-        def self.#{name}; @__#{name}__; end
-        @__#{name}__ = instance_eval(&ONCE_METHODS[#{id}])
+        def self.#{name}; @__#{name}; end
+        @__#{name} = instance_eval(&ONCE_METHODS[#{id}])
       end
     }
   end


># クラスメソッドってできるんでしょうか。

仮想クラスを使えばできると思います。

class << Foo
  def_once :foo do
    "foo"
  end
end

そういえば、このonceは各インスタンス毎に一回ずつ評価される
のですが、Eiffelの場合全部のインスタンスを通じて一回しか
評価されなかったような気がします。
どちらの動作が望ましいのでしょう。

--
前田 修吾

In This Thread

Prev Next