[#40528] [Feature #2833] 絵文字エンコーディングの提案 — Kenta Murata <redmine@...>
Feature #2833: 絵文字エンコーディングの提案
まつもと ゆきひろです
=1B$B$`$i$?$G$9!#=1B(B
GyRCOjQhOUxaJEg/PSQ3JF4kOSEjGyhCCgpSYWlscxskQiROGyhCanBtb2JpbGUbJEIkSCQkJCYl
チケット #2833 が更新されました。 (by Yui NARUSE)
=1B$B$`$i$?$G$9!#=1B(B
遠藤です。
遠藤です。
> Feature #2833: 絵文字エンコーディングの提案
[#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)
[#40643] draft of 1.9.2 release schedule — Yusuke ENDOH <mame@...>
Yugui さん、
[#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:40738] Re: [Feature #2969] String#to_f が -h.hhh±pd を解釈できるように
成瀬です。
(2010/03/23 21:23), Tadayoshi Funaba wrote:
>> String#to_f は従来から指数表記を許していたので、
>> String#hex などと使い分けている String#to_i 事情が違うと理解しています。
>
> 指数表現があることは関係あるんですかね。
>
> to_i では 0x をデファオルトでは数値として見ない、そして to_i はオプショ
> ンを受け付けるということ。もしこれがあまり意味のないことだったら、to_f
> というより to_i の仕様に疑問が生じます。hex は関係なく、'0xff'.to_i は
> 0 としかならないことに意味はないのか、ということです。意味のない使い分
> けと断じていいですか。
to_i がデフォルトで prefix を見ないのは、0377 のような、
0 詰めした数値文字列を、8 進数表記として解釈してしまうのを
問題視したからだと思っています。
今回の to_f は to_i と異なり、このような意図に反した解釈をしやすい
パターンが無いので、やはり事情が異なると思います。
>> この提案では保守的に受け付ける範囲を狭めにしていました。
>> C99 の strtod と同等にするという案もあると思いますし、
>> わたしはそれに反対しません。
>
> それが保守的だとは思わないですが、現状のものだったら、むしろ採用して欲
> しくないと思いました。
>
> 成瀬さんに実は考えがあるという事なら他人に色々言われるのも嫌でしょうか
> ら、一旦白紙に戻してやり直したほうがいいように思います。この中途半端提
> 案を採用することは反対です。
「保守的」である点についてはそこまでこだわりはないので、
実装するならば以下の通りでしょうか。
diff --git a/test/ruby/test_string.rb b/test/ruby/test_string.rb
index 9dd3ea9..c5b86fa 100644
--- a/test/ruby/test_string.rb
+++ b/test/ruby/test_string.rb
@@ -1398,7 +1398,10 @@ class TestString < Test::Unit::TestCase
assert_equal([-0.0].pack('G'), [S("-0.0").to_f].pack('G'))
assert_equal([ 0.0].pack('G'), [S(" 0x0p+0").to_f].pack('G'))
assert_equal([-0.0].pack('G'), [S("-0x0p+0").to_f].pack('G'))
+ assert_equal(255.0, S("0Xff").to_f)
+ assert_equal(255.5, S("0Xff.8").to_f)
assert_equal(1.0, S("0X1.P+0").to_f)
+ assert_equal(1024.0, S("0x1p10").to_f)
assert_equal(1024.0, S("0x1p+10").to_f)
assert_equal(0.0009765625, S("0x1p-10").to_f)
assert_equal(2.6881171418161356e+43, S("0x1.3494a9b171bf5p+144").to_f)
diff --git a/util.c b/util.c
index 9cdb563..eebc979 100644
--- a/util.c
+++ b/util.c
@@ -2110,6 +2110,8 @@ break2:
static const char hexdigit[] =
"0123456789abcdef0123456789ABCDEF";
s0 = ++s;
adj = 0;
+ nd = 0;
+ dsign = 0;
while (*++s && (s1 = strchr(hexdigit, *s))) {
adj *= 16;
@@ -2124,21 +2126,18 @@ break2:
}
}
- if (*s != 'P' && *s != 'p') {
- s = s0;
- goto ret;
- }
-
- dsign = 0x2C - *++s; /* +: 2B, -: 2D */
- if (abs(dsign) != 1) {
- s = s0;
- goto ret;
- }
+ if (*s == 'P' || *s == 'p') {
+ dsign = 0x2C - *++s; /* +: 2B, -: 2D */
+ if (abs(dsign) != 1) {
+ dsign = 1;
+ s--;
+ }
- for (nd = 0, s++; (c = *s) >= '0' && c <= '9'; s++) {
- nd *= 10;
- nd += c;
- nd -= '0';
+ while ((c = *++s) >= '0' && c <= '9') {
+ nd *= 10;
+ nd += c;
+ nd -= '0';
+ }
}
dval(rv) = ldexp(adj, nd * dsign);
--
NARUSE, Yui <naruse@airemix.jp>