[#1219] ruby animal — OZAWA Sakuro <crouton@...>

小澤さく@塩尻Internetです.

18 messages 1996/12/09

[#1256] ruby 0.99.4-961212 available — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです.

21 messages 1996/12/12
[#1257] Re: ruby 0.99.4-961212 available — Yasuo OHBA <jammy@...> 1996/12/12

大庭@SHLJapanです.

[#1258] Re: ruby 0.99.4-961212 available — matz@... (Yukihiro Matsumoto) 1996/12/12

まつもと ゆきひろです.

[#1259] Re: ruby 0.99.4-961212 available — WATANABE Hirofumi <watanabe@...> 1996/12/12

わたなべです.

[#1261] Re: ruby 0.99.4-961212 available — matz@... (Yukihiro Matsumoto) 1996/12/12

まつもと ゆきひろです.

[#1290] ruby 0.99.4-961217 will be available — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです.

32 messages 1996/12/17
[#1300] Re: ruby 0.99.4-961217 will be available — sinara@... 1996/12/17

原です。

[#1305] Re: ruby 0.99.4-961217 will be available — matz@... (Yukihiro Matsumoto) 1996/12/17

まつもと ゆきひろです.

[#1308] Re: ruby 0.99.4-961217 will be available — gougi@... (Shigeru Gougi) 1996/12/17

ごうぎ@TCIです。

[#1341] Re: ruby 0.99.4-961217 will be available — matz@... (Yukihiro Matsumoto) 1996/12/18

まつもと ゆきひろです.

[#1342] Re: ruby 0.99.4-961217 will be available — sinara@... 1996/12/18

原です。

[#1345] [BUG?] access string out of range — sinara@... 1996/12/18

原です。

[#1330] Re: Rational and Complex — Shin-ichiro Hara <sinara@...>

原です。

30 messages 1996/12/17
[#1335] Re: Rational and Complex — sinara@... 1996/12/18

原です。

[#1359] Re: Rational and Complex 1996/12/18

けいじゅ@SHLジャパンです.

[#1423] 配列への grep — (Dezawa Shin-ichiro) <dezawa@...>

出沢です

14 messages 1996/12/23

[#1469] wish ... — Noritugu Nakamura <nnakamur@...>

25 messages 1996/12/24
[#1470] Re: wish ... — matz@... (Yukihiro Matsumoto) 1996/12/24

まつもと ゆきひろです.

[ruby-list:1521] Re: C++ユーザ のための手引 (Ver. 0.1.1)

From: Sinichiro Dezawa <dezawa@...>
Date: 1996-12-26 08:59:11 UTC
List: ruby-list #1521
出沢です
> |メソッド
> | 2  *name という形の argmentをつかって不定数のパラメータを渡せる。
>   2'  name=exprで省略可能なパラメータを指定できる
んー、これでは私には理解不能になってしまう。ああ、省略可能な引数宣言の
ことですね、これは
》From: matz@caelum.co.jp (Yukihiro Matsumoto)
》Subject: [ruby-list:1515] Re: C++ユーザのための手引(Ver. 0.1.1)
》Date: Thu, 26 Dec 96 01:26:52 JST

で言われてるように、C++ にもあるので、書かなくて良いかと思ったのですが。
ここでは   def 識別子 [`(' [arg ['=' default]]...[`,' `*' arg ]`)']
                                                 ^^^^^^^^^^^^^^<---
こ言いたかったのです。
マニュアルの言葉の方が判り易いかな。
  2 不定数のパラメータ
	C++と同じように省略可能なパラメータを指定できます。(arg = default )
	rubyにだけある機能として、一番最後の仮引数の直前に*がある場合に
	残りの実引数はみな配列としてこの引数に格納されます

> 
> |代入演算の注意
> | 1  代入の時、C++ は右辺が左辺の型に変換される。
> |     ruby は左辺が右辺の型に変わる。
> 
> ちょっと誤解.rubyには変数に型がありません.代入が行われると
> 前の値に関係なく左辺の値(オブジェクト)が代入されます.型変換
> などは一切行われません(もともと変数に型がないから変換しよう
> がない).

ここどのように書こうか迷ったのです。
C++、smalltalk などでは代入のとき型変換されます。
ruby には型がないのだけど、私自身がrubyの初期 右辺が左辺の型に
変換されるという錯覚を持っていたので、そうじゃないよって
伝えるには何か書いて置きたいとおもってます。

1  代入の時、C++ は右辺が左辺の型に変換されて代入される。
    ruby は左辺の前の状態は忘れられ、右辺の型(あるクラスのオブジェクト)に
    置き換えられる。

ーーーーー
  さて

> | 2  Array への代入は、オブジェクトのポインタの代入である。
> |     代入された方の Array を変更すると、元の方も変わる。
> |	copy が必要なときは、dupメソッド を用いる
> Arrayに限らず全ての代入は参照の代入であり,オブジェクトの状
> 態を変更するとみんな変わります.明示的なコピーはcloneを使い
> ます.あ,ほとんどの場合はdupでも全く同じ意味です.

ですが。

> | 4  引数は 値渡しではなくアドレス渡し。
> |	つまり、値を変更すると呼出側の値も変わります。
> これは間違い.rubyには値渡ししかなく引き数として与えられた変
> 数の値を変えても元の式の値は変わりません.ただし,オブジェク
> トの参照が渡るので値に対して破壊的な操作は可能です.

も同じ範疇と考えていいですか?

オブジェクト参照の代入/オブジェクト参照が渡される  というのは 
C++ 的な表現でC++な人に説明する場合、 
	ポインタ の代入/ポインタが渡される 
と表現してはまずい点がありますか?
んー、、、
ポインタを使う事で理解し易いような表現ができるとおもうが
それで間違いはありますか


|	s=1
|	i=1
|	f=1.1
|	c = i + f + s
|	print c.type
|	-:4: undefined local variable or method `s' for main(Object)

SunOS4.1.3 での ruby - version 0.99.4-961217 では発生しないで Float
でした。
も一度家のLinuxしてみます。

>|この型変換の話はどの章でしょうか?
>
>Numeric.htmlにちょっと書いてありますが,それ以外は(先日の私
>のメイル以外は)文書化されていません.
>
ruby-man-0.99.4-jp にはないですね。ruby-man-961225 とりよせてみます。

ありゃ英語だ。でもやはり載ってないようですが、、、
ソースか、、、

In This Thread