[#19457] equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org>

ふと気がついたのですが、

39 messages 2003/02/02
[#19460] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/03

まつもと ゆきひろです

[#19473] Re: equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org> 2003/02/04

In article <1044245817.592933.31973.nullmailer@picachu.netlab.jp>,

[#19474] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/04

まつもと ゆきひろです

[#19475] Re: equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org> 2003/02/04

In article <1044329220.257740.28127.nullmailer@picachu.netlab.jp>,

[#19476] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/04

まつもと ゆきひろです

[#19477] Re: equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org> 2003/02/04

In article <1044331431.138035.28173.nullmailer@picachu.netlab.jp>,

[#19478] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/04

まつもと ゆきひろです

[#19479] Re: equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org> 2003/02/04

In article <1044332948.099873.28206.nullmailer@picachu.netlab.jp>,

[#19482] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/04

まつもと ゆきひろです

[#19486] Re: equality between "a" and Exception.new("a") — Tanaka Akira <akr@...17n.org> 2003/02/04

In article <1044338964.502066.28474.nullmailer@picachu.netlab.jp>,

[#19491] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/04

まつもと ゆきひろです

[#19493] Re: equality between "a" and Exception.new("a") — matz@... (Yukihiro Matsumoto) 2003/02/04

まつもと ゆきひろです

[#19556] compare between String and Exception — Tanaka Akira <akr@...17n.org> 2003/02/12

さらに気が付いたのですが、

[#19514] [Oniguruma] Version 1.7.1 — "K.Kosako" <kosako@...>

ftp.ruby-lang.orgに、onigd20030207.tar.gzを置きました。

19 messages 2003/02/07

[#19548] [PATCH] file.c for (PR#389) and (PR#390) — nobu.nakada@...

なかだです。

20 messages 2003/02/11
[#19572] Re: [PATCH] file.c for (PR#389) and (PR#390) — pegacorn@... 2003/02/14

From: nobu.nakada@nifty.ne.jp

[#19648] Re: SEGV at search_method in eval.c (PR#400) — nobu.nakada@...

なかだです。

13 messages 2003/02/24

[ruby-dev:19683] Re: Custom node

From: Shinya Hayakawa <tetryl@...>
Date: 2003-02-28 14:14:47 UTC
List: ruby-dev #19683
こんにちは。早川です。

On Wed, 26 Feb 2003 17:53:09 +0900
matz@ruby-lang.org (Yukihiro Matsumoto) wrote:
> 決まり切ったオペレーションを(C言語で記述された)ひとつのメソッ
> ドにすることはできます。結局はメソッド検索の手間しか変化しな
> いような気がします。

極論だと、単なる実行効率だけの問題になるのでしょうか。

rb_eval() を読み直してみたのですが
僕が最初のメールで書いたコードを追加しても
カスタムノードと、メソッド呼び出しでは
確かにあまり違いが見えませんね..

Perl のバイトコードは、それぞれが何をすべきかを知っていて
データを保持する事もできるのですが、
そうでない Ruby のノードでは、結局カスタムノード一発では
済みそうに無いのでウマミも半減なんですね。

また簡単なベンチマークを取ったところ
メソッド呼び出しにかかるオーバーヘッドは
Ruby は Perl の半分くらいでした。
-- Perl の 'Foo->new->foo' と
-- Ruby の 'Foo.new.foo' での比較です。

カスタムノードについては一度考え直させてください。
もう少し調べてみたいと思います。
正直なところ、Perl にあるのだから Ruby にも
という安易な発想もありました (^^;

それと Perlのバイトコードについての解説は
以下のようなものがあります。
http://perldoc.com/perl5.8.0/pod/perlcompile.html
http://perldoc.com/perl5.8.0/pod/perlguts.html#Custom-Operators
http://perldoc.com/perl5.8.0/pod/perlhack.html#Op-Trees
http://search.cpan.org/author/ABERGMAN/B-Generate-1.06/lib/B/Generate.pm
http://gisle.aas.no/perl/illguts/op.html
http://www.netthink.co.uk/downloads.html
ドキュメントも少なく、実は利用例もまだあまり聞かないのですが..
ご参考までに。

--
SH <hayakawa@edge.co.jp>
Livin' on the EDGE Co., Ltd.


In This Thread