[#35688] サブクラスのオブジェクト生成時に、スーパークラスの初期化を行うには ? — Onodera Takafumi <onodera-tak@...>
9 messages
2002/08/01
[#35689] Re: サブクラスのオブジェクト生成時に、スーパークラスの初期化を行うには ?
— "Shin'ya Adzumi" <adzumi@...>
2002/08/01
あづみです。
[#35690] Ruby/SDL がうまく動きません — Mitsuhiko_Tomomi <mikkun_ota@...>
earthseaと申します。
4 messages
2002/08/01
[#35722] パターンマッチした値を保持する変数は — goto@...
後藤です。
8 messages
2002/08/08
[#35729] SMTP サーバクラス — とみたまさひろ <tommy@...>
とみたです。
5 messages
2002/08/08
[#35743] FortranArray, yet another handler of array — NISHIMATSU Takeshi <t-nissie@...>
西松と申します.
4 messages
2002/08/12
[#35754] [ANN] SWIG 1.3.14 リリース — Shibukawa Yoshiki <yoshiki@...>
渋川@SWIGコアメンバーです。
4 messages
2002/08/13
[#35759] Bignum fast multiplication — IKEGAMI Daisuke <daisu-ik@...>
いけがみです。
9 messages
2002/08/14
[#35772] Unsecure world writeable dirの警告 — "井上 浩一" <kyoui32@...>
=1B$B0f>e$G$9!#=1B(B
31 messages
2002/08/26
[#35774] Re: Unsecure world writeable dir の警告
— matz@... (Yukihiro Matsumoto)
2002/08/26
まつもと ゆきひろです
[#35775] Re: Unsecure world writeabledir の警告
— nobu.nakada@...
2002/08/26
なかだです。
[#35776] Re: Unsecure world writeabledir の警告
— matz@... (Yukihiro Matsumoto)
2002/08/26
まつもと ゆきひろです
[#35778] Re: Unsecure world writeabledir の警告
— nobu.nakada@...
2002/08/26
なかだです。
[#35779] Re: Unsecure world writeabledir の警告
— WATANABE Hirofumi <eban@...>
2002/08/26
わたなべです。
[#35780] Re: Unsecure world writeabledir の警告
— nobu.nakada@...
2002/08/26
なかだです。
[#35784] Re: Unsecure world writeabledir の警告
— "U.Nakamura" <usa@...>
2002/08/26
こんにちは、なかむら(う)です。
[#35854] Re: Unsecure world writeabledir の警告
— "Inoue" <rubyist@...1.117.ne.jp>
2002/09/04
井上です。
[#35865] Re: Unsecure world writeabledir の警告
— Koji Arai <JCA02266@...>
2002/09/05
新井です。
[#35866] Re: Unsecure world writeabledir の警告
— matz@... (Yukihiro Matsumoto)
2002/09/06
まつもと ゆきひろです
[#35867] Re: Unsecure world writeabledir の警告
— "NAKAMURA, Hiroshi" <nakahiro@...>
2002/09/06
なひです。
[#35870] Re: Unsecure world writeabledir の警告
— Koji Arai <JCA02266@...>
2002/09/06
新井です。
[#35789] multipart な CGI を速くしたい — Takashi Kanai <kanai@...4u.or.jp>
Windows上でRubyとMySQLを使ってショッピングサイトのようなものを作って
17 messages
2002/08/28
[#35790] Re: multipart な CGI を速くしたい
— "U.Nakamura" <usa@...>
2002/08/28
こんにちは、なかむら(う)です。
[#35818] Re: multipart な CGI を速くしたい
— とみたまさひろ <tommy@...>
2002/08/29
とみたです。
[ruby-list:35735] Re: tail recursion elimination
From:
Takaaki Tateishi <ttate@...>
Date:
2002-08-10 14:20:34 UTC
List:
ruby-list #35735
At Sat, 10 Aug 2002 22:07:42 +0900,
> > ruby-talkを見ている方には重複してしまいますが,ruby-optimizerという
> > メソッドの最適化もどきを行う拡張モジュールを紹介させて下さい.
> >
> > http://www.ruby-lang.org/en/raa-list.rhtml?name=Optimization+Module
>
> こういう内部構造に依存するものは、本体に組み込むべきという気が
> するので、ruby-devに行ったほうがいいかも。
ええ,内部構造についてはruby-dev/ruby-extなりで助けを求めることに
なると思います.そのときはよろしくお願いします.
> > 単純に解析木を組換えることでスピードを少し向上させるものです.また末尾
> > 再帰除去も行います.現在いくつか不具合はありますが,だいたいうまく動く
> > ようです.
>
> 不具合というのはどんなところでしょうか。
tail-recursionの除去にもう少しきつい制限が必要なのです.現在は,
def fact_(x, c)
if( x == 1 ) # (1)
c.call(x)
else
fact_(x-1, proc{|n| x * c.call(n)}) # (2)
end
end
という関数があると,(2)の式の前に
x,c = x-1, proc{|n| x * c.call(n)}
という多重代入の式を挿入して,その後は(1)の内容を直接コピーして構文
木上でループを作っています.そのため,上記の式は実は,
def fact_(x, c)
again:
if( x == 1 )
c.call(x)
else
x,c = x-1, proc{|n| x * c.call(n)}
goto again
end
end
のような疑似コードで表せます.あとで局所変数が使われてしまいますね.
このように,引数にブロックをとる場合には末尾再帰除去をしないようにし
ようと思っています.
あとは,GCが起こるとたまにSegmentation Faultするので,どこかまずいの
かと探しているところです.
> それと1.7でコンパイルエラーになりました。あと、nodeDump.cはリン
> クする必要はないですよね。
nodeDumpはデバグ用に取り込みました.
まだまだ手直しが必要ですし,ソースいじりたい人もdoDump()関数があった
方がやりやすいかなと思いまして.もちろん,本体には直接必要ないです.
パッチありがとうございます.
--
Takaaki Tateishi <ttate@kt.jaist.ac.jp>