[#44818] [ANN] rcairo 1.6.0 — Kouhei Sutou <kou@...>
須藤です。
5 messages
2008/04/11
[#44827] 計算するハッシュ — "5.5" <5.5@...>
5.5 です。こんなこと考えました。
6 messages
2008/04/14
[#44828] freeTDS経由のアクセスでの文字化け — suna <suna4903@...>
皆さんはじめまして。
7 messages
2008/04/14
[#44848] [Q] Ruby のパーサについて — "Makoto Kuwata" <kwa@...>
桑田といいます。
6 messages
2008/04/20
[#44858] Method#arity — "ARAI Shunichi" <arai@...>
Rubyist 九州のあらいです。
9 messages
2008/04/25
[#44861] Ruby 1.9のARGVのエンコーディング — rubikitch@...
るびきちです。
17 messages
2008/04/26
[#44862] Re: Ruby 1.9のARGVのエンコーディング
— Yukihiro Matsumoto <matz@...>
2008/04/26
まつもと ゆきひろです
[#44863] Re: Ruby 1.9のARGVのエンコーディング
— "NARUSE, Yui" <naruse@...>
2008/04/26
成瀬です、パッチ用意してから投げようと思ったら出遅れた、
[#44864] Re: Ruby 1.9のARGVのエンコーディング
— Yukihiro Matsumoto <matz@...>
2008/04/26
まつもと ゆきひろです
[#44865] Re: Ruby 1.9のARGVのエンコーディング
— "U.Nakamura" <usa@...>
2008/04/28
こんにちは、なかむら(う)です。
[#44866] Re: Ruby 1.9のARGVのエンコーディング
— "NARUSE, Yui" <naruse@...>
2008/04/28
成瀬です。
[#44868] Re: Ruby 1.9のARGVのエンコーディング
— "U.Nakamura" <usa@...>
2008/04/30
こんにちは、なかむら(う)です。
[#44870] Re: Ruby 1.9のARGVのエンコーディング
— "NARUSE, Yui" <naruse@...>
2008/04/30
成瀬です。
[#44871] Re: Ruby 1.9のARGVのエンコーディング
— "U.Nakamura" <usa@...>
2008/04/30
こんにちは、なかむら(う)です。
[#44875] Re: Ruby 1.9のARGVのエンコーディング
— "NARUSE, Yui" <naruse@...>
2008/04/30
成瀬です。
[#44877] Dir.entriesのエンコーディング (was Re: Ruby 1.9のARGVのエンコーディング)
— "U.Nakamura" <usa@...>
2008/05/01
こんにちは、なかむら(う)です。
[#44872] NKFでの文字変換について — ishida@...
石田です。
8 messages
2008/04/30
[ruby-list:44837] Re: 計算するハッシュ
From:
"5.5" <5.5@...>
Date:
2008-04-15 15:13:16 UTC
List:
ruby-list #44837
5.5 です。
るびきちさん,レスありがとうございます。
> そうです。ブロック付きHash.newはmemoizeされた関数とみなせます。
> memoizeはメモリ消費と引き換えに高速化する手法のひとつです。
> ブロック付きHash.newはお手軽memoizeとして定石になっていると思います。
定石ですか。計算結果のキャッシュって,クラス定義してインスタンス
変数に保存しておくのしか見たことがなかったので,この手法を思いつ
いたとき新鮮でした。
ところで,memoize は何と読むのですか? ググっても分かりませんで
した。
> ちなみに複数引数になるとkeyをArrayにしてこんな感じに。
> [[〜]]となるのが不格好ですが…
>
> f = Hash.new {|h,(x,y)| h[[x,y]] = x+y }
> f[[1,3]] # => 4
> f[[2,4]] # => 6
> f[[1,3]] # => 4
あ! ブロックパラメータって,|h, (x, y)| みたいに書けるんですね!
いままでそういうことはできないと思い込み,不便に思っていました。
これはいいことを聞きました。
『プログラミング言語Ruby 第2版』にも,旧リファレンスマニュアルの
「メソッド呼び出し」のところにも書いてありませんね。
本題に戻って,複数引数の場合については書きたいことがあるのですが,
また改めて。
> ブロックはほんと便利ですよ。
このごろようやく分かってきました。
「Ruby って何がいいわけ?」と聞かれたら,迷わず「まずはブロック」
と答えられそうです。
--
5.5@moji.gr.jp