[#40528] [Feature #2833] 絵文字エンコーディングの提案 — Kenta Murata <redmine@...>
Feature #2833: 絵文字エンコーディングの提案
まつもと ゆきひろです
むらたです。
> Feature #2833: 絵文字エンコーディングの提案
チケット #2833 が更新されました。 (by Yui NARUSE)
むらたです。
[#40573] [bug:1.8] ossl_ssl_session.c:110: warning: implicit declaration of function 'TIMET2NUM' — Tanaka Akira <akr@...>
Ruby 1.8 で、以下の警告が増えています。
2010/3/7 Tanaka Akira <akr@fsij.org>:
[#40597] Re: [ruby-list:46898] 重複組合せは組込みにならないのでしょうか? — "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp>
きしもとです
まつもと ゆきひろです
遠藤です。
> 同様に、repeated_permutation/combination のデフォルト引数にも反対
まつもと ゆきひろです
[#40614] [Bug #2956] segfault — Tomoki MAEDA <redmine@...>
Bug #2956: segfault
[#40623] Enumerable#interleave — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
2010年3月13日22:44 Yukihiro Matsumoto <matz@ruby-lang.org>:
まつもと ゆきひろです
2010年3月14日0:04 Yukihiro Matsumoto <matz@ruby-lang.org>:
まつもと ゆきひろです
[#40641] [Bug #2965] method `===' called on hidden T_STRING object (NotImplementedError) — Kenta Murata <redmine@...>
Bug #2965: method `===' called on hidden T_STRING object (NotImplementedError)
チケット #2965 が更新されました。 (by Shyouhei Urabe)
[#40649] [Feature #2968] 数値の正負を返すメソッド — Yui NARUSE <redmine@...>
Feature #2968: 数値の正負を返すメソッド
チケット #2968 が更新されました。 (by Yui NARUSE)
> チケット #2968 が更新されました。 (by Yui NARUSE)
成瀬です。
> 成瀬です。
[#40650] [Feature #2969] String#to_f が -h.hhh±pd を解釈できるように — Yui NARUSE <redmine@...>
Feature #2969: String#to_f が -h.hhh±pd を解釈できるように
質問ですが、この形式は入力だけでなく、なんらかの方法で出力でも利用でき
成瀬です。
> String#to_f は従来から指数表記を許していたので、
成瀬です。
> to_i がデフォルトで prefix を見ないのは、0377 のような、
成瀬です。
> 先のパッチの対象関数が ruby_strtod である通り、
成瀬です。
> strtod(3) の解釈対象に含まれていない 2 進や 8 進を否定することが、
(2010/03/26 3:05), Tadayoshi Funaba wrote:
> なぜ同じなのでしょう。
(2010/03/26 4:02), Tadayoshi Funaba wrote:
>> strtod(3) を参考にしたり、影響されたりすることは普通にあるとは思います
(2010/03/27 18:19), KOSAKI Motohiro wrote:
えぐち@エスアンドイーです
(2010/03/27 20:26), EGUCHI Osamu wrote:
> つまり、ふなばさんは 16 進よりも 2 進や 8 進形式が好みであるところ、
まつもと ゆきひろです
[#40672] URI methods for application/x-www-form-urlencoded — Tanaka Akira <akr@...>
最近、成瀬さんが追加した URI.encode_www_form など、
[#40695] keiju, please check tickets assigned to you — Yusuke ENDOH <mame@...>
いしつかさん
けいじゅ@いしつかです.
いしつかさん
けいじゅ@いしつかです.
遠藤です。
[#40735] [Bug #2995] TestHash#test_recursive_check fails — Shugo Maeda <redmine@...>
Bug #2995: TestHash#test_recursive_check fails
[#40746] [Bug #1031] -U オプションの説明が --help にない — Yusuke Endoh <redmine@...>
チケット #1031 が更新されました。 (by Yusuke Endoh)
[#40779] [Feature #3018] UNINITIALIZED_VAR() マクロの導入 — Motohiro KOSAKI <redmine@...>
Feature #3018: UNINITIALIZED_VAR() マクロの導入
まつもと ゆきひろです
> |Linuxではこの問題にたいして以下のようなマクロで解決しており、同様の手法を導入したいと
まつもと ゆきひろです
本題じゃないですが、
[#40805] Improvement of Fiber switching cost with system dependent way — SASADA Koichi <ko1@...>
ささだです.
こんにちは、なかむら(う)です。
[#40832] Process.daemon() returns -1 on failure ifndef HAVE_DAEMON — "Akinori MUSHA" <knu@...>
Process.daemon() 失敗時の挙動が、 HAVE_DAEMON 定義時と非定義時
2010年3月29日19:52 Akinori MUSHA <knu@idaemons.org>:
> 2010年3月29日19:52 Akinori MUSHA <knu@idaemons.org>:
[#40833] [Bug: trunk] Fiber transfer limitation — SASADA Koichi <ko1@...>
ささだです.
[#40855] revert 1.9 \w limitation to ASCII — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#40884] [Feature #3065] [TypedData] という名前について — Tadashi Saito <redmine@...>
Feature #3065: [TypedData] という名前について
[ruby-dev:40586] Re: [Feature #2833] 絵文字エンコーディングの提案
むらたです。
On 2010/03/08, at 23:22, Yusuke ENDOH wrote:
> 2010年3月3日12:43 Yusuke ENDOH <mame@tsg.ne.jp>:
>> せめて、テーブル生成のスクリプトを高速化してからか、configure の
>> オプションでオフにできるようにしていただけないでしょうか。
>
> 文句言ってばかりなのも残念なので、自分で最適化してみました。
> tool/transcode-tblgen.rb を書き換えてから make にかかる時間が
>
> no-opt -> opt
> 絵文字パッチ前: 133 秒 -> 124 秒
> 絵文字パッチ後: 275 秒 -> 151 秒
>
> となりました。
> 絵文字パッチのせいで従来より 142 秒ビルドが遅くなっていたところを、
> 18 秒遅くなるだけになりました。これなら許容範囲かなと思います。
> (元々が遅すぎるという話はありますが)
遠藤さん、ありがとうございます。
私も手元で確認したのですが、これまでとても遅かった
UTF-8 から絵文字エンコーディングへの変換器を生成する時間が
ほぼ一瞬で終わるようになって驚きました。
これで遠藤さんからの反論については解決したと考えて良いと思います。
他に反論が無いようでしたら、絵文字エンコーディングを trunk にコミットします。
> 導入した最適化は以下の 2 つです。
>
> 1) [byte..byte] の使いまわし
> [byte..byte] というオブジェクトが大量に作られていた (しかも破壊的
> 変更はされない) ので、使いまわすようにしました。
>
> 2) memoize の改良
> PostMemo にヒットしたとき PreMemo を更新していなかったので、更新
> するようにしました。
>
> 生成されるプログラムに変化はないようです。
>
>
> 小さい配列やハッシュを大量に生成し、(memoize のために) それらへの
> 参照を消さないプログラムなので、GC が結構時間を食っているようです。
> GC の最適化の題材に良いかもしれません。
>
>
> diff --git a/tool/transcode-tblgen.rb b/tool/transcode-tblgen.rb
> index f8da86d..4f183f1 100755
> --- a/tool/transcode-tblgen.rb
> +++ b/tool/transcode-tblgen.rb
> @@ -23,6 +23,8 @@ HEX2 = /[0-9A-Fa-f]{2}/
> class StrSet
> attr_reader :pat
>
> + SINGLE_BYTE_RANGES = (0..255).map {|i| [i..i] }
> +
> def self.parse(pattern)
> if /\A\s*((#{HEX2}|\{(#{HEX2}|#{HEX2}-#{HEX2})(,(#{HEX2}|#{HEX2}-#{HEX2}))*\})+(\s+|\z))*\z/o
> !~ pattern
> raise ArgumentError, "invalid pattern: #{pattern.inspect}"
> @@ -33,7 +35,7 @@ class StrSet
> while !seq.empty?
> if /\A(#{HEX2})/o =~ seq
> byte = $1.to_i(16)
> - seq_result << [byte..byte]
> + seq_result << SINGLE_BYTE_RANGES[byte]
> seq = $'
> elsif /\A\{([^\}]+)\}/ =~ seq
> set = $1
> @@ -448,7 +450,7 @@ End
> }
>
> if n = PostMemo[table]
> - return n
> + return PreMemo[[self,valid_encoding]] = n
> end
>
> if !name_hint
>
> --
> Yusuke ENDOH <mame@tsg.ne.jp>
>
--
Kenta Murata
OpenPGP FP = FA26 35D7 4F98 3498 0810 E0D5 F213 966F E9EB 0BCC
本を書きました!!
『Ruby 逆引きレシピ』 http://www.amazon.co.jp/dp/4798119881/mrkn-22
E-mail: mrkn@mrkn.jp
twitter: http://twitter.com/mrkn/
blog: http://d.hatena.ne.jp/mrkn/