[#38716] 多重配列 — Teppei <te-uno@...>
宇野といいます。はじめまして。
10 messages
2003/11/01
[#38717] Re: 多重配列
— Take_tk <ggb03124@...>
2003/11/01
たけ(tk)です。
[#38724] 祝日判定用メソッド — Take_tk <ggb03124@...>
たけ(tk)です
19 messages
2003/11/02
[#38725] Re: 祝日判定用メソッド
— Beyond <beyond@...>
2003/11/02
[#38727] Re: 祝日判定用メソッド
— Tadayoshi Funaba <tadf@...5.so-net.ne.jp>
2003/11/02
ちょっと見ただけですけど、気になるところがありますね。
[#38729] Re: 祝日判定用メソッド
— Take_tk <ggb03124@...>
2003/11/02
たけ(tk)です。
[#38731] 割り算で答えの整数部分だけを取り出す方法 — "S.Nobuhiro" <s-nob@...>
Nobuhiroと申します。
5 messages
2003/11/02
[#38747] [1.8.1p2] ''リテラルの行末エスケープ — "Shirai,Kaoru" <shirai@...>
白井です。
5 messages
2003/11/03
[#38756] ruby-dev summary 21730-21822 /draft — Minero Aoki <aamine@...>
青木です。
14 messages
2003/11/05
[#38781] convert EBCDIC to SJIS — "T.Fukagawa" <tfukaga@...01.gate01.com>
深川です。
8 messages
2003/11/10
[#38787] sjis正規表現エラー@二重打ちチェック — Naohiko Barada <naob@...>
初めてレポートします。 茨田と申します。よろしくお願いいたします。
5 messages
2003/11/11
[#38796] net/http set_debug_output — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。
7 messages
2003/11/15
[#38810] バックトレースの表示指定 — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
5 messages
2003/11/19
[#38814] new with module — "NAKAMURA, Hiroshi" <nakahiro@...>
なひです。
10 messages
2003/11/20
[ruby-list:38825] Re: new with module
From:
"NAKAMURA, Hiroshi" <nakahiro@...>
Date:
2003-11-21 03:01:32 UTC
List:
ruby-list #38825
なひです。
> From: "TAKAI Naoto" <takai@commentout.com>
> Sent: Thursday, November 20, 2003 8:13 PM
> 再挑戦してみます。
ありがとうございます。盛り上がるネタを振るのはなかなか
難しいです。^^;
> > これをもっとスマートにやれるような便利定義とかないでしょうか。
>
> module Helloable
> def say_hello
> puts hello
> end
> end
>
> Object.new.extend(Module.new{
> include Helloable
> def hello
> 'Hello, World.'
> end
> }).say_hello
>
> ってのはいかがでしょうか。
大元の「スマートにやりたい」というのは、専用のクラス定義したり
するのがめんどくさいし、1行で読み易く書きたい、という意図だったので、
こんな風にしてみました。使う側でなく、module側で
include Instanciableしなきゃいけないので、既存のモジュールには
使いづらいですが。。。
module Instanciable
def self.included(mod)
class << mod
def new
o = Object.new
o.extend(self)
yield(o)
o
end
end
end
end
module Helloable; include Instanciable
def hello
p "hello"
end
end
o = Helloable.new do |o|
def o.hello
p "custom hello"
end
end
o.hello
もちろんInstanciableの実装は、高井さんの例のように、
Moduleを1つnewしてということでもいいと思います。