[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 05/09 17:04 / Filesize : 113 KB / Number-of Response : 458
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Squeakでマターリ語りましょうや



1 名前:デフォルトの名無しさん mailto:sage [2005/11/07(月) 16:47:13 ]
全然スレ立たないけどみんな興味無いの?

いっしょに遊びましょ♪

29 名前:デフォルトの名無しさん mailto:sage [2005/11/22(火) 22:27:16 ]
休み前だから・・・
Happy Squeaking!!
ttp://www.sra.co.jp/people/aoki/SqueakIdioms/index.htm

30 名前:デフォルトの名無しさん mailto:sage [2005/11/22(火) 22:35:29 ]
すまん、間違えた
Happy Squeaking!!
ttp://www.ogis-ri.co.jp/otc/hiroba/technical/Squeak/index.html

31 名前:デフォルトの名無しさん [2005/12/03(土) 01:05:57 ]
Smalltalk全般の話題もここでOK?
今何か話したいことがある訳じゃないけど、最近自分もオブジェクトランドに
行くようになったのでお世話になりますね。

32 名前:デフォルトの名無しさん [2005/12/03(土) 02:29:28 ]
>31
OK

33 名前:デフォルトの名無しさん mailto:sage [2005/12/05(月) 07:21:33 ]
サクサクsmalltalk買ってきました

ディペンデンシィ機構で詰まってます。Squeakだとどのクラスが
いいリファレンスになりますか?あちこちブラウジングしてても理解できません

34 名前:デフォルトの名無しさん mailto:sage [2005/12/06(火) 00:46:29 ]
>>33
ぜんぜん答えになってないのだけれど、面白そうなのでこんなの書いてみた。

| sysNavi adds removes classes messages |
sysNavi := SystemNavigation default.
adds := sysNavi allCallsOn: #addDependent:.
removes := sysNavi allCallsOn: #removeDependent:.
classes := (adds collect: [:each | each class]) intersection: (removes collect: [:each | each class]).
messages := (adds union: removes) select: [:each | classes includes: each class].
sysNavi browseMessageList: messages asSortedArray name: 'Usage of dependency'

35 名前:デフォルトの名無しさん mailto:sage [2005/12/06(火) 01:03:50 ]
>>34
スマン。間違えてた…。orz

each class は each classSymbol に again all (ctrl-J) してね。

36 名前:デフォルトの名無しさん [2005/12/07(水) 10:21:26 ]
SmalltalkのPointクラスを調べて思ったんですが
単なる二次元ベクトルとしても使われるんですね。
たとえば矩形の平行移動のパラメータとか。

Pointという名前は平面上の1点を表すオブジェクトとしか
思えないので、こういう使われ方は正直気持ち悪いです。

責務を分けるのが筋だと思うのですが、みさなんはどう思われますか?


37 名前:デフォルトの名無しさん mailto:sage [2005/12/07(水) 12:39:34 ]
点の位置はベクトルとして表されるって知ってる?



38 名前:デフォルトの名無しさん mailto:sage [2005/12/07(水) 14:37:58 ]
>>37
線形代数の初歩くらいは一応習ってますよ。

ベクトルを表すオブジェクトなら2DVectorとかそういう名前が適切じゃないかと
思うんですよ。

VWのPointのコメントにもわざわざ

> For special situations, a Point can be used to represent any
> two-dimensional quantity, such as a row-and-column location in a
> table.

って書いてありますね。
名前と責務の整合性よりも Number>>@ でリテラルとして書ける利便性を
優先したんじゃないかと邪推してしまいます。


39 名前:デフォルトの名無しさん mailto:sage [2005/12/07(水) 14:52:48 ]
Pointの用法、もっと汚い例あるよ。
大きさ2のArrayの代用にしてる例。
どこだっけかなあ。
見つけたのは大昔だったから今もあるか不明。

厳格には>>36の言うように責務に応じてクラスを分けるか、
それで複数できるクラスを捨象して抽象クラスを出すとか、
そうじゃなければ責務の違いを弁証法的に持ち上げて各種名称を変えるか、
そういうのが理想ではあると思う。

つまり、面倒だからちょっとサボりましたよ、正直スマンカッタ(AA略 じゃね?

40 名前:デフォルトの名無しさん mailto:sage [2005/12/07(水) 19:45:57 ]
で、その理想を実現すると
どんな感じになりますか?

41 名前:デフォルトの名無しさん mailto:sage [2005/12/08(木) 21:42:13 ]
>>38
へぇ
Dolphinのクラスコメントにはないや。


42 名前:デフォルトの名無しさん mailto:sage [2005/12/15(木) 12:42:24 ]
個人的に座標とベクトルは表現の違いで同じものってイメージだから
名前はどっちでもいいような気がする。

43 名前:デフォルトの名無しさん mailto:sage [2005/12/22(木) 11:31:33 ]
toyで確率の計算をするにはどうすればいいでしょうか…
1/3の確率のものを作りたいんですけど…

44 名前:デフォルトの名無しさん mailto:sage [2005/12/23(金) 14:56:23 ]
>>43
乱数タイルは知っている?

45 名前:age mailto:age [2006/01/07(土) 19:14:38 ]
こういうシステムに使えばいいんじゃねーの?

GooglePCは本当だった
ttp://plusd.itmedia.co.jp/pcupdate/articles/0601/07/news015.html


46 名前:デフォルトの名無しさん mailto:sage [2006/01/28(土) 01:23:13 ]
DolphinSmalltalkのフリー版登場

ttp://www.object-arts.com/content/news/x6DCE.html

47 名前:デフォルトの名無しさん [2006/01/28(土) 17:45:20 ]
Smalltalk/Vで遊んだことがあって、Squeakプログラミングは
いつでもできるつもりになっていたが、
Squeakプログラミングではacceptしなくてはならない、ということを
数日前に知った。



48 名前:デフォルトの名無しさん mailto:sage [2006/01/29(日) 00:41:39 ]
>>47
accept しないでいい処理系は、どういうタイミングでコンパイルされるの?

49 名前:47 [2006/01/31(火) 03:29:59 ]
うろ覚えだがSmalltalk/Vではコードを書き込んだらすぐに実行可能
だったと思う。コードを書き込んだそばからコンパイルされている
のでは無いだろうか。

50 名前:デフォルトの名無しさん mailto:sage [2006/01/31(火) 18:00:14 ]
それだとタイピング途中はコンパイルエラー出まくると思う

51 名前:デフォルトの名無しさん [2006/03/05(日) 06:14:04 ]
タイピング途中にエラーが出ても問題ないのでは無いですか?エラーが見えて丁度良い。

52 名前:デフォルトの名無しさん mailto:sage [2006/03/05(日) 09:43:33 ]
>>51
はなしにならん。

53 名前:デフォルトの名無しさん [2006/03/12(日) 00:48:30 ]
このクラス菅ーと思ってよくよくみると
<primitive: 153>
だったりして残念

54 名前:デフォルトの名無しさん mailto:sage [2006/03/15(水) 23:21:15 ]
>>53
VMまでおっかけるのはいかが。
Slangだったらよかったのにね。

55 名前:http://www.vector.co.jp/soft/win95/util/se072729.html mailto:http://msdn2.microsoft.com/ja-jp/library/h2k70f3s.aspx [2006/03/18(土) 21:22:47 ]
TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

そういや64bitにネイティブ対応している2chブラウザてありましたっけ?



56 名前:デフォルトの名無しさん mailto:sage [2006/03/26(日) 13:15:28 ]
ブルーブックついにゲット
これから読みあさります

57 名前:デフォルトの名無しさん mailto:sage [2006/03/26(日) 23:20:22 ]
ttp://users.ipa.net/~dwighth/smalltalk/bluebook/bluebook_imp_toc.html



58 名前:デフォルトの名無しさん mailto:sage [2006/03/27(月) 01:35:45 ]
パープル買って26-30章はネットで見ろと?

59 名前:デフォルトの名無しさん mailto:sage [2006/03/32(土) 10:27:21 ]
squeak をiPAQで走らせてます。
もう、現代版newtonという感じですね。

End User Programming に興味があります。

60 名前:デフォルトの名無しさん mailto:sage [2006/04/08(土) 15:25:14 ]
59です。
2-3年前まではiPAQでsqueakを走らせることは、あまりに遅くて
現実的でなかった。ところが、最近のPocketPC例えばiPAQ h2215
あたりから、そこそこストレスなしにsqueakが走ってくれます。
現場でコンピューティングパワーをsqueakを通して容易に使う
ことが出来るようになりました。もう、むちゃくちゃおもろい。

61 名前:デフォルトの名無しさん [2006/04/18(火) 15:36:48 ]
アラン・ケイにメールを
送りたいから、メールアドレス教えて。

62 名前:age mailto:age [2006/04/19(水) 01:04:16 ]
ExcelVBAつついてたら見つけたんだが、Squeak.ocxってどうやって使うんだ?

63 名前:デフォルトの名無しさん mailto:sage [2006/04/19(水) 16:37:32 ]
>>48
forthだとwordが確定した時点で実行される

64 名前:デフォルトの名無しさん [2006/04/19(水) 20:56:43 ]
>>62
コントロールツールボックスから貼り付けて使います。何の役にも立ちませんが。

65 名前:デフォルトの名無しさん mailto:sage [2006/04/19(水) 22:47:07 ]
squeak.qp.land.to/

使ってる人はポロポロ居るんだよね。

66 名前:デフォルトの名無しさん mailto:sage [2006/04/23(日) 15:25:42 ]
>>61
メールの内容次第によっては、教えたる

67 名前:デフォルトの名無しさん mailto:sage [2006/04/24(月) 18:50:49 ]
>>61
まずググれ。



68 名前:sage [2006/04/28(金) 01:20:31 ]
なんか、squeakっていかにも子供向けっていう感じの画面なんだけど
いったい、子供がカメ?を動かしてみたり、お絵かきしてみたりして、
何の意味があるのかサッパリ解らないんです。
はっきり言って、金持ちの大人と、わけわからん大人の自己満足の世界がプンプンするよ。。

どっかのホームページに子供にいじらせている写真が出てますけど
こんな小さいときから、画面の前にかじりついているより、外に出て遊ばせた方が
絶対、その子供のためになると思うのですが。。。

しかしまぁ、百歩譲って、そんなにコンピュータを触らせたいななら、
smalltalkなんか教えるより、assemblerでコンピューターというのは
こんなもんだ、ってみっちり教え込んだ方が、絶対その子のためになると思うんだけど。。。

将来、squeakで食える事もなければ、仕事の役に立つこともまずあり得ないけど、
アセンブラが出来れば、ほぼ、食っては行けるし、コンピュータの基礎もばっちりだね。

いったい、何を考えているのかサッパリ解らん。

69 名前:デフォルトの名無しさん mailto:sage [2006/04/28(金) 01:26:28 ]
>>68
>いったい、何を考えているのかサッパリ解らん。

You too!!

70 名前:デフォルトの名無しさん mailto:sage [2006/04/28(金) 02:11:37 ]
食っていけるかどうかで考えるなら義務教育なんて殆ど糞
法律さえ守れば道徳なんてなくてもいい

71 名前:デフォルトの名無しさん mailto:sage [2006/04/30(日) 20:05:29 ]
道徳さえあれば法律なんてなくてもいい

72 名前:デフォルトの名無しさん mailto:sage [2006/05/01(月) 07:34:51 ]
道徳ってなに?


73 名前:デフォルトの名無しさん mailto:sage [2006/05/01(月) 08:47:30 ]
ttp://www.excite.co.jp/dictionary/japanese/?search=%E9%81%93%E5%BE%B3&match=beginswith&itemid=14395900

74 名前:デフォルトの名無しさん mailto:sage [2006/05/01(月) 16:43:15 ]
>>72
マジレスすっと、社会的に守られるべきモラルのこと。人間とゲダモノの境界線。
塩野七生のローマ人の物語によれば、モラルを
 哲学に求めたギリシア人
 宗教に求めたユダヤ人
 法律に求めたローマ人
となります。

75 名前:デフォルトの名無しさん [2006/05/01(月) 20:16:11 ]
世界の中心でアイを叫ぶのはどちらだ

76 名前:デフォルトの名無しさん [2006/05/01(月) 20:53:13 ]
アランケイは天才なのかw

77 名前:デフォルトの名無しさん [2006/05/02(火) 00:52:14 ]
画像(BMPとかJPEGとか)を出したい時はどうするんだ?



78 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 01:06:40 ]
>>77
“出す”の意味によるけど。

ファイルから読み込んで表示…なら、Squeak のデスクトップにドラドロ。
あるいは、ファイルリストを使うか、ImageReadWriter のサブクラスを使うか。

モーフをファイルに出力…なら、選択して赤ハローから export... 。
あるいはやはり ImageReadWriter のサブクラスを使うか。

79 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 01:20:04 ]
>>78
> ファイルから読み込んで表示…なら、Squeak のデスクトップにドラドロ。

出た。さんくす。
こんなに簡単だったんか。「smalltalkは環境だ」とかwikipediaにあったんで、
ドラッグアンドドロップという考えがうかばなかった。

うれしくてPDFもいれてみたが、ダメだった。グスン。



80 名前:デフォルトの名無しさん [2006/05/02(火) 01:25:05 ]
>>78
> ファイルリストを使うか

こんなんなった。squeakは拡張子という概念はないのか。関連付けも
なさそうだ。遊び方が判りにくい。


File 'up0698.jpg' is 141047 bytes long.
You may use the 'get' command to read the entire file.

Here are the first 5000 characters...
------------------------------------------
JFIF

81 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 02:48:04 ]
>>80
.jpg ファイルなどを選ぶと、最上段のボタン構成が変わるから、
そこから open を選ぶと開けるよ。

システムとかアプリケーションという区別や概念が稀薄だからね…。
ファイルシステムがベースにある現在主流のコンピュータ環境にどっぷりだと、
ちょっと馴染むのに骨が折れるかも。

ルールは「メッセージング」(つまり、何にどんなメッセージを送るか、を考えて
それを調べ、知り、実践する)だけだから、本当は簡単なはずなんだけれどもね…。
この切り替えが、頭では分かっていたとしても、なかなか。

82 名前:デフォルトの名無しさん mailto:sage [2006/05/02(火) 03:12:48 ]
>>79
環境だけれども、柔軟で粘土みたいなものだから、いろんなものに擬態します。
アプリだったり、オーサウエアだったり、開発環境だったり。

メッセージングという考え方は、シンプルだけどパワフルだから、いろいろな
ものを記述したり、表現できたりするので、見た目に惑わされないようにしないと。

83 名前:デフォルトの名無しさん mailto:sage [2006/05/04(木) 04:34:48 ]
>いったい、子供がカメ?を動かしてみたり、お絵かきしてみたりして、
>何の意味があるのかサッパリ解らないんです。

ある意味、写真にだまされているのかも。写真は多くの情報が欠落しているから、
それを理解するには想像力が必要です。自分がどう感じたか、ということよりも。
逆に様々な情報が欠落しているからこそ、恣意的な主観を働かせることが出来る
余地があるとも言えますが。楽しいメディアですね。

84 名前:デフォルトの名無しさん mailto:sage [2006/05/04(木) 12:03:01 ]
実際squeakはとっつきにくい。関連したwebや書籍をみても
「オブジェクトありき」とか「すべてはメッセージ」とか、開発者寄りの話
しか見つからない。
初めて(生)MS-DOSを触ったときを思い出した。途方にくれるカンジ。

85 名前:デフォルトの名無しさん mailto:sage [2006/05/04(木) 12:54:37 ]
もっといいOSが欲しいなあ
web.archive.org/web/20001219124700/www.secret-dan.com/members/quiosi/back19990415.html

インターフェイスデザインについても語っていきたい
web.archive.org/web/20010425114345/www.secret-dan.com/members/quiosi/back19991014.html

GUIに「ファイル」はいらないと思う理由
web.archive.org/web/20010104153500/www.secret-dan.com/members/quiosi/back19991212.html

とか読むと、Unix流ツールボックスアプローチ、Win/Mac/Emacs流キッチンシンクアプローチに対して、
Squeak流アプローチという解はどうよって思う。まだまだ荒削りかもしれないけれども。

86 名前:デフォルトの名無しさん mailto:sage [2006/05/04(木) 13:55:42 ]
>>84
Mac や Win の受け身的、限定的なところを心地よく思うようになると、
ユーザー側から攻めてなんぼの暫定ダイナブック環境はやっぱりキツい。

87 名前:デフォルトの名無しさん mailto:age [2006/05/04(木) 15:41:44 ]
これってマイクロカーネル妄想信者が作ったの?



88 名前:84 mailto:sage [2006/05/04(木) 15:50:17 ]
それでも俺はsqueakを知りたい。きっとこれは素晴らしいものだと感じている。
でも、どうすればいいのか検討もつかない。まるで青春時代の自分探しだ。
くもの糸はどこ?

89 名前:デフォルトの名無しさん mailto:sage [2006/05/04(木) 16:15:57 ]
アラン・ケイにメールかMLで直接質問すればイイじゃん。
あ、5/17は66回目のお誕生日です。>アラン・ケイ

90 名前:デフォルトの名無しさん mailto:sage [2006/05/04(木) 18:03:32 ]
>>88
知りたいことが分かっていれば、言ってくれれば、なんでも教えてあげますよ。w
もちろん当方の分かる範囲で…ですが。

ときに「自分探し」とは言い得て妙ですね。したいことがはっきりしていないと
ほとんど価値のない環境ですから…。

91 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 04:59:12 ]
最新Squeak(英語版)をGetして実行したら、Package Browserを発見。
ここに列挙されたclassが全部実装されているかと思うと喚起雀躍。
さっそくSqueakからtelnetしたいと思った。
Package BrowserからTelnetMachineというclass発見。そこで、
host := TelnetMachine new. をdo it。->Error:UndefinedObject cannot be changed
どんなもんでもinstanceになるわけではないのか..。
テキスト「自由自在Squeakプログラミング」登場。
morph2 := Morph new openInWorld.
同じエラーメッセージが出た。そもそも考え方が違うってか。

92 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 05:24:30 ]
テキストの一行だけをコピペってたからダメだったんだろうか。
全部で、たった3行だし真面目に入れるか。
"do it"
うんともすんとも言わなくなってしまった。タスクマネージャも
ユーザタブから変更が効かない。止む無くリブート。(Win2k)
もう寝ろ、と言っていたのかも知れない。

93 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 11:17:05 ]
>>91
TelnetMachine はともかく、Morph がエラーになるのはなにかおかしいですね。


94 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 11:27:38 ]
>>91
ちなみに TelnetMachine は TelnetMachine open の do it (alt/cmd + d) で
ウインドウが開きます。TelnetMachine class >> #open の定義は、ブラウザの
上段第2ペイン下の class ボタンを押して切り替えることで見ることができます。

95 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 11:34:19 ]
>>92
とりあえず、3 + 4 とかの print it (alt/cmd + p) は出来ていますか?

96 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 11:36:17 ]
>>95
あ、win2k なら alt + p ですね。念のため。(cmd は Mac ユーザー向け)

97 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 16:20:13 ]
>squeakを知りたい。きっとこれは素晴らしいものだと感じている。

実はSqueakには2つのシステムがあって、1つは「Smalltalk」。
もう1つは、Smalltalkの上にある「SqueakToys」。子供たちが
使っているのはSqueakToysの方です。Squeakで素晴らしい、
すごいと言えるのはSmalltalkというシステムの方だと思います。

>smalltalkなんか教えるより
誤解じゃないかな。Smalltalkは教えていないと思います。



98 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 23:20:45 ]
>>94
> ちなみに TelnetMachine は TelnetMachine open
たしかにopenで成功しました。そこで質問ですが、

・なぜ「open」という存在を知っていたのか、
・それがインスタンスでなくてクラスである理由

は なんでしょうか?判る範囲で構いませんのでゼヒ。
ちなみに、Morphにおける「new」というメソッドはMorphでも、そのSuperclassである
ObjectでもさらにそのSuperclassであるProtoObjectでも定義されていないんですが、
なぜ有効なんでしょう。

99 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 23:23:44 ]
>>95
> とりあえず、3 + 4 とかの print it (alt/cmd + p) は出来ていますか?
7になりますね。
再起動後は問題ないです。「morph2 := Morph new openInWorld. 」も成功します。
コードをいじっているんだから頻繁に停止したり、そのために再起動することに
なるのは別に珍しくないような気もしますが。

100 名前:デフォルトの名無しさん mailto:sage [2006/05/05(金) 23:30:33 ]
TelnetMachine open. の do itで作成したオブジェクトにWorkspaceから
メッセージを送る方法はありますか?
表示されたobject(ウィンドウ)のハローを表示してインスペクタでselfを
みるとオブジェクトIDっぽい数字「a SystemWindow(3652)」が現れるんですが、
この数字を介してメッセージの送信は可能でしょうか。


101 名前:デフォルトの名無しさん mailto:sage [2006/05/06(土) 01:13:43 ]
>>98
> ・なぜ「open」という存在を知っていたのか、
知りませんでした。が、クラスメソッドで見つけました。

> ・それがインスタンスでなくてクラスである理由
いろいろと複雑な事情がありますが、簡単にいえば単なる慣習です。
MVC でいうところの M(モデル)の属するクラスのクラスメソッドに V や C を担当する
クラスと関連付けをする作業を定義することをよくします。

> ちなみに、Morphにおける「new」というメソッドは
> なぜ有効なんでしょう。
#new は Behavior に定義されています。
Morph はクラスですが、自身もインスタンスです。属するクラスは無名ですが、
便宜的に Morph class と呼称します。いわゆるメタクラスというやつです。
メタクラスのスーパークラスパスは、原則としてそのインスタンスである
クラスのスーパークラスパスと同じです。したがって、Morph class の
スーパークラスをたどると ProtoObject class に行き着きます。
ProtoObject class は ProtoObject と違って、さらにスーパークラスがあります。
それが、Class です。そこからは普通に ClassDescription、Behavior とたどることができます。

| superclass |
World findATranscript: nil.
superclass := Morph class superclass.
[superclass isNil] whileFalse: [
 Transcript cr; show: superclass.
 superclass := superclass superclass]

余談ですが、このスクリプトの全角スペースをタブに置き換えるには、
最初の全角スペースを削除してタブをタイプした後、alt + shift + j としてみてください。
again という機能です。

102 名前:デフォルトの名無しさん mailto:sage [2006/05/06(土) 01:26:42 ]
>>100
インスペクタの左側のペインで model をダブルクリックしてください。
新しいインスペクタが現れて、これのインスペクタワークスペース(下のペイン)で
self に束縛した a TelnetMachine にメッセージを投げれます。

そんなことをせずとも元のインスペクタのインスペクタワークスペースで model に対して
メッセージを送ってもよいでしょう。

どうしてもワークスペースを使いたい(例えば、ワークスペース変数が好き、とかの)
理由があるならば、グローバル変数に model を束縛しておくという手もあります。

Smalltalk at: #MYTELNET put: model

これで、ワークスペースからでも MYTELNET でアクセスできます。

103 名前:デフォルトの名無しさん mailto:sage [2006/05/06(土) 01:31:41 ]
>>102
どうして model に a TelnetMachine が束縛されているのをしっているのか?
という質問がきそうなので先に答えておくと、それは、TelnetMachine class >> #open
の定義をざっと見たからです。

104 名前:デフォルトの名無しさん mailto:sage [2006/05/06(土) 02:06:50 ]
あと、メソッド名が分かっている場合、たとえば今の場合 #new なら、new を
(必要ならタイプして入力して)選択した後、browse it (alt + b) か、
implementors of it (alt + m) すれば、定義をブラウズできます。
もちろん同名メソッドがあったり、オーバーライドされている場合は、
適切なクラスを探さないといけませんが…。クラスが分かっているなら
後述のプロトコルブラウザを活用したほうがよいでしょう。

メソッド名の一部しか分からない場合は、その文字列を選択して
selectors containing it (alt + shift + W) をします。

メソッドの機能しか分からないときはメソッドファインダが便利です。
(デスクトップメニュー → open... → method finder で起動)
<<レシーバ>>. <<第一パラメータ>>. <<第二パラメータ>>. …. <<返り値>>
というようにレシーバ、パラメータ群、結果をピリオドで区切って入れると、
そういう結果を返してくるメソッドを列挙してくれます。

クラスの定義を見るのにシステムブラウザは有効ですが、あるオブジェクトが
起動可能なメソッド(受信可能なメッセージ)を一覧するのには向きません。
そういう目的にはプロトコルブラウザを使います。そのオブジェクトの属する
クラスをシステムブラウザでブラウズしている状態で、クラスペインか、
メソッド名ペインにポインタを合わせて alt + p をタイプします。(あるいは、
黄ボタン=右クリック メニューから browse protocol を選択)

105 名前:98 mailto:sage [2006/05/07(日) 03:55:23 ]
>>101-104
詳しい回答ありがとうございます。

簡単な質問ばかりして迷惑かけてそうなんで、疑問の解決は
しばらく書籍に頼ってみようと思います。ちょうど、手元の本に
メタクラスもメソッドファインダの話も載ってました。
(ゲームを実装する章だったんで飛ばしてた)


106 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 00:01:08 ]
>>105
まあ、基本かどうかはあまり気にせず、悩んだときにはいつでもどうぞ。
Smalltalkは、コツがつかめるまでは、ささいな事でも人に訊いて解決するのが
一番ですから。

107 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 22:33:54 ]
SqueakからXにウィンドウを表示させたりできるんですか?
GTKでGUI作っているんですけど,これと同じことってSqueakでもできるのか気になります。

後,シェルスクリプトみたいにコマンドラインツールとしてSqueakを利用できるのですか?



108 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 22:48:52 ]
>>107
X --> むりぽ(多分...)
コマンドライン --> languagegame.org:8888/propella/88

109 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 23:03:51 ]
>>108
>     コマンドライン --> languagegame.org:8888/propella/88

Lisp見たいにソケット経由で式を評価する感じかなこれ。SqueakをOS起動時にデーモンとして動かして,接続毎に環境を作って動かせばシェルスクリプトっぽいもんとして使えそうな気が

110 名前:デフォルトの名無しさん mailto:sage [2006/05/08(月) 23:27:23 ]
どちらも GNU Smalltalk を使うと良いナリ。
JIT だから速いし、コマンドラインから使えるし、Tk で GUI 作れるし、クロージャもあるナリよ。

昔ちょっとインスコしただけだから保証は出来ないけどね。

111 名前:デフォルトの名無しさん [2006/05/11(木) 21:24:06 ]
>107
wxSqueakがある。
www.wxsqueak.org/

112 名前:デフォルトの名無しさん [2006/05/11(木) 22:48:36 ]
カッコいい!

使ってみよ




113 名前:デフォルトの名無しさん [2006/05/12(金) 14:38:40 ]
>>84
>俺はsqueakを知りたい。きっとこれは素晴らしいものだと感じている。
>でも、どうすればいいのか検討もつかない。くもの糸はどこ?

とりあえず。。。

佐々木かをりのwin-win 素敵な人に会いました、聞きました(アラン・ケイ)
yamabuki.ewoman.co.jp/winwin/44ak/

Squeak について 〜Dynabook OS としての Squeak/Smalltalk 考〜
sumim.no-ip.com:8080/xemem/7

squeakの「何を」知りたいのですか?使い方?教え方?考え方?売り方?

114 名前:84 & 88 mailto:sage [2006/05/14(日) 01:57:29 ]
>>113
>squeakの「何を」知りたいのですか?使い方?教え方?考え方?売り方?

squeakを通して『オブジェクト(指向)』というものを知りたいのです。概念を体験したい。

BASICでアルゴリズム、プログラミムというもの、
MS-DOSでカーネルやシェル、そしてファイルシステム、
Cとアセンブラでプロセッサのアーキテクチャ、スタックやメモリモデル、
unixでハードウェアの(ファイルという)仮想化、ツールボックスアプローチ、システム管理、
MACやwindwosでユーザインタフェース。

いろんなものを学びました。今度は「オブジェクト指向」がターゲットです。
いつでも感性が「コレだ!」と告げるものを学んできました。今は「Squeak」がソレです。

まあ、趣味なんですが。

115 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 02:04:47 ]
オブジェクト指向なんて単なる hash と syntax sugar さ。

とりあえず workspace から色々弄ってみては? ↓こんな感じで。

ttp://squeak.qp.land.to/index.php?Workspace%A4%C7GO!

116 名前:デフォルトの名無しさん [2006/05/14(日) 03:40:08 ]
それだけいろいろなものに触れてきた人が
自分で道を開けないなんて・・・
まさにローリングストーンだね

117 名前:114 mailto:sage [2006/05/14(日) 08:51:24 ]
>>116
> それだけいろいろなものに触れてきた人が
> 自分で道を開けないなんて・・・

コンピュータ暦10年以上。それぞれ数年懸けて身に着けました。
いつまでたっても要領は良くならない、生みの苦しみはなくならない。
でも関連する書籍やモノに触れて一年か二年くらいすると、あるとき突然啓示が来ますね。

カーニハンとかストールマンとかエイホとか、アラン・ケイとかは
違うんだろうな。

生きてるうちに理解できれば良しとしたいところですが、生まれるまでは
苦しいんです。(コンビ芸人の片方の名前を思い出せないくらいの苦しみ)



118 名前:114 mailto:sage [2006/05/14(日) 08:58:25 ]
>>115
thnx。とっかかりもつかめてないんで なんでもwelcom。
辛気臭くなると叶わんし、低姿勢なのもストレス溜まる。もうROMる。

119 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 10:53:15 ]
Smalltalkイディオム
www.sra.co.jp/people/aoki/SmalltalkIdioms/index.htm

>もうROMる。
せっかくなので、いろいろ書いてください。気軽に。

120 名前:デフォルトの名無しさん mailto:sage [2006/05/14(日) 11:01:08 ]
おっと、これも
Happy Squeaking!! -オブジェクト指向再入門-
www.ogis-ri.co.jp/otc/hiroba/technical/Squeak/squeak.html

121 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 22:05:26 ]
シンボルって何につかうんだろう。

122 名前:デフォルトの名無しさん mailto:sage [2006/05/17(水) 22:17:02 ]
>>121
事故解決。固定文字列を定義するものらしい。
しかもシステムでユニークだそうだ。適当に書いてもバッティングしないんかしら。

123 名前:デフォルトの名無しさん mailto:sage [2006/05/18(木) 15:26:50 ]
>>122
バッティング、即ち同一ですから。
新しいのをつくれば、シンボルテーブルに追加されます。

124 名前:デフォルトの名無しさん [2006/05/19(金) 00:00:51 ]
みんなSqueakで何やってんだ?まさかメイン環境にしてるってこたないよな。

125 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 01:14:36 ]
>>124
しょっちゅう起動はするけれど、あんましたいしたことには使ってないなぁ…。
again が好きなので、短かい文章を書いたり、再構成の必要があるときの
エディタ代わりかな。あと、広い意味での(数値だけじゃなく、数値列や文字列、
画像なんかも対象とする…)ちょっとした電卓代わり。たまに、幾何的な図が
欲しいときにタートルに描かせたりとか。

126 名前:デフォルトの名無しさん mailto:sage [2006/05/19(金) 17:21:01 ]
インスコ作業で爆発的な満足感を得る。
その後、次のバージョンが出るまでねっとりとした放置プレイで愉悦。

127 名前:age mailto:age [2006/05/20(土) 01:46:21 ]
設計のパクリのネタ元になるかと思ったけど今イチ使いこなせない...
使えないおいらが悪いのかもしれないけどね

なんつーかね、使いにくい訳よ、VisualStudioなんかと比べたら。
あとMacOSXのInterfaceBuilderみたいなGUIなビルダー(デザイナー?)が欲しい訳よ、おいら
eToyをやればいいのかもしれんがあれは亀動かしたら次がよくわかんねーし
なんか妙にCUI(?)に縛られてて気持ち悪い



128 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 03:14:22 ]
>>127
俺もまだろくに触れてないんだけど、その比較はちょっと違うと思う。
GUIとかCUIとかじゃなくて、オブジェクトがたまたまグラフィカルに見せることもあるし、
そうでないこともあって、「GUIの部品」みたいな概念はないんだと思う。
他言語のIDEみたいに見てると、不満ばかり持つんじゃないかな。
間違ってたら誰か訂正して。

129 名前:デフォルトの名無しさん mailto:sage [2006/05/20(土) 04:15:34 ]
>>127
パクる目的なら、あえて慣れない場所でいつもの何かをどうやって作るか…ではなくて、
そこで新しく触れる手近なものたちがどんなふうに「メッセージング」というパラダイムのみで
実現されているのか…を調べるスタイルに接し方を変えてみたらどうでしょう?

例:
- ウインドウやポップアップはどう実装され機能しているか?
- テキストエディタは? テキストの入出力は?
- do it でどうやって単なる文字列がコードとして評価されているのか?
- コンパイラの仕組みは? デバッガの仕組みは?
- ワークスペースやシステムブラウザ、ファイルリストなどのアプリの実装は?
- クラスは? メソッドは? 継承機構は? 

あとは、ライブラリ内に潜って、デザインパターンの実例を探してみる…とか。

その前に、キーとなる「メッセージング」というメンタルモデルのほうは大丈夫でしょうか?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<113KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef