[#15179] ruby にメッセージの国際化の仕組みはありますか? — "HIRATA Naoto" <hirata-naoto@...>

はじめまして,平田@武蔵工大と申します.

9 messages 1999/07/01

[#15264] 年月を範囲でうまく扱うには? — Yukihiko Eda <yuki-e@...>

江田です。

19 messages 1999/07/06
[#15265] 年月を範囲でうまく扱うには? — gotoken@... (GOTO Kentaro) 1999/07/06

In message "[ruby-list:15264] 年月を範囲でうまく扱うには?"

[#15284] Re: 年月を範囲でうまく扱うには? — Yukihiko Eda <yuki-e@...> 1999/07/07

> 大した手間でもなさそうだし、年月のクラスを作っちゃうのは

[#15296] Re: 年月を範囲でうまく扱うには? — gotoken@... (GOTO Kentaro) 1999/07/08

In message "[ruby-list:15284] Re: 年月を範囲でうまく扱うには?"

[#15323] Re: 年月を範囲でうまく扱うには? — Tadayoshi Funaba <tadf@...> 1999/07/08

ふなばです。

[#15324] Re: 年月を範囲でうまく扱うには? — gotoken@... (GOTO Kentaro) 1999/07/08

ごとけんです

[#15325] Re: 年月を範囲でうまく扱うには? — Wakou Aoyama <wakou@...> 1999/07/08

青山です。

[#15326] Range, ruby-talk (Re: 年月を範囲でうまく扱うには?) — gotoken@... (GOTO Kentaro) 1999/07/08

ごとけんです

[#15378] RubyFAQ-990713 — Akira Endo <akendo@...3.rim.or.jp>

遠藤です.

14 messages 1999/07/13

[#15467] debugger exception handle (Re: Modified debug.rb) — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

25 messages 1999/07/16
[#15490] Re: debugger exception handle (Re: Modified debug.rb) — keiju@... (石塚圭樹) 1999/07/16

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

[#15528] Re: debugger exception handle (Re: Modified debug.rb) — matz@... (Yukihiro Matsumoto) 1999/07/19

まつもと ゆきひろです

[#15551] Re: debugger exception handle (Re: Modified debug.rb) — keiju@... (石塚圭樹) 1999/07/20

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

[#15552] Re: debugger exception handle (Re: Modified debug.rb) — gotoken@... (GOTO Kentaro) 1999/07/20

In message "[ruby-list:15551] Re: debugger exception handle (Re: Modified debug.rb)"

[#15643] Re: debugger exception handle (Re: Modified debug.rb) — keiju@... (石塚圭樹) 1999/07/25

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

[#15518] 省略記法 — ARIMA Yasuhiro <fit0298@...>

Pascal では、構造体のメンバを表記する際に省略記法があります。

16 messages 1999/07/19

[#15530] 半 to 全 — Sinichiro Dezawa <dezawa@...>

出沢です

27 messages 1999/07/19

[#15557] グループウェアサーバ — hisanori@...

松尾です。こんにちは。

22 messages 1999/07/21
[#15558] Re: グループウェアサーバ — a-shigi@... (A.Shigihara) 1999/07/21

ども鴫原です。

[#15565] Re: グループウェアサーバ — hisanori@... 1999/07/21

松尾です。

[#15566] Re: グループウェアサーバ — a-shigi@... (A.Shigihara) 1999/07/21

ども鴫原です。

[#15669] cannot install ruby-gtk into FreeBSD 2.2.x — TAKAHASHI Masayoshi <maki@...>

Ruby Workshopのお手紙(請求書とも言う)が届いてうれしい高橋征義です。

26 messages 1999/07/27
[#15678] Re: cannot install ruby-gtk into FreeBSD 2.2.x — Hiroshi Igarashi <igarashi@...> 1999/07/27

いがらしです。

[#15686] Re: cannot install ruby-gtk into FreeBSD 2.2.x — TAKAHASHI Masayoshi <maki@...> 1999/07/27

高橋征義です。

[#15689] Re: cannot install ruby-gtk into FreeBSD 2.2.x — matz@... (Yukihiro Matsumoto) 1999/07/28

まつもと ゆきひろです

[#15692] Re: cannot install ruby-gtk into FreeBSD 2.2.x — Hiroshi Igarashi <igarashi@...> 1999/07/28

いがらしです。

[#15780] Re: cannot install ruby-gtk into FreeBSD 2.2.x — matz@... (Yukihiro Matsumoto) 1999/07/31

まつもと ゆきひろです

[#15807] Re: cannot install ruby-gtk into FreeBSD 2.2.x — WATANABE Hirofumi <eban@...> 1999/07/31

わたなべです.

[#15815] Re: cannot install ruby-gtk into FreeBSD 2.2.x — WATANABE Hirofumi <eban@...> 1999/08/01

わたなべです.

[#15818] Re: cannot install ruby-gtk into FreeBSD 2.2.x — Hiroshi Igarashi <igarashi@...> 1999/08/01

いがらしです。

[#15823] Re: cannot install ruby-gtk into FreeBSD 2.2.x — matz@... (Yukihiro Matsumoto) 1999/08/01

まつもと ゆきひろです

[#15679] about postgres-0.5.1 — goto@...

後藤@横河工事です。たびたびお世話になります。

29 messages 1999/07/27
[#15680] Re: about postgres-0.5.1 — Shugo Maeda <shugo@...> 1999/07/27

前田です。

[#15681] Re: about postgres-0.5.1 — goto@... 1999/07/27

後藤@横河工事です。

[#15682] Re: about postgres-0.5.1 — matz@... (Yukihiro Matsumoto) 1999/07/27

まつもと ゆきひろです

[#15684] Re: about postgres-0.5.1 — goto@... 1999/07/27

後藤@横河工事です。

[#15716] Re: about postgres-0.5.1 — kawakami <kawakami@...> 1999/07/29

[#15720] ruby debugger (like gdb attach) — kikutani@...

前にも2度ほど質問しましたが、cursesとかslangとかののrubyアプリを

28 messages 1999/07/29
[#15730] Re: ruby debugger (like gdb attach) — matz@... (Yukihiro Matsumoto) 1999/07/30

まつもと ゆきひろです

[#15743] Re: ruby debugger (like gdb attach) — kikutani@... 1999/07/30

On Fri, 30 Jul 1999 12:53:46 +0900,

[#15817] Re: ruby debugger (like gdb attach) — kikutani@... 1999/08/01

Fri, Jul 30, 1999 at 02:13:13PM +0900 において

[#15819] Re: ruby debugger (like gdb attach) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/08/01

なひです.

[#15822] Re: ruby debugger (like gdb attach) — kikutani@... 1999/08/01

On Sun, 1 Aug 1999 21:37:31 +0900,

[ruby-list:15321] Re: rubyfaq-990702.tar.gz

From: Inaba Hiroto <inaba@...>
Date: 1999-07-08 15:28:00 UTC
List: ruby-list #15321
稲葉です.

遠藤さんの rubyfaq の修正案です.遠藤さんが最初にメモをMLに出された時
から書きたかったんですが,時間がとれなくて今になってしまいました.

#思った以上に長くなってしまいました...
------
追加したい項目:

Q. オブジェクトにメッセージを送った時に実行されるメソッドはどのように
   捜されますか?
A. (MLで話題になった事があるに違いないんだけど, 見つけられませんでした)
------
>  2.1 ローカル変数のスコープはどのように決められていますか
                :
>     ブロック内が特別になっているのは,Threadや手続きオブジェクトの中で局所
>     化するためです.

   「ローカル変数を局所化するため」と明確に書くべきだと思います. 正確に
は
「局所化できるようにするため」でしょうか.
------
>  2.4 変数や定数にメソッドを適用すると予期しないことが起こりますが

   「変数や定数の値が知らないうちに変化してしまう事がありますが」と
   した方がFAQを調べる人に回答内容がわかるのではないでしょうか.
------
>  3.2 ブロックはイテレータの中でどのように使われますか

   回答ではイテレータという単語を使っていないので,「ブロックはメソッ
   ドの中でどのように使われますか」の方がいいと思います.

>     メソッドの中からブロックを実行するには,

   yeild以外は直接の実行とは言えないと思うので.
   「ブロックを使用するには」としたいです.

>                                              yield制御構造,ブロック引数,
>     Proc.newの3種類の方法で行うことができます.

   この3種類の他にも, Cの拡張ライブラリで書けばできる気がします.「ス
   クリプトのみの場合」というただしがきを追加した方が正確だと思います.
------
>  3.4 ブロックに引数を渡すにはどうしますか

>     ブロックの先頭に,仮引数を||で囲って置くと,実引数が多重代入されます.

   この仮引数が,メソッドの仮引数とちがってブロック内スコープに新し
   く導入された変数とは限らない事を強調したいのですが...
------
>  4.1 +や-は演算子ですか

>     +や-などは演算子ではなくメソッド呼び出しです.したがってオーバーライド
>     することもできます.

   以下4.1の回答ではオーバーライドという語が使われています.自分はこ
   こでの説明では「オーバーライド」(上書き)ではなく,「オーバーロード」
   (多重定義)という語の方がしっくりきます.(もちろんオーバーライドも
   できるのですが)
------
>  4.2 関数はありますか

>     厳密に言えばRubyに関数はありません.Rubyにおける関数(みたいなもの)はす
> べてレシーバを省略した形のメソッドです.

   以下のようなruby-manの組込み関数と用語集の説明を混ぜあわせた追加説
   明はどうでしょう.

   「特に, クラスObject(またはObjectがインクルードしているモジュール)
   で定義されたメソッドは全ての通常のインスタンスをselfとする環境から
   関数形式で呼び出せます.これらのメソッドでselfの状態にかかわらず同じ
   値を返すものは一般の言語における関数のように用いられます」

> def writeln(str)
                :
> のように一見関数のように見えるものも,mainというオブジェクトのメソッド
> です.

   この説明だと,mainの特異メソッドになるように読めます.
   トップレベルでのdefはObjectクラスのメソッドになるのですよね?
------
>  4.9 引数は参照渡しですか

>     参照渡しです.したがって,参照されているオブジェクトが,自分の状態を変
>     更するメソッドを持っている時には,副作用(それが主作用かもしれません
>     が)に注意する必要があります.

   Pascal,Fortran等の言語で言う「参照渡し」の意味とは違うと思います.
   C++の「参照型」とも違いますし.「値渡しです. が,Rubyではほとんどの
   場合値そのものが参照なので,参照渡しの側面があります」という方がい
   いと思います. (初心者には難しい記述かもしれないけど..) Lispと同じな
   のは確かです.

   前田さんのFAQにあった以下の記述も取り入れた方がいいと思います.

   Q. 引数への代入をするとどうなりますか。
   A. 引数への代入を行ってもメソッドの呼び出し側には影響はありません

   Q. 引数にメッセージを送るとどうなりますか。
   A. 引数は呼び出し側のオブジェクトと同じオブジェクトなので,メッセー
      ジを送ることでオブジェクトの状態が変更される場合は呼び出し側にも影
      響があります。
------
>  4.14 破壊的メソッドとは何ですか

>     オブジェクトの内容を変更してしまうメソッドで,文字列や配列,ハッシュな
>     どにあります.同名のメソッドがあって,一方はオブジェクトのコピーを作っ
>     て返し,もう一方は変更されたオブジェクトを返すようになっている場合, !
>     のついた方が破壊的メソッドです.

   「Array#filter等 !がつかない破壊的メソッドもあります.」を追加したい
   です.
------
>  6. 組込みライブラリ 

   この6節に集められている質問/回答を「組込みライブラリ」でまとめるの
   には違和感があります.
------
>  6.1 :exitというのは何ですか

   「:exit等の:のついたワードは何ですか?」の方がわかりやすいと思いま
す.

   それから, ここでString#internについて説明しても良いのではと思います.
------
>  6.2 シンボルから値を取り出すにはどうすればいいですか

   「シンボルと同名の変数の値を取り出すにはどうすればいいですか」
   の方が正確だと思います.
------
>  6.5 nilとfalseはどう違いますか
                :
>     ?のつくメソッドは,真偽を返す場合はtrue,falseを,そうでない時は値もし
>     くはnilを返します.

   正しくは「メソッドが真偽を返す場合はtrue,falseを,そうでない時は
   値もしくはnilを返す仕様にすることが好まれます.ただし言語とし
   て強制しているものではありません」だと思います.(でいいでしょうか?)

   「Ruby組込のメソッドはそのようになっているはずです」
   も加えてもいいかもしれません.

   ?のつくメソッドについては,
   「?のつくメソッドは真偽を返すメソッドにする事が期待されますが,
   歴史的事情からRuby組込のメソッドでそうなっていないものもあります」
------
>  6.6 ファイルを書き換えても変化しません
                :
>  io = open("example", "w+")

   "r+"の間違いだと思います.

>  ary = io.readlines
>  ary.each_with_index{|l, i| l[0,0] = (i+1).to_s + ": "}

   上2行は,以下でもいいですね.(Perl風?)
   
      ary = []
      ary.push "#$.: #$_" while io.gets

   この回答の中で-iオプションや$-i変数の説明をしても良いのではないでしょ
   うか?
------
>  6.9 ファイルを時間の新しい順にソートしたいのですが

>  Dir.glob("*").filter{|f| [File.mtime(f), f]}.
>    sort{|a,b| b[0]<=>a[0]}.filter{|e| e[1]}

>     とすると,カレントディレクトリの".",".."以外のファイルを更新時間の新
>     しい順にソートした配列を返します.

   sortメソッドにブロックをつけなくてもソートできますよね.更新
   時刻が同じ時にファイル名で比較してソートしてしまいますが問題ないで
   しょう.それから,なぜ以下がよくないかを書いた方がより良いと思い
   ます.

   Dir.glob("*").sort{|a,b| File.mtime(b)<=>File.mtime(a)}
------
>  6.10 ファイルの行数を数えたいのですが

>     ファイルの最後にも改行があるものと仮定して,次のが一番速いでしょう.
>     open("file").read.delete("^\n").size

   ruby-1.3.4-0531からできた UNDOCUMENTED なメソッドString#countを使え
   ば「open("file").read.count("\n")」がストレートでしょう.
   UNDOCUMENTED なので 8節に入れるべきかもしれません.
------
>  6.14 文字列から1文字ずつ文字列を取り出すにはどうしますか

   ASCIIのみならeach_byteで十分ですので,「日本語等マルチバイト文字を
   含む文字列から...」とした方がいいと思います.
------
>  6.16 タブをスペースに展開したいのですが

>     aに展開したい文字列があるとして,次のどちらかを使えばいいでしょう.

>  1 while a.sub!(/(^[^\t]*)\t(\t*)/){$1+' '*(8-$1.size%8+8*$2.size)}

>  1 while a.sub!(/\t(\t*)/){' '*(8-$~.begin(0)%8+8*$1.size)}

   gsub!とpackを使った以下の方法があります.

    a.gsub!(/([^\t]{8})|([^\t]*)\t/n){$+.pack("A8")}
--
			稲葉 浩人  <inaba@st.rim.or.jp>

In This Thread

Prev Next