[#18233] [book] blade.nagaokaut.ac.jp/ruby/ruby-list/ — Shin-ichiro Hara <sinara@...>

原です。

21 messages 1999/11/01
[#18239] [book] csv_split2 [Re: blade.nagaokaut.ac.jp/ruby/ruby-list/] — keiju@... (石塚圭樹) 1999/11/01

けいじゅ@日本ラショナルソフトウェアです.

[#18244] Re: [book] csv_split2 [Re: blade.nagaokaut.ac.jp/ruby/ruby-list/] — Shin-ichiro Hara <sinara@...> 1999/11/01

原です。

[#18289] Re: [book] csv_split2 — Koretsugu Daigoro <tmmcross@...> 1999/11/02

これつぐです。

[#18291] Re: [book] csv_split2 — keiju@... (石塚圭樹) 1999/11/02

けいじゅ@日本ラショナルソフトウェアです.

[#18311] Re: [book] csv_split2 — Koretsugu Daigoro <tmmcross@...> 1999/11/02

これつぐです。

[#18338] オブジェクトの非同一性判定 — Ayanosuke <aya@...>

 綾乃介です。

13 messages 1999/11/03

[#18539] [book] $*, etc. — Yasuhiro Fukuma <yasuf@...>

福間@福岡 です。

44 messages 1999/11/11

[#18580] — tokoma@... (中川 誠)

中川です。

44 messages 1999/11/14
[#18619] build on alpha — Go Nakagawa <nakagawa@...> 1999/11/15

もとの質問のかたとは別の中川です。

[#18737] Re: build on alpha — tokoma@... (中川 誠) 1999/11/18

中川です。

[#19144] Re: build on alpha — tokoma@... (中川 誠) 1999/12/04

中川です。長文で失礼します。

[#19341] Re: build on alpha — tokoma@... (中川 誠) 1999/12/09

中川です。

[#19344] Re: build on alpha — matz@... (Yukihiro Matsumoto) 1999/12/09

まつもと ゆきひろです

[#19400] Re: build on alpha — tokoma@... (中川 誠) 1999/12/10

中川です。

[#19426] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/11

えぐち@エスアンドイー です。

[#19459] Re: build on alpha — tokoma@... (中川 誠) 1999/12/13

中川です。

[#19461] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/13

えぐち@エスアンドイー です。

[#19506] Re: build on alpha — tokoma@... (中川 誠) 1999/12/14

中川です。

[#19520] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/15

えぐち@エスアンドイー です。

[#19522] Re: build on alpha — matz@... (Yukihiro Matsumoto) 1999/12/15

まつもと ゆきひろです

[#19543] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/15

えぐち@エスアンドイー です。

[#19562] Re: build on alpha — tokoma@... (中川 誠) 1999/12/15

中川です。

[#19569] Re: build on alpha — EGUCHI Osamu <eguchi@...> 1999/12/16

えぐち@エスアンドイー です。

[#19592] Re: build on alpha — tokoma@... (中川 誠) 1999/12/16

中川です。

[#18637] constant? — Kazuhiro Yoshida <moriq.kazuhiro@...>

もりきゅうです。

20 messages 1999/11/16
[#18640] Re: constant? — WATANABE Hirofumi <Hirofumi.Watanabe@...> 1999/11/16

わたなべです.

[#18650] Re: constant? — Kazuhiro Yoshida <moriq.kazuhiro@...> 1999/11/16

もりきゅうです。

[#18657] Re: constant? — matz@... (Yukihiro Matsumoto) 1999/11/16

まつもと ゆきひろです

[#18709] ADO にて datetime 型の取得 — Takashi SHIODA <tsio@...>

塩田です。

18 messages 1999/11/18
[#18779] Re: ADO にて datetime 型の取得 — Masaki Suketa<CQN02273@...> 1999/11/20

助田です.

[#18802] Re: ADO にて datetime 型の取得 — Takashi SHIODA <tsio@...> 1999/11/21

オレンジソフト塩田です。

[#18712] Re: header output in eruby — TAKEUCHi Kahori <take-k@...>

たけうちです。

16 messages 1999/11/18
[#18716] Re: header output in eruby — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/11/18

なひです.

[#18830] mod_ruby-0.1.4 — TAKAHASHI Masayoshi <maki@...>

高橋征義です。

16 messages 1999/11/22

[#18853] initializer polymorphism? — Takeyuki Watadani <watadani@...>

渡谷といいます。

25 messages 1999/11/23

[#18911] Re: eRuby 変換後の無駄 (?) な改行 — TAKEUCHi Kahori <take-k@...>

たけうちです。

14 messages 1999/11/25

[#18914] Ruby standard GUI framework? — Hideto ISHIBASHI <s34204@...>

石橋秀仁です。

43 messages 1999/11/25
[#18975] Re: Ruby standard GUI framework? — 中村暁史 Nakamura Akifumi <BXQ04723@...> 1999/11/27

[#19020] Re: Ruby standard GUI framework? — Hideto ISHIBASHI <s34204@...> 1999/11/29

石橋秀仁です。

[#19026] Re: Ruby standard GUI framework? — Noritsugu Nakamura <nnakamur@...> 1999/11/29

[#19081] Re: Ruby standard GUI framework? — "Hideaki Takata" <hideakit@...3.dion.ne.jp> 1999/12/01

たかたです。

[#19092] Re: Ruby standard GUI framework? — Noritsugu Nakamura <nnakamur@...> 1999/12/01

[#19112] Re: Ruby standard GUI framework? — 中村暁史 Nakamura Akifumi <BXQ04723@...> 1999/12/02

[#19131] Re: Ruby standard GUI framework? — Noritsugu Nakamura <nnakamur@...> 1999/12/03

[#18948] 他言語との比較 — とみたまさひろ <tommy@...>

とみたです。

18 messages 1999/11/26

[ruby-list:18442] Re: <=>

From: toyofuku@...
Date: 1999-11-05 12:14:37 UTC
List: ruby-list #18442
  豊福です。

私
>   良いかどうかはわかりませんが、素朴に思いつくのは。
>   Fixnum#<=> の再定義を監視しておいて、

  美しくはないですが試しにやってみました。

  Solaris2.6 で例の sort の時間がはかったところなぜか
こっちの方がほんのちょっと速くなってしまった。不思議???
---
                        豊福
                        toyofuku@juice.or.jp

*** array.c.orig	Fri Aug 13 14:45:02 1999
--- array.c	Fri Nov  5 20:46:41 1999
***************
*** 870,881 ****
      return NUM2INT(retval);
  }
  
  static VALUE
  sort_internal(ary)
      VALUE ary;
  {
      qsort(RARRAY(ary)->ptr, RARRAY(ary)->len, sizeof(VALUE),
! 	  rb_iterator_p()?sort_1:sort_2);
      return ary;
  }
  
--- 870,922 ----
      return NUM2INT(retval);
  }
  
+ static int
+ sort_3(a, b)
+     VALUE *a, *b;
+ {
+     VALUE retval;
+ 
+     if (TYPE(*a) == T_STRING && TYPE(*b) == T_STRING) {
+ 	return rb_str_cmp(*a, *b);
+     }
+ 
+     retval = rb_funcall(*a, cmp, 1, *b);
+     return NUM2INT(retval);
+ }
+ 
+ static int
+ sort_4(a, b)
+     VALUE *a, *b;
+ {
+     VALUE retval;
+ 
+     if (FIXNUM_P(*a)) {
+ 	if (FIXNUM_P(*b)) return *a - *b;
+     }
+ 
+     retval = rb_funcall(*a, cmp, 1, *b);
+     return NUM2INT(retval);
+ }
+ 
+ static int
+ sort_5(a, b)
+     VALUE *a, *b;
+ {
+     VALUE retval;
+ 
+     retval = rb_funcall(*a, cmp, 1, *b);
+     return NUM2INT(retval);
+ }
+ 
  static VALUE
  sort_internal(ary)
      VALUE ary;
  {
+     extern int cmp_flag;
+     static int (*sort_func[])() = {sort_2, sort_3, sort_4, sort_5};
+ 
      qsort(RARRAY(ary)->ptr, RARRAY(ary)->len, sizeof(VALUE),
! 	  rb_iterator_p()?sort_1:sort_func[cmp_flag]);
      return ary;
  }
  
*** eval.c.orig	Sat Sep 18 13:48:49 1999
--- eval.c	Fri Nov  5 20:47:51 1999
***************
*** 123,128 ****
--- 123,139 ----
      }
  }
  
+ static ID mid_cmp;
+ int cmp_flag;
+ 
+ int
+ init_cmp_flag()
+ {
+ 	mid_cmp = rb_intern("<=>");
+ 	cmp_flag = 0;
+ 	return 0;
+ }
+ 
  void
  rb_add_method(klass, mid, node, noex)
      VALUE klass;
***************
*** 136,141 ****
--- 147,158 ----
      if (klass == rb_cObject) {
  	rb_secure(4);
      }
+     if (mid == mid_cmp) {
+         if (klass == rb_cFixnum)
+ 	    cmp_flag |= 1;
+         else if (klass == rb_cString)
+ 	    cmp_flag |= 2;
+     }
      body = NEW_METHOD(node, noex);
      st_insert(RCLASS(klass)->m_tbl, mid, body);
  }
*** inits.c.orig	Fri Aug 13 14:45:06 1999
--- inits.c	Fri Nov  5 20:23:37 1999
***************
*** 77,80 ****
--- 77,82 ----
      Init_GC();
      Init_marshal();
      Init_version();
+ 
+     init_cmp_flag();
  }

In This Thread

Prev Next