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

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
全然スレ立たないけどみんな興味無いの?

いっしょに遊びましょ♪
2デフォルトの名無しさん:2005/11/07(月) 16:50:10
⊂二二二( ^ω^)二⊃ ブーン
3デフォルトの名無しさん:2005/11/07(月) 16:50:58
(ノ∀`)アチャー
4デフォルトの名無しさん:2005/11/07(月) 17:10:26
Squeakで2chブラウザ作ってみたいけど
どうやって作ればいいんだろ

network関係のクラス漁ってもイマイチ
ワケわかんないし
5デフォルトの名無しさん:2005/11/07(月) 22:35:22
ttp://pc8.2ch.net/test/read.cgi/tech/1038953148/

どうせ立てるならSmalltalkの総合スレ立ててくれればいいのによ。
どうすんだよこのスレ。
6デフォルトの名無しさん:2005/11/07(月) 22:46:15
俺の場合、チュートリアルのレース作って
わーいわーい
ってよろこんだ後
なにしよう・・・
状態
7デフォルトの名無しさん:2005/11/07(月) 22:47:13
↓以下、ム板用AAテスト専用スレ
81:2005/11/08(火) 12:28:24
ありゃりゃ

空気読めてなかったぽい私orz
じゃあ今から私が叩かれるスレで・・・一気に1000まで消化しますか
んでもって新たにやり直す感じでいいですか?

私のスペック
PC歴20年弱

28歳独身離婚歴あり子供中学生一人
住まいは埼玉県のどっか

可能な限り全レスして叩かれますので
age進行で罵詈雑言お願いします

Squeakの話も大歓迎です
PCには犬と窓両方Squeak入れて遊んでます
91:2005/11/08(火) 12:34:04
Squeakではクラス定義の仕方がイマイチわかってません
インスタンスメソッドとクラスメソッドの違いもわからない

概念はおぼろげにはわかるんだけど、いざ自分でコーディングしょうとすると
怖くてAccept出来ません
101:2005/11/08(火) 12:37:06
あ、そんなこと言う前にみんなに一言ですよね


糞スレ立ててごめんなさいm(_ _)m
反省してます
11デフォルトの名無しさん:2005/11/08(火) 13:15:12
ま、いいんでね。

1はSqueak/Smalltalk/OOPに関して知っていること、分からないことを
逆さに振っても出てこなくなるまでひっきりなしに吐露しる!

で、ヒマなやつがつっこむ…と。
12デフォルトの名無しさん:2005/11/08(火) 19:36:57
とりあえず、イメージを別名で保存して作業用、学習用イメージを新規につくればいいんじゃねーの?多分
131 ◆i3UKtYLxd2 :2005/11/09(水) 06:51:31
>11
そう言って頂けると嬉しいです
なるべく毎日Squeakいぢるようにしますね
>12
助言ありがとうございます
新規に自分用のimage作るのはやってみました
新たにimageコピーして別の作業場を作る感じなのかな?
(OS側の)Squeakフォルダに*.imageと*.changesが
2つずつ出来てました

このコピーした方なら安心ってことですね
14デフォルトの名無しさん:2005/11/09(水) 09:51:22
The Design and Implementation of Multilingualized Squeak
http://www.is.titech.ac.jp/~ohshima/squeak/m17npaper/index.html

これ、日本語版はないんでしょうか?
15デフォルトの名無しさん:2005/11/10(木) 05:12:48
SqueakToysのscriptingで、stop script と pause script ってどう違うんですか?
stop は状態を normal -- run when called にするってこと。
pause は状態を paused -- ready to run all the time にするってこと。
そこまでは分かったんですが、normal状態とpaused状態の違いがよく分かりません。
pausedの方がすぐに動き始めるような感じがしますが、具体的に何が違うんでしょう。
16デフォルトの名無しさん:2005/11/10(木) 20:36:12
>15
全スクリプトを使ってみなよ。信号機みたいなやつ。
したら多分わかる。
17デフォルトの名無しさん:2005/11/10(木) 22:13:30
gameにあるトランプの絵みたいな画像データはどうやってsqueakのなかに取り込むんだ?

なんか配列?データのなかに画像データがあるみたいだけどこれはjpgかgifのデータが
そのまま16進数で書いてあるのか?
この16進数列はhexdumpかなにかで作ってコピペで書き込む必要があるのか?
18デフォルトの名無しさん:2005/11/10(木) 22:31:02
>17
Form class の instance creation カテゴリを見れ
19デフォルトの名無しさん:2005/11/11(金) 12:04:36
えーっと
PackageLoaderで色々インストールしてたら
ダイアログ出て来て「Proceed」「Abandon」「Debug」を
選べってでたんですけどどうすればいいんですか?
20デフォルトの名無しさん:2005/11/11(金) 12:55:31
「Debug」選んでどこでエラーが起きたか、エラーが発生したときの状態を調べる、かな?
発生箇所が解っても理由が解らないとどうしたらいいかわからない・・・
21デフォルトの名無しさん:2005/11/11(金) 14:32:55
>>19
色々の具体的な中身が肝心だろ
パソコン初心者かよ
2215:2005/11/11(金) 15:19:15
>>18
>>16
回答ありがとうございます。
その方法を試したり調べたりしてみます。

御礼が遅くなってすみませんです。
23デフォルトの名無しさん:2005/11/11(金) 15:48:10
eToysで子供がアニメーションを作ってしまうことについて
関係者の間で議論になっているようですが、どういう問題が
あるんでしょうか?
24デフォルトの名無しさん:2005/11/13(日) 14:37:47
Squeak関係のリンク
日本のSqueak公式サイト
ttp://squeakland.jp/
多言語化Squeakのホームページ
ttp://squeak.hp.infoseek.co.jp/
スクイーク e-トイ入門(工事中)
ttp://sumim.no-ip.com:8080/morphiclesson/
25デフォルトの名無しさん:2005/11/16(水) 00:21:40
これって、VMなんだよね?
ブートのときロードしたらOSの代わりにはならんの?(一応OS板だし)

デバイスドライバとか、ファイルシステムは持っていないのかね?
26デフォルトの名無しさん:2005/11/16(水) 00:34:59
仮想のOSととらえることは可能ですが、デバイスやファイルへのアクセスは
通常は下層の本当のOSへ委譲する実装になってます。だから、
下層のOS抜きでbootしてSqueakのみで稼動させるのは事実上無理ですね。

でもソースが公開されているし、結構portabilityもあるので、、やりたければ
自前のデバイスドライバを組み込む程度は十分可能なんじゃないかな。

ここってOS板なの?情報システム板じゃない?
27デフォルトの名無しさん:2005/11/16(水) 00:56:27
>>26
素で勘違いしてた。プログラム技術板ですね。

やっぱりデバイスへのアクセスにはOSの機能を使ってるんですね。

ちと探してみたら、sourceforgeにsqueaknosというプロジェクトがあるみたいだ。
OS無しでの稼働環境を目指す。と、
でも最終リリースが2001年4月・・・
28デフォルトの名無しさん:2005/11/20(日) 18:24:17
閑古鳥が鳴いている
29デフォルトの名無しさん:2005/11/22(火) 22:27:16
休み前だから・・・
Happy Squeaking!!
ttp://www.sra.co.jp/people/aoki/SqueakIdioms/index.htm
30デフォルトの名無しさん: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デフォルトの名無しさん:2005/12/05(月) 07:21:33
サクサクsmalltalk買ってきました

ディペンデンシィ機構で詰まってます。Squeakだとどのクラスが
いいリファレンスになりますか?あちこちブラウジングしてても理解できません
34デフォルトの名無しさん: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デフォルトの名無しさん: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デフォルトの名無しさん:2005/12/07(水) 12:39:34
点の位置はベクトルとして表されるって知ってる?
38デフォルトの名無しさん: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デフォルトの名無しさん:2005/12/07(水) 14:52:48
Pointの用法、もっと汚い例あるよ。
大きさ2のArrayの代用にしてる例。
どこだっけかなあ。
見つけたのは大昔だったから今もあるか不明。

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

つまり、面倒だからちょっとサボりましたよ、正直スマンカッタ(AA略 じゃね?
40デフォルトの名無しさん:2005/12/07(水) 19:45:57
で、その理想を実現すると
どんな感じになりますか?
41デフォルトの名無しさん:2005/12/08(木) 21:42:13
>>38
へぇ
Dolphinのクラスコメントにはないや。
42デフォルトの名無しさん:2005/12/15(木) 12:42:24
個人的に座標とベクトルは表現の違いで同じものってイメージだから
名前はどっちでもいいような気がする。
43デフォルトの名無しさん:2005/12/22(木) 11:31:33
toyで確率の計算をするにはどうすればいいでしょうか…
1/3の確率のものを作りたいんですけど…
44デフォルトの名無しさん:2005/12/23(金) 14:56:23
>>43
乱数タイルは知っている?
45age:2006/01/07(土) 19:14:38
こういうシステムに使えばいいんじゃねーの?

GooglePCは本当だった
ttp://plusd.itmedia.co.jp/pcupdate/articles/0601/07/news015.html
46デフォルトの名無しさん: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デフォルトの名無しさん:2006/01/29(日) 00:41:39
>>47
accept しないでいい処理系は、どういうタイミングでコンパイルされるの?
4947:2006/01/31(火) 03:29:59
うろ覚えだがSmalltalk/Vではコードを書き込んだらすぐに実行可能
だったと思う。コードを書き込んだそばからコンパイルされている
のでは無いだろうか。
50デフォルトの名無しさん:2006/01/31(火) 18:00:14
それだとタイピング途中はコンパイルエラー出まくると思う
51デフォルトの名無しさん:2006/03/05(日) 06:14:04
タイピング途中にエラーが出ても問題ないのでは無いですか?エラーが見えて丁度良い。
52デフォルトの名無しさん:2006/03/05(日) 09:43:33
>>51
はなしにならん。
53デフォルトの名無しさん:2006/03/12(日) 00:48:30
このクラス菅ーと思ってよくよくみると
<primitive: 153>
だったりして残念
54デフォルトの名無しさん:2006/03/15(水) 23:21:15
>>53
VMまでおっかけるのはいかが。
Slangだったらよかったのにね。
TextSS のWindowsXP(Professional)64bit化おながいします

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

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

56デフォルトの名無しさん:2006/03/26(日) 13:15:28
ブルーブックついにゲット
これから読みあさります
57デフォルトの名無しさん:2006/03/26(日) 23:20:22
58デフォルトの名無しさん:2006/03/27(月) 01:35:45
パープル買って26-30章はネットで見ろと?
59デフォルトの名無しさん:2006/03/32(土) 10:27:21
squeak をiPAQで走らせてます。
もう、現代版newtonという感じですね。

End User Programming に興味があります。
60デフォルトの名無しさん:2006/04/08(土) 15:25:14
59です。
2-3年前まではiPAQでsqueakを走らせることは、あまりに遅くて
現実的でなかった。ところが、最近のPocketPC例えばiPAQ h2215
あたりから、そこそこストレスなしにsqueakが走ってくれます。
現場でコンピューティングパワーをsqueakを通して容易に使う
ことが出来るようになりました。もう、むちゃくちゃおもろい。
61デフォルトの名無しさん:2006/04/18(火) 15:36:48
アラン・ケイにメールを
送りたいから、メールアドレス教えて。
62age:2006/04/19(水) 01:04:16
ExcelVBAつついてたら見つけたんだが、Squeak.ocxってどうやって使うんだ?
63デフォルトの名無しさん:2006/04/19(水) 16:37:32
>>48
forthだとwordが確定した時点で実行される
64デフォルトの名無しさん:2006/04/19(水) 20:56:43
>>62
コントロールツールボックスから貼り付けて使います。何の役にも立ちませんが。
65デフォルトの名無しさん:2006/04/19(水) 22:47:07
http://squeak.qp.land.to/

使ってる人はポロポロ居るんだよね。
66デフォルトの名無しさん:2006/04/23(日) 15:25:42
>>61
メールの内容次第によっては、教えたる
67デフォルトの名無しさん:2006/04/24(月) 18:50:49
>>61
まずググれ。
68sage:2006/04/28(金) 01:20:31
なんか、squeakっていかにも子供向けっていう感じの画面なんだけど
いったい、子供がカメ?を動かしてみたり、お絵かきしてみたりして、
何の意味があるのかサッパリ解らないんです。
はっきり言って、金持ちの大人と、わけわからん大人の自己満足の世界がプンプンするよ。。

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

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

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

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

You too!!
70デフォルトの名無しさん:2006/04/28(金) 02:11:37
食っていけるかどうかで考えるなら義務教育なんて殆ど糞
法律さえ守れば道徳なんてなくてもいい
71デフォルトの名無しさん:2006/04/30(日) 20:05:29
道徳さえあれば法律なんてなくてもいい
72デフォルトの名無しさん:2006/05/01(月) 07:34:51
道徳ってなに?
73デフォルトの名無しさん:2006/05/01(月) 08:47:30
74デフォルトの名無しさん: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デフォルトの名無しさん:2006/05/02(火) 01:06:40
>>77
“出す”の意味によるけど。

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

モーフをファイルに出力…なら、選択して赤ハローから export... 。
あるいはやはり ImageReadWriter のサブクラスを使うか。
79デフォルトの名無しさん: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デフォルトの名無しさん:2006/05/02(火) 02:48:04
>>80
.jpg ファイルなどを選ぶと、最上段のボタン構成が変わるから、
そこから open を選ぶと開けるよ。

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

ルールは「メッセージング」(つまり、何にどんなメッセージを送るか、を考えて
それを調べ、知り、実践する)だけだから、本当は簡単なはずなんだけれどもね…。
この切り替えが、頭では分かっていたとしても、なかなか。
82デフォルトの名無しさん:2006/05/02(火) 03:12:48
>>79
環境だけれども、柔軟で粘土みたいなものだから、いろんなものに擬態します。
アプリだったり、オーサウエアだったり、開発環境だったり。

メッセージングという考え方は、シンプルだけどパワフルだから、いろいろな
ものを記述したり、表現できたりするので、見た目に惑わされないようにしないと。
83デフォルトの名無しさん:2006/05/04(木) 04:34:48
>いったい、子供がカメ?を動かしてみたり、お絵かきしてみたりして、
>何の意味があるのかサッパリ解らないんです。

ある意味、写真にだまされているのかも。写真は多くの情報が欠落しているから、
それを理解するには想像力が必要です。自分がどう感じたか、ということよりも。
逆に様々な情報が欠落しているからこそ、恣意的な主観を働かせることが出来る
余地があるとも言えますが。楽しいメディアですね。
84デフォルトの名無しさん:2006/05/04(木) 12:03:01
実際squeakはとっつきにくい。関連したwebや書籍をみても
「オブジェクトありき」とか「すべてはメッセージ」とか、開発者寄りの話
しか見つからない。
初めて(生)MS-DOSを触ったときを思い出した。途方にくれるカンジ。
85デフォルトの名無しさん:2006/05/04(木) 12:54:37
もっといいOSが欲しいなあ
http://web.archive.org/web/20001219124700/www.secret-dan.com/members/quiosi/back19990415.html

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

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

とか読むと、Unix流ツールボックスアプローチ、Win/Mac/Emacs流キッチンシンクアプローチに対して、
Squeak流アプローチという解はどうよって思う。まだまだ荒削りかもしれないけれども。
86デフォルトの名無しさん:2006/05/04(木) 13:55:42
>>84
Mac や Win の受け身的、限定的なところを心地よく思うようになると、
ユーザー側から攻めてなんぼの暫定ダイナブック環境はやっぱりキツい。
87デフォルトの名無しさん:2006/05/04(木) 15:41:44
これってマイクロカーネル妄想信者が作ったの?
8884:2006/05/04(木) 15:50:17
それでも俺はsqueakを知りたい。きっとこれは素晴らしいものだと感じている。
でも、どうすればいいのか検討もつかない。まるで青春時代の自分探しだ。
くもの糸はどこ?
89デフォルトの名無しさん:2006/05/04(木) 16:15:57
アラン・ケイにメールかMLで直接質問すればイイじゃん。
あ、5/17は66回目のお誕生日です。>アラン・ケイ
90デフォルトの名無しさん:2006/05/04(木) 18:03:32
>>88
知りたいことが分かっていれば、言ってくれれば、なんでも教えてあげますよ。w
もちろん当方の分かる範囲で…ですが。

ときに「自分探し」とは言い得て妙ですね。したいことがはっきりしていないと
ほとんど価値のない環境ですから…。
91デフォルトの名無しさん: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デフォルトの名無しさん:2006/05/05(金) 05:24:30
テキストの一行だけをコピペってたからダメだったんだろうか。
全部で、たった3行だし真面目に入れるか。
"do it"
うんともすんとも言わなくなってしまった。タスクマネージャも
ユーザタブから変更が効かない。止む無くリブート。(Win2k)
もう寝ろ、と言っていたのかも知れない。
93デフォルトの名無しさん:2006/05/05(金) 11:17:05
>>91
TelnetMachine はともかく、Morph がエラーになるのはなにかおかしいですね。
94デフォルトの名無しさん:2006/05/05(金) 11:27:38
>>91
ちなみに TelnetMachine は TelnetMachine open の do it (alt/cmd + d) で
ウインドウが開きます。TelnetMachine class >> #open の定義は、ブラウザの
上段第2ペイン下の class ボタンを押して切り替えることで見ることができます。
95デフォルトの名無しさん:2006/05/05(金) 11:34:19
>>92
とりあえず、3 + 4 とかの print it (alt/cmd + p) は出来ていますか?
96デフォルトの名無しさん:2006/05/05(金) 11:36:17
>>95
あ、win2k なら alt + p ですね。念のため。(cmd は Mac ユーザー向け)
97デフォルトの名無しさん:2006/05/05(金) 16:20:13
>squeakを知りたい。きっとこれは素晴らしいものだと感じている。

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

>smalltalkなんか教えるより
誤解じゃないかな。Smalltalkは教えていないと思います。
98デフォルトの名無しさん:2006/05/05(金) 23:20:45
>>94
> ちなみに TelnetMachine は TelnetMachine open
たしかにopenで成功しました。そこで質問ですが、

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

は なんでしょうか?判る範囲で構いませんのでゼヒ。
ちなみに、Morphにおける「new」というメソッドはMorphでも、そのSuperclassである
ObjectでもさらにそのSuperclassであるProtoObjectでも定義されていないんですが、
なぜ有効なんでしょう。
99デフォルトの名無しさん:2006/05/05(金) 23:23:44
>>95
> とりあえず、3 + 4 とかの print it (alt/cmd + p) は出来ていますか?
7になりますね。
再起動後は問題ないです。「morph2 := Morph new openInWorld. 」も成功します。
コードをいじっているんだから頻繁に停止したり、そのために再起動することに
なるのは別に珍しくないような気もしますが。
100デフォルトの名無しさん:2006/05/05(金) 23:30:33
TelnetMachine open. の do itで作成したオブジェクトにWorkspaceから
メッセージを送る方法はありますか?
表示されたobject(ウィンドウ)のハローを表示してインスペクタでselfを
みるとオブジェクトIDっぽい数字「a SystemWindow(3652)」が現れるんですが、
この数字を介してメッセージの送信は可能でしょうか。
101デフォルトの名無しさん: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デフォルトの名無しさん:2006/05/06(土) 01:26:42
>>100
インスペクタの左側のペインで model をダブルクリックしてください。
新しいインスペクタが現れて、これのインスペクタワークスペース(下のペイン)で
self に束縛した a TelnetMachine にメッセージを投げれます。

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

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

Smalltalk at: #MYTELNET put: model

これで、ワークスペースからでも MYTELNET でアクセスできます。
103デフォルトの名無しさん:2006/05/06(土) 01:31:41
>>102
どうして model に a TelnetMachine が束縛されているのをしっているのか?
という質問がきそうなので先に答えておくと、それは、TelnetMachine class >> #open
の定義をざっと見たからです。
104デフォルトの名無しさん: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 を選択)
10598:2006/05/07(日) 03:55:23
>>101-104
詳しい回答ありがとうございます。

簡単な質問ばかりして迷惑かけてそうなんで、疑問の解決は
しばらく書籍に頼ってみようと思います。ちょうど、手元の本に
メタクラスもメソッドファインダの話も載ってました。
(ゲームを実装する章だったんで飛ばしてた)
106デフォルトの名無しさん:2006/05/08(月) 00:01:08
>>105
まあ、基本かどうかはあまり気にせず、悩んだときにはいつでもどうぞ。
Smalltalkは、コツがつかめるまでは、ささいな事でも人に訊いて解決するのが
一番ですから。
107デフォルトの名無しさん:2006/05/08(月) 22:33:54
SqueakからXにウィンドウを表示させたりできるんですか?
GTKでGUI作っているんですけど,これと同じことってSqueakでもできるのか気になります。

後,シェルスクリプトみたいにコマンドラインツールとしてSqueakを利用できるのですか?
108デフォルトの名無しさん:2006/05/08(月) 22:48:52
>>107
X --> むりぽ(多分...)
コマンドライン --> http://languagegame.org:8888/propella/88
109デフォルトの名無しさん:2006/05/08(月) 23:03:51
>>108
>     コマンドライン --> http://languagegame.org:8888/propella/88

Lisp見たいにソケット経由で式を評価する感じかなこれ。SqueakをOS起動時にデーモンとして動かして,接続毎に環境を作って動かせばシェルスクリプトっぽいもんとして使えそうな気が
110デフォルトの名無しさん:2006/05/08(月) 23:27:23
どちらも GNU Smalltalk を使うと良いナリ。
JIT だから速いし、コマンドラインから使えるし、Tk で GUI 作れるし、クロージャもあるナリよ。

昔ちょっとインスコしただけだから保証は出来ないけどね。
111デフォルトの名無しさん:2006/05/11(木) 21:24:06
>107
wxSqueakがある。
http://www.wxsqueak.org/
112デフォルトの名無しさん:2006/05/11(木) 22:48:36
カッコいい!

使ってみよ


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

とりあえず。。。

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

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

squeakの「何を」知りたいのですか?使い方?教え方?考え方?売り方?
11484 & 88:2006/05/14(日) 01:57:29
>>113
>squeakの「何を」知りたいのですか?使い方?教え方?考え方?売り方?

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

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

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

まあ、趣味なんですが。
115デフォルトの名無しさん: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
それだけいろいろなものに触れてきた人が
自分で道を開けないなんて・・・
まさにローリングストーンだね
117114:2006/05/14(日) 08:51:24
>>116
> それだけいろいろなものに触れてきた人が
> 自分で道を開けないなんて・・・

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

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

生きてるうちに理解できれば良しとしたいところですが、生まれるまでは
苦しいんです。(コンビ芸人の片方の名前を思い出せないくらいの苦しみ)
118114:2006/05/14(日) 08:58:25
>>115
thnx。とっかかりもつかめてないんで なんでもwelcom。
辛気臭くなると叶わんし、低姿勢なのもストレス溜まる。もうROMる。
119デフォルトの名無しさん:2006/05/14(日) 10:53:15
Smalltalkイディオム
http://www.sra.co.jp/people/aoki/SmalltalkIdioms/index.htm

>もうROMる。
せっかくなので、いろいろ書いてください。気軽に。
120デフォルトの名無しさん:2006/05/14(日) 11:01:08
おっと、これも
Happy Squeaking!! -オブジェクト指向再入門-
http://www.ogis-ri.co.jp/otc/hiroba/technical/Squeak/squeak.html
121デフォルトの名無しさん:2006/05/17(水) 22:05:26
シンボルって何につかうんだろう。
122デフォルトの名無しさん:2006/05/17(水) 22:17:02
>>121
事故解決。固定文字列を定義するものらしい。
しかもシステムでユニークだそうだ。適当に書いてもバッティングしないんかしら。
123デフォルトの名無しさん:2006/05/18(木) 15:26:50
>>122
バッティング、即ち同一ですから。
新しいのをつくれば、シンボルテーブルに追加されます。
124デフォルトの名無しさん:2006/05/19(金) 00:00:51
みんなSqueakで何やってんだ?まさかメイン環境にしてるってこたないよな。
125デフォルトの名無しさん:2006/05/19(金) 01:14:36
>>124
しょっちゅう起動はするけれど、あんましたいしたことには使ってないなぁ…。
again が好きなので、短かい文章を書いたり、再構成の必要があるときの
エディタ代わりかな。あと、広い意味での(数値だけじゃなく、数値列や文字列、
画像なんかも対象とする…)ちょっとした電卓代わり。たまに、幾何的な図が
欲しいときにタートルに描かせたりとか。
126デフォルトの名無しさん:2006/05/19(金) 17:21:01
インスコ作業で爆発的な満足感を得る。
その後、次のバージョンが出るまでねっとりとした放置プレイで愉悦。
127age:2006/05/20(土) 01:46:21
設計のパクリのネタ元になるかと思ったけど今イチ使いこなせない...
使えないおいらが悪いのかもしれないけどね

なんつーかね、使いにくい訳よ、VisualStudioなんかと比べたら。
あとMacOSXのInterfaceBuilderみたいなGUIなビルダー(デザイナー?)が欲しい訳よ、おいら
eToyをやればいいのかもしれんがあれは亀動かしたら次がよくわかんねーし
なんか妙にCUI(?)に縛られてて気持ち悪い
128デフォルトの名無しさん:2006/05/20(土) 03:14:22
>>127
俺もまだろくに触れてないんだけど、その比較はちょっと違うと思う。
GUIとかCUIとかじゃなくて、オブジェクトがたまたまグラフィカルに見せることもあるし、
そうでないこともあって、「GUIの部品」みたいな概念はないんだと思う。
他言語のIDEみたいに見てると、不満ばかり持つんじゃないかな。
間違ってたら誰か訂正して。
129デフォルトの名無しさん:2006/05/20(土) 04:15:34
>>127
パクる目的なら、あえて慣れない場所でいつもの何かをどうやって作るか…ではなくて、
そこで新しく触れる手近なものたちがどんなふうに「メッセージング」というパラダイムのみで
実現されているのか…を調べるスタイルに接し方を変えてみたらどうでしょう?

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

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

その前に、キーとなる「メッセージング」というメンタルモデルのほうは大丈夫でしょうか?
130デフォルトの名無しさん:2006/05/20(土) 07:29:41
これダウンロードしてインストールしたけど
そっから先、どうしていいかわかんない
131デフォルトの名無しさん:2006/05/20(土) 09:50:13
>>130
大丈夫、わからんのは俺も一緒。一人じゃない。よかったね。
132デフォルトの名無しさん:2006/05/20(土) 10:47:49
>>130
- ドラッグ&ドロップでプログラミングをする eToys と、
- メッセージングでプログラミングをする Smalltalk 、

どちらに興味がありま万か?

前者なら
1. 画面の下にある「ナビゲータ(Navigator)」タブから、刷毛ボタンでペイントツール起動。
2. 適当な絵を描いて(あまり凝ったものにはしないこと)「ほぞん(Keep)」
3. 絵を、Mac ならコマンド(以下、cmd)キーを、それ以外なら alt を押しながらクリックして選択。
4. 現れるボタン群から左中央の目玉をクリックして、ビューワを起動(画面左側に現れる)。
5. ビューワから [スケッチ][を回す:][5](または、[sketch][turn:][5])をデスクトップにドラッグ&ドロップ。
6. 現れたスクリプトパネルの時計ボタンをクリックしてプログラムを実行…

というようにするととりあえず遊べます。さらに詳しく知りたければ、

http://squeakland.jp/sqsqsqueak/

などを参考にしてみてください。

後者(Smalltalk に興味…)なら、とりあえずは、

1. デスクトップをクリックしてメニューを呼び出し。
1'. もし無反応なら、デスクトップを ctrl クリック →「デスクトップメニュー…(desktop menu...)」
2. 「開く…(open...)」→「ワークスペース(workspase)」を選択。
3. 書き捨てのメモ帳(シンプルなウインドウ)が開くので、そこで 3 + 4 とタイプして入力。
4. 右クリック(Mac では option クリック)でメニューから print it (p) を選択して結果の 7 を確認…

というようにして遊べます。3 + 4 の代わりに 100 factorial などの Smalltalk 式が試せます。
分からないことは、些細なことだと思っても、自力で解決しようとせず、どんどん訊いてください。
133デフォルトの名無しさん:2006/05/23(火) 22:50:34
ウィンドウのデフォルトサイズの変更の仕方を知っているひとはいます?
フォントサイズを大きくしたら、ボタン名がキレイに表示されなくなった。
毎回ウィンドサイズを変更するのがメンドイ。
134デフォルトの名無しさん:2006/05/24(水) 13:40:08
>>133
いささか、その場しのぎ的方法で恐縮ですが、RealEstateAgent class >> #standardWindowExtent の

^ (allowedArea extent - (grid*(maxLevel+1*2) + (grid//2))) min: StandardSize "600@400"].

という行を、

^ 800@600
"(allowedArea extent - (grid*(maxLevel+1*2) + (grid//2))) min: StandardSize" "600@400"].

というように書き換えて accept(alt/cmd + s)してしまえば、指定した好きなサイズに固定できます。
135デフォルトの名無しさん:2006/05/24(水) 22:55:17
長文失礼。書き込みたかっただけ。

コトの発端は、
Smalltalk keysDo: [:each |Transcript cr; show: each].
で、システムに登録されたキーをすべて表示したとき、途中を見たかったが、
量が多いし辞書順に出力されるわけでもないんでバックスクロールが面倒だったこと。

select:とか使えば見たい部分を引っ掛けられるんだが、「なんとなく見たい」場合は見たい部分を
指定できるハズもない。
windwowsなら中間ファイルにリダイレクトしてエディタで開く。unixならパイプでless起動。
squeak的にはどんなアプローチが『普通』なんだろう?

squeakではファイルという存在が見えにくい。ならsqueak的にデータは
どこに格納すべきなんだ。やっぱり生データではなくオブジェクトにする
んだろうか。すべてのオブジェクトは生きている(動いている)というのが
元の設計思想らしいので、これに従うと、例えばsqueakにmovieファイルを
ドラッグアンドドロップすると、そのファイルはオブジェクトに自動変換され、
Squeakの画面にある間はずっと再生しつづける、とかかな。オブジェクト4つくらいで
コマ落ちしそう。プロセッサパワーが無限にあると仮定しても、オブジェクトが50とか
あると1画面に入りきらないような気がする。大量のオブジェクトがあった場合、
必要なオブジェクトを探す方法が必要になるね。
いまのsqueakにそんなものってあったっけ。俺が探せていないだけか。
136デフォルトの名無しさん:2006/05/24(水) 23:10:35
Smalltalk keys または
Smalltalk keys asSortedArray

を inspect するのはダメ?
137135:2006/05/25(木) 00:11:42
>>136

まあ、確かに結果は得られるんですが。
なんというか、やっぱいいです。
138デフォルトの名無しさん:2006/05/25(木) 00:23:56
>>136
インスペクタは途中を省略してしまうので、この局面には向かないかも…。

>>135

| contents |
contents := String streamContents: [:ss |
 Smalltalk keys asSortedArray do: [:each | ss nextPutAll: each; cr]].
Workspace new contents: contents; openLabel: 'Smalltalk keys'

なんていうのではどうでしょう。あるいは、いっそファイルにはき出してしまうとか。

| file |
file := FileStream fileNamed: 'smalltalkkeys.txt'.
Smalltalk keys asSortedArray do: [:each | file nextPutAll: each; cr].
file edit

なお、ここでは、上のワークスペース同様、ファイルリストを使ってあえて出力したファイルを閲覧していますが、
メッセージング・パラダイムに脳が冒されているか、熱烈な暫定ダイナブック環境支持者、はたまた
again 中毒者(^_^;)…でもないならば、すべて Smalltalk 環境で済ませる必要はなさそうです。
作ったファイルはお好みのエディタで閲覧するほうが現実的だと思います。

Squeak を、使い慣れて熟知した環境と比べて、その使い勝手がひどく劣っていると判断したり、
馴染みのツールや機能が無いことを見つけて、使えないシステムだと切って捨ててしまうことは、
とてもたやすいことだと思います。でも、ちょっと見方を変えて、使い慣れた環境には存在し得なかった
面白いツールを発見したり、新しいコンピューティング像を模索してみるというのもまた一興かなと思います。
139デフォルトの名無しさん:2006/05/25(木) 15:59:35
単純に'Smalltalk'をエクスプロアすればOKだと思うけど。
ところで、ショートカットをAlt-?からCtrl-?に変えるには、どうすればいいのでしょうか?
Alt-X、Alt-C、Alt-Vとか使いにくい。そもそもなんで、Ctrl-XじゃなくてAlt-Xなんだろう。
140デフォルトの名無しさん:2006/05/25(木) 16:57:08
>>139
help.../appearance... → preferences... → general → swapControlAndAltKeys → ON

Squeak はもともと Mac 上で開発されていて(つか、ベースに使った Smalltalk が Apple 製…)
cmd-z/x/c/v だった。ctrl には shift+cmd のキーショートカットが割り振られていたので
Win などでは ctrl はそのまま shift + cmd 関係を引き継ぎ、alt が cmd の代わりになった。
あと、Squeak ではほとんどのアルファベットにキーショートカットが割り振られているが、
ctrl だと本来の意味とバッティングしてしまい起動できない場合があるのも無関係ではないかも。
141135:2006/05/29(月) 22:11:34
>>138
どっちも文句ないです。
(前者はSmalltalkの前に全角スペースがあって戸惑った)

> メッセージング・パラダイムに脳が冒されているか、

ぜひ冒して欲しい。
142135:2006/05/29(月) 22:13:24
>>136
否定的な書き込みすまん。
「オブジェクトブラウザ」を提案したつもりだったが食いつきがなかったもんで。
143デフォルトの名無しさん:2006/06/01(木) 13:29:41
> Win などでは ctrl はそのまま shift + cmd 関係を引き継ぎ、alt が cmd の代わりになった。

Win に移植した時点で変更するべきだったのでしょうね。

今からでもデフォルトを swapControlAndAltKeys が ON の状態にしたほうが
良いのではないでしょうか。

>>138 さんのおっしゃるように Smalltalk 環境ですべてを済ませることが現実的
でないなら、もうすこし、OS や他のアプリケーションとの親和性を考慮したほうが
ユーザーにとってはありがたいと思います。
144デフォルトの名無しさん:2006/06/11(日) 10:59:56
binaryファイル->textファイルの変換プログラムを作成したい。

[入力ファイル]
4byte unsigned long bigendian * 25 = 100byte

[出力データ]
25個の数字。(10進)

どーすんだー。(泣)
なんかクラスでもつくるんかー。

せめてサンプルになりそうなヤツのタイトル教えて。なるべくかんたんなヤツ。
http://squeak.qp.land.to/index.php?Squeak%2FSampleCode#content_1_33
145デフォルトの名無しさん:2006/06/11(日) 12:53:24
入力が100バイト=800ビットで
出力が10進数25ケタってことは220ビットくらいか?
どっかで情報が失われてるぞ
入力に制限があるんじゃないの?
146デフォルトの名無しさん:2006/06/11(日) 13:29:05
>>145
>どっかで情報が失われてるぞ
えーと、25個の数字というのは25桁の数字ではないです。
4byteなので1個の数字の最大桁数は10桁かと。
147デフォルトの名無しさん:2006/06/11(日) 13:38:22
実は作成したいんは

バイナリログファイル->テキストログファイル

です。ハイ。
ファイルの先頭48byteはヘッダで、とりあえず無視します。
そのあとから16byteごとのレコードが続いています。で、レコードは
4つの4byteフィールドからなるっていて、フィールドはその数字に
対応する文字列が別途あり、ここを対応付けるスクリプトを書きたい。

でも4byteの数字をつくることさえ、ままならない。(現時点では掛け算で求めてる)

なお、Cでは簡単にかけちゃうんですが、そこはSqueakを使いたい。
クラス、メソッド、メッセージ。オブジェクト指向って何かがわかるかな〜と。
148デフォルトの名無しさん:2006/06/11(日) 15:22:54
>147
Integer class >> byte1:byte2:byte3:byte4:
を見れ。
149デフォルトの名無しさん:2006/06/11(日) 18:42:16
開発するときはsystem browserを直接書き換える以外の方法はないか。
他のクラスを参照するために複数のbrowser立ち上げる必要あって、それぞれの
概観が一緒なのでうざい。あと、一時的に作成する場合に、いったん過去のコードを
削除して作成したものをアクセプトするのがイヤ。(前のコードを忘れそう)
プロジェクト変えてもbrowserの中身は変わってないし。
複数のsqueak立ち上げるのもバカっぽい。
150147:2006/06/11(日) 18:56:50
>>148
動かん。

fileStream := FileStream readOnlyFileNamed:'log.bin'.
fileStream binary.
fileStream position: 48.
b1 := Integer new.
b2 := b1 byte1:(fileStream next) byte2:(fileStream next) byte3:(fileStream next) byte4:(fileStream next).
Transcript cr; show: b2.

えーと、byte1:...はクラスメソッドだからオブジェクトb1は必要ないのか。
151デフォルトの名無しさん:2006/06/11(日) 19:29:46
>>149
ナニ言いたいのかさっぱりわからない。きちんと整理してからしゃべってくれるか。
152デフォルトの名無しさん:2006/06/11(日) 20:30:49
>>150
必要ない。Integer クラスに直接メッセージを送って起動する。>#byte1:byte2:byte3:byte4:

>>149
複数のブラウザを開くのは(タブブラウジングという文化がなかった時代からのなごりなので)
慣れるか、それがどうしても耐えられないなら、自分用にタブブラウザを作るしかないですね。

前のコードはバージョンブラウザで閲覧できます。
ブラウザで versions ボタンを押すか、メソッド名リスト枠で alt/cmd + v で起動できます。
もとのコードに戻すには、バージョンブラウザで過去のコードを選択して revert 。
153デフォルトの名無しさん:2006/06/11(日) 21:05:18
>>152

> >>150
> 必要ない。Integer クラスに直接メッセージを送って起動する。>#byte1:byte2:byte3:byte4:

いけました。ごっちゃんです。

> >>149
> 複数のブラウザを開くのは(タブブラウジングという文化がなかった時代からのなごりなので)
> 慣れるか、それがどうしても耐えられないなら、自分用にタブブラウザを作るしかないですね。

 エディタを使用して作成したりはしないということですね。
そーゆーもんなら、私もそうやって作成することにします。

> 前のコードはバージョンブラウザで閲覧できます。

おおっ、便利。知らんかった。
154デフォルトの名無しさん:2006/06/12(月) 22:22:36
"_"はどうやって入力すればいいのでしょう。否応無く左矢印になってしまって...
155デフォルトの名無しさん:2006/06/12(月) 23:28:38
同じ文字コードです。グリフがそうなっちゃってるのです。
あきらめましょう。
156デフォルトの名無しさん:2006/06/13(火) 01:24:25
>>154
SqueakPlugin-dev で、デフォルトの状態なら、

TextStyle defaultFont fontArray first edit: $_

で、開いたビットエディタで _ を描いて、黄ボタン(通常は右クリック)メニューから accept 。
クローズボックスクリックでウインドウを閉じれば、以降は _ で表示されるよ。
157154:2006/06/13(火) 17:45:29
>>156

詳しく回答していただいてありがとうございます。
でも怖いんであきらめることにしました。
158デフォルトの名無しさん:2006/06/13(火) 20:16:06
>>157
いや。失敗したら、保存しないで再起動すればいいだけなので、是非、チャレンジしてください。
実際、やってみて分からないこと、うまくいかないことは、どんどん訊いてください。
159デフォルトの名無しさん:2006/06/21(水) 15:45:53
>格差社会は、IT 業界も例外ではありません。Java/Eclipse や C#/VisualStudio の生産性の低さには
>居た堪れず、先祖返りを見せられる思いがします。これらの開発環境を見ていると、南極物語と同じ年に
>公開された Smalltalk-80 には遠く及ばず、その格差には愕然とする思いです。本来の統合開発環境は、
>このような際物ではなかったはずです。

>Eclipse/VisualStudio などは統合開発環境〔IDE〕とされていますが、本来の IDE は、このような際物では
>なかったはずです。これらが「あまり早く開発されては困る」とさえ言いたげに見えてしまうのは、
>Smalltalk-80/Interlisp-D など真の IDE を知っているからかもしれません。

>環境などにはさらに進化がみられない。1970年代後半の Smalltalk 環境などは私の今までつかった経験の
>なかで、最も快適で最もクリーンで最も高速で最もスムーズなプログラミング環境なのである。たとえ、
>CodeWarrior が C++ による開発においてそれ相応によくできた製品であったとしても、私がほとんど
>20年前に使っていた Smalltalk システムと、ひいき目に見ても比較の対象にはならないのだ

Eclipse / VisualStudio / CodeWarrior と Smalltalk の開発環境は、何がどうそんなに違うのですか?
160デフォルトの名無しさん:2006/06/22(木) 01:12:11
>>159
REPL が有るか無いかの違い。それだけ。
161デフォルトの名無しさん:2006/06/22(木) 16:00:31
read-eval-print loop のことですか?
162デフォルトの名無しさん:2006/06/23(金) 02:17:58
t
163デフォルトの名無しさん:2006/06/23(金) 07:44:40
edit-compile-test loop しか無い環境とは手軽さが全然違うからね。

後はリフレクション機能が充実していたり、VM やオブジェクトシステムの挙動まで弄れるので、
開発のシームレス度が全然違うんだと思うよ。

環境に関して高度な知識を有する少人数のグループで開発するには最高だと思うけど、
デメリットもはっきりしているので、残念ながら今後も主流にはなり得ないと思うけどね。
164デフォルトの名無しさん:2006/06/23(金) 16:06:21
話が一般的過ぎて、よくわかりません。具体的な例をあげてみてください。
165デフォルトの名無しさん:2006/06/25(日) 17:25:10
マンドクサイから、自分で調べてみて下さい。
166デフォルトの名無しさん:2006/06/28(水) 08:22:41
キーバインドをemacs風にしたい
xkeymacs使って大体間に合ってるけどもっと
167デフォルトの名無しさん:2006/06/28(水) 13:00:34
>>166
ParagraphEditor class >> #initialize から手繰って、#initializeCmdKeyShortcuts
#initializeShiftCmdKeyShortcuts を手始めにいじるというのはどうでしょう。
変えたあと、ParagaraphEditor initialize を do it することをお忘れなく。
ちなみにコマンドキー(command、cmd)とあるのは Mac 時代の名残りなので、
他の環境では alt と読みかえてください。

最終的には ParagraphEditor >> #dispatchOnCharacter:with: まで手を入れれば、
かなりの部分まで思い通りの挙動をさせることが可能でしょう。
ただ、#dispatchOnCharacter:with: は建て増しに次ぐ建て増しで、
えらい読みにくいコードになっているので、挙動の把握がまず難しいかもしれません。

あと、#dispatchOnCharacter:with: をいじるのに失敗すると文字入力ができなくなる
場合もあるので、復活の方法(たとえば、バージョンブラウザの使い方とか)あるいは
強制終了後に、直前前の作業を復活する方法(チェンジログのあさり方とか)をあらかじめ
練習しておきましょう。分からなければ気軽に訊いてください(調べるのはなにかと大変なので…)。
168デフォルトの名無しさん:2006/07/06(木) 22:25:26
   ∧_∧  / ̄ ̄ ̄ ̄ ̄
  ( ´∀`)< 漏れもインスコしたモナー
  (    )  \_____
  | | |
  (__)_)
169デフォルトの名無しさん:2006/07/07(金) 09:38:15
( ´∀`)σ)∀`)
170デフォルトの名無しさん:2006/07/08(土) 21:59:28
linuxにインスコしたんだけど、あっという間に時間が過ぎたよ!






…起動させるのに、、、orz

解決するのにググったり削除インスコ繰り返したり、トータル10時間以上かかった
171デフォルトの名無しさん:2006/07/19(水) 03:48:26
Squeak初心者です。面白そうなのでSmallWikiを導入したのですが、RSSが使えずに困っています。
http://localhost:8080/?action=RSSChangesFeed
としてRSSを指定したのですが駄目でした。
http://www.mars.dti.ne.jp/~umejava/smalltalk/squeak/swiki/smallWiki.html
を見て日本語バージョンをインストールしたのですが、このバージョンはそもそもRSSに対応しているのでしょうか。


172デフォルトの名無しさん:2006/07/19(水) 22:54:26
>171
してないよ
173デフォルトの名無しさん:2006/07/19(水) 23:08:18
>171
ここにあるの使ってみたら?
http://smallwiki.unibe.ch/smallwiki/

VisualWorksなのと、日本語がどこまで通るかはわからないけど
174デフォルトの名無しさん:2006/07/20(木) 02:38:31
折角なのでSqueakで使いたいです。
バックポートできる力があればいいんですが、、、。
(そもそもRSSのアクションがサポートされてるかどうかも、自力でコードをみて調べられなかったしナ)
175デフォルトの名無しさん:2006/07/20(木) 16:23:20
>174
じゃ、素のSqueakイメージ(3.8)にSqueakMapから導入ですね。
最新版入れたらRSSにも対応してんじゃないかと。
いろいろライブラリを入れる必要があるから、それらのうまくバージョンがあわずにはまると思うけど。
176デフォルトの名無しさん:2006/08/31(木) 00:58:55
#スレ違いすまん。

VisualWorks 7.4.1 NCってどうなの?
日経ソフトウエアの付録に付いてくるって話だが・・・
177デフォルトの名無しさん:2006/08/31(木) 10:20:51
あ、そうなんだ。買おうっと。>日経ソ

Smalltalk 関係は、もう、適当なスレがないから、ここでいんじゃない?

どうって、何に比べて?

Squeak? それとも、他の Smalltalk 処理系? VisualWorks の以前のバージョン?
178デフォルトの名無しさん:2006/08/31(木) 17:28:09
Cincomからダウンロードして試してみるという選択肢もある
179デフォルトの名無しさん:2006/08/31(木) 18:33:11
どう?と言われると…

相変わらずOSX VMは腐りまくり。7.5までに改善版を出すと言っているが…
既に陳腐化して久しいGUI部分の救世主(予定)、Pollockの遅れっぷりがヤバい。
ちゅうか。最近は.1系列での機能追加が行われなくなったところに、Cincom
Smalltalkチームの余力の無さを感じる。大丈夫か、おい。
180デフォルトの名無しさん:2006/09/23(土) 16:57:39
VisualWorksって、Winアプリよりも軽いらしい。
Squeakって、Javaアプリよりも軽いらしい。
そうなの?なぜ?
181デフォルトの名無しさん:2006/09/23(土) 17:04:38
>>180
そんなことはないと思うけど…
182デフォルトの名無しさん:2006/09/23(土) 17:24:32
同じVMでも、Javaと比べるとカールルイスと小学生くらいの差があるって。
183デフォルトの名無しさん:2006/09/23(土) 22:12:00
>182
どっちがどっち?
本気でベンチマーク取ったらどうなんだろう?
184デフォルトの名無しさん:2006/09/23(土) 22:36:46
VisualWorksは相当速い。StrongTalkもバカっ速い。
Javaも最近のはアレやこれや突っ込まれて速い。
ここらへんはベンチマークの条件によって前後するだろう。

Squeakは時代に完全に取り残されてるというか、コアの人たちが
速く動かすとか、安定させるとか、そういう現世のことに全然興味を
示さないので、もうどうにもなりようがない。
185デフォルトの名無しさん:2006/10/05(木) 20:44:17
postCopy の使い方が良く分からず混乱しています。

ttp://www.sra.co.jp/people/kondo/business/VW/Basic/2-3/2-3.html
ここの「コピーの作法について」という文章を読みました。

イメージとしては

otherObject := aObject deepCopy.



otherObject := aObject shallowCopy.
object postCopy.

が同じ、という解釈でいいのでしょうか。
186デフォルトの名無しさん:2006/10/05(木) 20:45:19
> otherObject := aObject shallowCopy.
> object postCopy.



> otherObject := aObject shallowCopy.
> otherObject postCopy.

です、すみません。
あと、aObject は anObject ですね…(´・ω・`)
187デフォルトの名無しさん:2006/10/05(木) 21:39:16
>185
全然ちがいますよ。

AがBを持っていて、BがCを持っているような構造のオブジェクトがあったとして、
 A->B->C

deepCopyなら
 A'->B'->C'

shallowCopyなら
 A'->B->C

というイメージ。
188デフォルトの名無しさん:2006/10/05(木) 21:49:20
>185
postCopyはObject>>copy(これはshallowCopy)の中で呼ばれていて、デフォルトではなにもしない。
サブクラスを作っていくうちに、copyだけでは足らなかったり、小細工したくなることがある。
IDをふり直すとか、187でいうBもB'にしたいとかね。
そんな時にサブクラス側でpostCopyをオーバーライドする。copyはいじらない。

Object>>copy、Object>>shallowCopy を見た後に、
shallowCopyをImplementorsサーチ、Sendersサーチで確認して。
189185:2006/10/06(金) 01:06:21
deepCopy
shallowCopy
copy (デフォルトでは shallowCopy を呼びだすだけ)

という 3 つのコピーがあって、copy の挙動を変えたい時に
postCopy を定義する。

使用する側は状況に応じて、必要なコピーを行う。

…ということ?
190デフォルトの名無しさん:2006/10/06(金) 10:49:30
>189
そう。
191デフォルトの名無しさん:2006/10/23(月) 23:07:45
Squeakを勉強したいのですが、お勧めの書籍を1,2冊教えてください。
C/C++は大体わかります。
192デフォルトの名無しさん:2006/10/23(月) 23:32:13
193デフォルトの名無しさん:2006/10/23(月) 23:32:18
>>191
http://www.amazon.co.jp/gp/product/4883732037
http://www.amazon.co.jp/gp/product/4434029479

後者は古いけど、C/C++ とは異なる世界観や概要を知るのに。

Smalltalk じゃなく eToys ならこちら。

http://www.amazon.co.jp/gp/product/4798104809
http://www.amazon.co.jp/gp/product/4872902114
194デフォルトの名無しさん:2006/10/23(月) 23:55:02
195191:2006/10/31(火) 21:57:03
>>192-194
お前らありがとう。とりあえず
「自由自在Squeakプログラミング」
を買った。これからじっくり読んで勉強するよ。
Squeakを実践で使う事はあり得ないと思うが教養のために
196デフォルトの名無しさん:2006/11/08(水) 10:38:10
smalltalkでWindowsアプリケーション(VMを使わず起動)を作れますか?
作れるとしたらお勧めの開発環境は何ですか?
197デフォルトの名無しさん:2006/11/08(水) 18:31:13
Squeak で windows アプリを作ろう。
ttp://d.hatena.ne.jp/propella/20050925/p1
198196:2006/11/10(金) 15:59:32
>>197
ありがとうございます。
なんか、話が変わって申し訳ないんだけど、
SqueakでChessとかのゲームってどうやったらできるの?
インストールしたのは「日本語7」です
199デフォルトの名無しさん:2006/11/10(金) 22:20:48
>198
ワールド-オブジェクト-ゲーム
200デフォルトの名無しさん:2006/11/11(土) 09:18:34
>>198
どうやって作成できるの?という意味なら↓のへんとかで
学んでくのがいいんでないかな

ttp://www.crew.sfc.keio.ac.jp/squeak/
ttp://www.ducati-fan.com/program/index.html

いきなりチェスなんかやるよりオセロあたりから
はじめてみればいいんじゃないかな。
小学6年が四時間でつくったオセロってどういうもんだろ
201デフォルトの名無しさん:2006/11/11(土) 10:30:37
   /⌒ヽ 
  / ´_ゝ`)  ちょっと通りまつよ〜
  |    /    
  | /| |     
  // | |      
 U  .U
202196:2006/11/13(月) 14:23:15
>>199
できました!ありがとうございます。
でも、いきなり2連敗しました。
オラが弱いんだろうけど

>>200
ありがとうございます。
参考にさせていただきます

Squeakで「ウェブブラウザ」があったんで、
起動してみたけど、日本語が化ける。。。
203デフォルトの名無しさん:2006/11/24(金) 14:45:10
ttp://slashdot.jp/developers/article.pl?sid=06/11/24/042234
>オペレーティング・システム研究用のOS、esというのが開発されています。
>概要によりますと、「ソフトウェアコンポーネントによって拡張可能なオペレーティングシステムを開発しています。
>すべてのシステムコールがC++言語の抽象クラス(インターフェイス)の純粋仮想関数呼び出しとして実現されています。

ttp://nes.sourceforge.jp/
>手引き
>esオペレーティングシステムのビルド方法
>開発ツールのビルド方法
>>Squeakのビルド
>>現在、配布しているパッケージでは、カーネルが起動するとそのままSqueakを実行するように構成されています。
>>実際にesオペレーティングシステムを実行する前にSqueakのビルド方法を参考にしながら、Squeakをビルドします。

なんかしてるの?>>どこかの中の人
204デフォルトの名無しさん:2006/11/25(土) 01:20:45
205デフォルトの名無しさん:2006/11/25(土) 12:10:31
100ドルPCにSqueakプレインストールされてるんですな。
ttp://wiki.laptop.org/go/Software_components#Applications_on_B1
206デフォルトの名無しさん:2006/12/26(火) 20:44:49
ここはいじりはじめた初心者の質問なども書き込んでおkですか。
モーフに特化した本やサイトってないですよね。
207デフォルトの名無しさん:2006/12/28(木) 11:59:40
>>206
残念ながら「モーフ」はいろいろな(多くは的確でない)意味で使われてしまいがちな用語です。
可能なら、いまいちど「モーフ」という言葉は使わずに知りたいこと、実現したいことを表現してくれると
当方も察しが付きやすく、あなたが期待する情報を提供できる可能性が高まると思います。
208デフォルトの名無しさん:2007/01/07(日) 15:26:39
別にいいんじゃあない、「モーフ」って言って。squeakの
面白く感じるのは、言語もそうだけど、その「モーフ」の
部分であることも事実だし。
209デフォルトの名無しさん:2007/01/09(火) 03:17:19
今晩寒いからモーフ欲しい...

Morph のチュートリアルも欲しい。Gtk+ のチュートリアルみたいな。
210デフォルトの名無しさん:2007/02/06(火) 07:48:56
Squeakの起動を早くする方法ってないですか
できればVisualWorks並に
211デフォルトの名無しさん:2007/02/06(火) 11:35:53
頑張って腐っている実装を書き直す。
VMもSmalltalk部分も。
212デフォルトの名無しさん:2007/03/21(水) 11:00:32
今更な話題かもしれないけど、Flash ベースの Smalltalk ワラタ。
普通はやろうとしないことをさらっと実装しちゃう根性が凄い。
213デフォルトの名無しさん:2007/03/22(木) 09:39:21
>>212
知らなかった!教えて教えて!
214デフォルトの名無しさん:2007/03/22(木) 13:47:01
212じゃないけど、Vista Smalltalk for Flash 9.0のことかな?
http://vistascript.net/vistascript/docuwiki/doku.php?id=home
215デフォルトの名無しさん:2007/03/22(木) 23:57:28
そう、それ!
216デフォルトの名無しさん:2007/03/23(金) 00:02:34
教えてくれてありがとう。面白いね、これ。
217デフォルトの名無しさん:2007/04/14(土) 13:46:14
去年くらいに Strongtalk がオープンソースで公開されたけど、誰か試した人居ますか?
Linux のパッチが出てたんで弄ってみようかなと思ってるんだけど、どんなもんかな。
218デフォルトの名無しさん:2007/05/16(水) 21:41:53
foncあげ
219デフォルトの名無しさん:2007/05/16(水) 22:20:52
fonc って何?
ググったら Fundamentals of New Computing って出て来たけど、
↓これ何か関係ある?

ttp://www.piumarta.com/pepsi/pepsi.html
220デフォルトの名無しさん:2007/05/24(木) 21:41:12
Squeakって未だにJITコンパイラがないんですか??
221デフォルトの名無しさん:2007/05/24(木) 22:44:13
やっぱし、移植の妨げになるんじゃ?
222デフォルトの名無しさん:2007/05/24(木) 23:02:57
>>220
クロージャも無いしネイティブスレッドにも対応していないよ。
未だにっていうか、今後もずっと無いままでしょう。というか対応したら奇跡。
最初からそう言う方針でプロジェクトが動いてるから、それで良いんじゃないの。
223デフォルトの名無しさん:2007/05/31(木) 14:22:32
ttp://d.hatena.ne.jp/umeaji/20061027#p2
ここもそうだけど、Smalltalkって、なんで人気ないのだろう。
人の気配がない。やっぱり、人間力が問題?
224デフォルトの名無しさん:2007/06/02(土) 12:02:30
>>223 その記事のネタ下ってどこ?
225デフォルトの名無しさん:2007/06/02(土) 12:53:01
226デフォルトの名無しさん:2007/06/02(土) 15:33:21
>>223
その人は単に誰かに文句言いたいだけに見えるけど。
流行るとか流行らないとかを気にするのは、自分でコードが書けない人の発想だと思うね。
自分でまとまった量のソースコードを書けるようになれば、世間で流行っているかどうかなんて
関係無くなるよ。
227デフォルトの名無しさん:2007/06/02(土) 15:39:21
Smalltalker でなさそうな人の記事を元に Smtalltalk を叩かれてもなぁ。
知らんがな、としか言えない。
228デフォルトの名無しさん:2007/06/05(火) 19:22:59
Rubyについて
229デフォルトの名無しさん:2007/06/05(火) 21:54:13
Sapphireについて
230デフォルトの名無しさん:2007/06/05(火) 22:10:08
Berylについて・・って、すれちがいだっつの
231デフォルトの名無しさん:2007/06/05(火) 22:11:23
Sapphire つう言語があるのかと期待しちゃったよ…
232デフォルトの名無しさん:2007/06/06(水) 17:02:59
チャンプル見るの忘れてた(><)
ところで、Squeakでlispしたい!
233デフォルトの名無しさん:2007/06/06(水) 20:05:02
234デフォルトの名無しさん:2007/06/07(木) 18:11:00
'LispInterpreter open'を do it したら、
「MessageNotUnderstood: UndefinedObject>>scheduleActive:」とエラーが出た。調べたら
StandardSystemController>>open で ScheduledControllers scheduleActive: self の
ScheduledControllers が nil になってた。? (Squeak3.9 #7067)
235デフォルトの名無しさん:2007/06/07(木) 22:09:05
>>229-231
Diamondは無いんだっけ。
236デフォルトの名無しさん:2007/06/07(木) 23:33:57
>>234
つ desktop menu -> open... -> mvc project -> enter
237デフォルトの名無しさん:2007/06/08(金) 19:08:28
mvc project -> BrowserやTranscriptで右クリック -> フリーズ? -> お手上げ
238デフォルトの名無しさん:2007/06/08(金) 20:10:17
べつにしないけど? >フリーズ
239デフォルトの名無しさん:2007/06/08(金) 21:10:06
使っているのは3.9ですかね。
ハングするのはノーティファイアが出たときで、
http://bugs.squeak.org/view.php?id=1807
なんでノーティファイアが出るかといえば、MVC用のメニューがないからです。
http://bugs.squeak.org/view.php?id=5320
MVCは死に体だから本来はLISPの方をMorphic対応すべきでしょうね。
240デフォルトの名無しさん:2007/06/10(日) 12:20:44
Ruby では、整数はそのサイズに応じて、Fixnum または Bignum クラスのインスタンスとして扱われ、自動的に変換されます。
(この機能は Smalltalk にもありますが、包括的で強力であるという点では Ruby の方が優れています。)
http://www-06.ibm.com/jp/developerworks/linux/ruby.pdf
241デフォルトの名無しさん:2007/06/10(日) 12:32:18
>>240
242デフォルトの名無しさん:2007/06/10(日) 18:38:54
Rubyの作者がSmalltalkっていうときはごく初期のLittle Smalltalkのこと。
243デフォルトの名無しさん:2007/06/10(日) 19:53:23
>>242
Little Smalltalk のほうがSmalltalkより後じゃないっけ?
244デフォルトの名無しさん:2007/06/10(日) 19:58:31
>>243
それであってるし、>>242 もそのつもりで書いてると思うけど。
要は Little Smalltalk しか知らないのに Smalltalk 全体を語ってると
言いたいんでしょう。Matz がどれだけ Smalltalk を知ってるかは
知らんし、興味も無いけど。
245デフォルトの名無しさん:2007/06/10(日) 20:06:43
たぶん「極初期のLittleSmalltalk」っていいたかったただのアンチrubyじゃないかな。
>>242がいうような勘違いするほどウッカリな言語ヲタじゃないと思うけど。

ttp://www.rubyist.net/~matz/20070526.html#p05
246デフォルトの名無しさん:2007/06/10(日) 20:12:13
>>245
余計なリンク貼るなや。トラブルの種は沢山だ。
247デフォルトの名無しさん:2007/06/10(日) 20:52:55
空気読まずに質問でスマン。

とりあえず倅にToysで絵を書いたりタイルスクリプトであそばせて
みたりしてるんだけど、たとえばクルマの絵を書いて適当に動かして
衝突するとか出来ずに悩んでます。
こういうのはもうSmalltalkで書かないといけないのでしょうが、どこにどう
プログラムを書き始めるのかがサッパリわかりません;_;)

あともうちょっと便利なペイントはないのでしょうか?
248デフォルトの名無しさん:2007/06/10(日) 21:18:21
>>244
君のような馬鹿は見たことない!
249デフォルトの名無しさん:2007/06/10(日) 21:25:59
>>248
つ 鏡
250デフォルトの名無しさん:2007/06/10(日) 22:04:51
>247
Smalltalkを使うまでもなく、どれでも良いので、本かWebの
チュートリアルを読めば、Etoysで車をぶつけて遊べないはず
はないと思うのですが。
ペイントツールは好きなのを使って、描いた絵のファイルを
ドロップしてください。
251デフォルトの名無しさん:2007/06/10(日) 22:19:21
>>247
ペイントツールで描いた兄弟の場合、
プリファレンスの eToyFriendly がオフになっていれば、
「テスト」カテゴリの「〜モーフの兄弟は触れているか〜」というのが使えます。
252デフォルトの名無しさん:2007/06/10(日) 23:32:55
>251
まずはそこまでしなくても、「その色に触れているか」でいけると
思います(同じ色でも自分の色には反応しないし)。
253デフォルトの名無しさん:2007/06/11(月) 06:30:52
>>250
外から持ち込む事できたんだ…
目から鱗
254デフォルトの名無しさん:2007/06/11(月) 19:21:28
Smalltalkのプログラム作成の宿題ですが、興味のある方よろしくお願いします。

15人の女生徒がいる。彼女たちはお散歩仲間で、毎日3人ずつ5組に分かれて散歩をしている。
1週間で、各人が他のすべての14人と1回ずついっしょに散歩をするようにしたい。1週間分の
組み合わせをどのようにすればよいだろうか。
255デフォルトの名無しさん:2007/06/11(月) 19:24:08
Smalltalkのプログラム作成の問題に見えない
256デフォルトの名無しさん:2007/06/11(月) 20:26:51
>>254
数学のブロックデザイン
257デフォルトの名無しさん:2007/06/12(火) 07:31:44
てか、俺も散歩にまぜてくれ>>254
258デフォルトの名無しさん:2007/06/12(火) 19:39:58
女生徒クラスを作って、ダブらないようにそれぞれに記憶を持たせて、
彼女たち自身に散歩相手を選ばせるってのがSmalltalkっぽい発想なのかなぁ
259デフォルトの名無しさん:2007/06/12(火) 22:17:54
>>257
女性徒が居なくなるから例外で落ちるんじゃね?
260デフォルトの名無しさん:2007/06/14(木) 11:56:19
>>260
つ 鏡
261デフォルトの名無しさん:2007/06/15(金) 06:06:12
合わせ鏡にして、その鏡は光を減衰させないとしたら、光を保存出来るのかね。
262デフォルトの名無しさん:2007/06/15(金) 06:11:47
新聞読んでなさそうだな。
263デフォルトの名無しさん:2007/06/15(金) 14:23:30
>261
つ バビロニア・ウェーブ
264デフォルトの名無しさん:2007/06/15(金) 14:49:58
合わせ鏡 空中に映像…情報通信研が公開(2007年6月15日 読売新聞)
http://osaka.yomiuri.co.jp/eco_news/20070615ke05.htm
265デフォルトの名無しさん:2007/06/15(金) 23:07:43
>>261
(波としての)光は(定常波として)保存できるでしょ。
レーザー発振器とか。
つまりオマエの言うとおりの合わせ鏡なんだけど。
266デフォルトの名無しさん:2007/06/16(土) 01:25:17
>>261 と同じことを言ってるだけなのにおまえ呼ばわりw
267265:2007/06/16(土) 08:03:54
ありり?俺、別に煽ってんじゃないよ。「激しく同意」を冗長に書いただけ。
オマエってのは、2ch風味ってことで許してくれ。
268デフォルトの名無しさん:2007/06/16(土) 11:48:17
Smalltalkを使いすぎると↑のように日本語が若干不自由になります
269デフォルトの名無しさん:2007/06/16(土) 13:37:21
もっとメッセージパッシング風に喋ってくれ
270デフォルトの名無しさん:2007/06/16(土) 16:46:00
煽り合ってる関係者全員顔見知りな可能性が高い罠
271デフォルトの名無しさん:2007/06/16(土) 19:12:32
それがSmalltalkコミュニティ
272デフォルトの名無しさん:2007/06/16(土) 19:47:22
↓でも、結構叩かれているorz
http://feeds.feedburner.com/~r/obie/~3/32343547/obie
273デフォルトの名無しさん:2007/06/17(日) 13:08:57
Smalltalkerに上から目線な香具師が多いのは反省すべきだな
274デフォルトの名無しさん:2007/06/17(日) 13:31:59
>>273 が上から目線なのがワラタ

単に価値判断基準が違うだけだと思うけどね。
多様な価値基準がある世界に慣れていない人は戸惑うのかもしれないね。
275デフォルトの名無しさん:2007/06/17(日) 14:06:44
276デフォルトの名無しさん:2007/06/17(日) 17:18:47
単に助動詞の「べし」を使っただけで上から目線ということにする>>274
文語文法の習熟が足りていないので反省すべし
277デフォルトの名無しさん:2007/06/17(日) 17:33:40
>>276
勝手に上から目線で決めつけんな
278デフォルトの名無しさん:2007/06/17(日) 18:24:04
>>274
> 多様な価値基準がある世界に慣れていない人は戸惑うのかもしれないね。

そう思っているのなら重症。
実際には古株の価値判断を金科玉条とおしいただいている集団。
279デフォルトの名無しさん:2007/06/17(日) 19:40:17
無闇に敵対視してそこまでボロクソに言えてしまうのも、かなりの重症だと思うよ。
よくみんな Smalltalk コミュニティって言うけど、具体的には何を指してるんだろうね。
俺も参加してみたいものだ...
280デフォルトの名無しさん:2007/06/18(月) 22:34:38
多様な価値基準と言えるほど頭数ない罠
281デフォルトの名無しさん:2007/06/18(月) 22:46:04
るびちゅーが騒ぐずっと前からSmalltalkerへの批判はあった。
しかしSmalltalkコミュニティが反省の動きを見せたことはない。
古株うんぬんは別にして、健全な批判精神が足りないという面はあると思う。
282デフォルトの名無しさん:2007/06/18(月) 22:54:06
だから Smalltalk コミュニティって具体的に何だよ?
妄想上の団体が何で反省するのだ?
283デフォルトの名無しさん:2007/06/18(月) 23:08:18
見えない敵と闘ってる方がいるスレはここですか?
284デフォルトの名無しさん:2007/06/18(月) 23:51:17
古株ってもしかしてアランケイのこと言ってるの?
上から目線の奴が、真剣に小学生の相手したり、
Squeakみたいなお子ちゃま志向の言語を開発したりするもんかね?
285デフォルトの名無しさん:2007/06/19(火) 00:25:10
アラン・ケイがコミュニティに戻ってきたのはつい最近だから、
きっと、アデル・ゴールドバーグのことだよ。最近は丸くなったらしいけど。
286デフォルトの名無しさん:2007/06/19(火) 07:12:18
みごとな上から目線w
287デフォルトの名無しさん:2007/06/19(火) 09:18:46
妄想は加速する
288デフォルトの名無しさん:2007/06/19(火) 16:21:32
古株の価値判断って、ファイル・システムに対するオブジェクト・システムのこと?
もはや30年も経った骨董品だから、いい加減Smalltalkはオブジェクト・システムから
脱するべきやな。怠慢もいいところ。
289デフォルトの名無しさん:2007/06/19(火) 19:37:20
>>288
で、オブジェクトシステムっていう価値基準は多様なの?www
290デフォルトの名無しさん:2007/06/19(火) 23:58:45
>>289
オブジェクトシステムが価値基準であるってどういう状態だ?
夢でも見てるのか?
291デフォルトの名無しさん:2007/06/20(水) 01:13:14
ファイルベースか、イメージベースかって言いたかったんじゃ?
292デフォルトの名無しさん:2007/06/20(水) 01:17:31
どっちにせよあんまり本質的な部分じゃない感じはするけど
293デフォルトの名無しさん:2007/06/20(水) 03:36:12
でも Seaside 厨が Rails につっかかるときにしばしば持ち出す。
294デフォルトの名無しさん:2007/06/20(水) 07:01:50
>>290
それは>>288に言ってあげなさいよ
295デフォルトの名無しさん:2007/06/20(水) 10:19:33
>>288 はそんな事言ってないだろ。
>>288 の言いたい事は理解出来なくもないが、>>289 は完全に意味不明。
296デフォルトの名無しさん:2007/06/20(水) 12:23:47
>>289 ダメな文章に共通する3つの問題点に注意
http://business.nikkeibp.co.jp/article/skillup/20070424/123548/
297デフォルトの名無しさん:2007/06/20(水) 19:42:42
まとめると、

>>274 多様な価値基準がある世界に慣れていない人は戸惑うのかもしれないね。
>>278 実際には古株の価値判断を金科玉条とおしいただいている集団。
>>288 古株の価値判断って、ファイル・システムに対するオブジェクト・システムのこと?
>>289 で、オブジェクトシステムっていう価値基準は多様なの?www

これっぽっちの参照関係も把握できないのがSmallTalk厨ぎゃは
298デフォルトの名無しさん:2007/06/20(水) 20:18:14
>>297
見事に支離滅裂じゃないか。もっと頑張れよ。
次の書き込みに期待してるぞ。
299デフォルトの名無しさん:2007/06/21(木) 08:49:09
自身の支離滅裂さを省みない集団なんだねSmallTalkerって
300デフォルトの名無しさん:2007/06/21(木) 08:58:51
>>297
>288で、オブジェクト・システムさえ金科玉条とせず否定してみせているようだけど。
301デフォルトの名無しさん:2007/06/21(木) 11:31:19
>>299
おいおい、もう少し面白い書き込みを期待してたんだがなあ。
そんなレスじゃダメだろ。まさか、T を大文字にして工夫したつもりじゃないだろうな。
302デフォルトの名無しさん:2007/06/21(木) 17:07:54
「ファイル・システム」「オブジェクト・システム」というよりも、
「ファイル指向(システム)」「オブジェクト指向(システム)」かな。
ファイル指向では何でもファイルで表現しようとする。
オブジェクト指向では何でもオブジェクトで表現しようとする。
ブラウン管・液晶・プラズマ・リアプロジェクション・有機EL・SEDと
テレビには色々な方式があるように、Smalltalkにも色々な方式があると
面白いかなと。
303デフォルトの名無しさん:2007/06/21(木) 19:03:51
それなんてRuby?
304デフォルトの名無しさん:2007/06/21(木) 19:34:46
>>302
Smalltalk-80だけが正しいオブジェクトシステムです。
305デフォルトの名無しさん:2007/06/21(木) 22:16:19
SmallTimpo
BigManko
Strongせく〜す
306デフォルトの名無しさん:2007/06/21(木) 22:45:03
>>305
うむ。やっと本来の姿を取り戻したな。よく頑張った。
もう悪さするんじゃないぞ。
307デフォルトの名無しさん:2007/06/22(金) 07:46:29
>>288の皮肉さえ直視できない>>300がいるスレはここですね。
308デフォルトの名無しさん:2007/06/22(金) 09:26:45
>>306
猿に餌を与えすぎ
309デフォルトの名無しさん:2007/06/22(金) 17:14:51
つ 座布団
310288:2007/06/22(金) 19:07:02
297の×なところ。
その1、ここは2chで何の脈略なく自由に書ける場ですよ。274-278の流れに
乗ったつもりはないし、274に同意した覚えもないし、274に興味もない。
その2、私はSmalltalkerではありません。
311デフォルトの名無しさん:2007/06/22(金) 20:49:41
>>310のマヌケなところ。
自分は何の脈略もなく自由に書ける場といいながら
相手には支離滅裂というところ。

このダブルスタンダードがSmalltalkerクオリティぷ
312デフォルトの名無しさん:2007/06/22(金) 21:26:23
いまだにst80から進歩していないのに
Little Smalltalkしか知らないと非難する

こんなダブルスタンダードもSmallTalkerクオリティ
だからマトモな奴からrubyに流れていくんだYO!
313デフォルトの名無しさん:2007/06/22(金) 22:01:30
>>311
支離滅裂って書いたのは俺(別人)だが、相変わらずつまらん書き込みしてるなあ、おい。
314デフォルトの名無しさん:2007/06/22(金) 22:28:50
もう飽きた。次の芸やれ。
315デフォルトの名無しさん:2007/06/23(土) 07:31:41
>>313
> 相変わらずつまらん書き込みしてるなあ、おい。

自己紹介オツ
316デフォルトの名無しさん:2007/06/23(土) 07:39:56
>>310
興味ないならレスしなきゃいいのにwwww
317デフォルトの名無しさん:2007/06/23(土) 10:19:57
つか、一連のやりとりの中にSmalltalk使いはひとりでもいるのか?
318デフォルトの名無しさん:2007/06/23(土) 11:05:26
>>305は元Smalltalkerっぽくね?
319デフォルトの名無しさん:2007/06/23(土) 17:27:53
今、>>270が良い事を言った!
320デフォルトの名無しさん:2007/06/23(土) 18:45:35
るび猿wwww
321デフォルトの名無しさん:2007/06/23(土) 20:42:53
つか、一連のやりとりの中にruby使いはひとりでもいるのか?
322デフォルトの名無しさん:2007/06/23(土) 23:08:17
しつこさを見る感じSmalltalkerはいなくてもStalkerはひとりくらいいるな。
323デフォルトの名無しさん:2007/06/25(月) 00:42:01
まあSmalltalkerはStalker並みに歪んでるからな
324デフォルトの名無しさん:2007/06/25(月) 09:43:59
 
Smalltalk garbageCollect
 
325デフォルトの名無しさん:2007/06/25(月) 20:40:24
むしろ Stalk garbageCollect
326デフォルトの名無しさん:2007/06/25(月) 20:44:45
なんで、おまえらRuby使わんの?
327デフォルトの名無しさん:2007/06/25(月) 21:30:39
スレちがいだからじゃね?
328デフォルトの名無しさん:2007/06/25(月) 22:35:19
Smalltalkもrubyも使いますが何か?
329デフォルトの名無しさん:2007/06/26(火) 20:56:13
>>324
Smalltalk become: nil
330デフォルトの名無しさん:2007/06/27(水) 15:37:32
Smalltalker become: lisper
331デフォルトの名無しさん:2007/06/27(水) 17:11:29
むしろ STalker become: rubyist
332デフォルトの名無しさん:2007/07/01(日) 06:59:59
20年以上も実用にならなかったSmallTalkにすがるようにまとわりつく
まさにStalker
333デフォルトの名無しさん:2007/07/01(日) 08:48:46
Alan>Smalltalk-76はRubyに似てる
Matz>実際、私は20年近く遅れてSmalltalkの真似をしてきた
334デフォルトの名無しさん:2007/07/01(日) 09:07:22
30年前のシステムをありがたがって外の世界を見ないStalker
30年前の理念を現在の流儀に応用するrubyist
335デフォルトの名無しさん:2007/07/01(日) 10:19:27
SmallTalkerの宗教じみた狂信ぶりには長年辟易としていたところだが、
昨今のRubyコミュニティのそれの前にはかわいいもんだな。恐怖すら感じる。
さすがモルモンの布教活動の一環だけのことはある。気合いの入り方がちがう。
336デフォルトの名無しさん:2007/07/01(日) 12:07:11
漏れはpythonistaだけど、rubyistって何も発明しようとしないんだよね。
銅を鉄に置き換えてるだけでw
337デフォルトの名無しさん:2007/07/01(日) 14:01:22
pythonが発明したものって、ヘビのアイコン以外に何がある?
338デフォルトの名無しさん:2007/07/01(日) 14:05:36
rubyはモルモン
SmallTalkはヒッピー
共通しているのはどっちも末端は
自分は幸福だと信じようとしている
339デフォルトの名無しさん:2007/07/01(日) 15:00:57
>>336
Rubyは成り立ちからしてそうだから。ひたすら先達の成果の消費者に徹している。
340デフォルトの名無しさん:2007/07/01(日) 15:25:44
はいはい、Lisp/Schemeの成果の消費者のSmalltalkerが通りますよ〜
341デフォルトの名無しさん:2007/07/01(日) 16:48:08
銅を鉄に置きかえて強い武器をつくるrubyist
銅を石器に置きかえて自己満足するpythonista
銅のサビを見てうっとりしてるSmalltalker
342デフォルトの名無しさん:2007/07/01(日) 17:10:37
これで上手い事を言っているつもりなんだろうか…
343デフォルトの名無しさん:2007/07/01(日) 17:53:40
>Ruby使ってる奴は変な奴が多いと思う
344デフォルトの名無しさん:2007/07/01(日) 18:05:40
つーか図星じゃん
345デフォルトの名無しさん:2007/07/01(日) 18:25:50
強い武器(苦笑)
346デフォルトの名無しさん:2007/07/01(日) 22:12:07
smalltalkよりも世の中の役に立っていることは認めざるを得ない
347デフォルトの名無しさん:2007/07/01(日) 22:56:21
るび厨とモルモンはほんとうざいね。布教するのは勝手だが他でやってくれないか?
348デフォルトの名無しさん:2007/07/02(月) 08:05:32
smalltalkerって20年以上の間
技術論争を宗教論争にすり替えてきたよね。
349デフォルトの名無しさん:2007/07/02(月) 10:31:46
SmallTalkに技術なんかない。あるのは精神論のみ。
350デフォルトの名無しさん:2007/07/02(月) 12:01:57
紳士協定とかパターンとかのね。
351デフォルトの名無しさん:2007/07/02(月) 21:11:23
スモールトークのMLの過去ログを読んだ。
誰が長老の一番のイエスマンか競争していた。
微笑ましいねぇ〜。
スクイークのMLのほうがずっと健全だね。
スクイークの中の人、スモールトークに汚れないでね。
352デフォルトの名無しさん:2007/07/02(月) 23:54:11
SML?
長老って管理人さんのこと?
353デフォルトの名無しさん:2007/07/06(金) 09:32:45
紳士協定違反の話題で見事に潮が引いたなwww
354デフォルトの名無しさん:2007/07/11(水) 21:45:37
激過疎
一匹のルビ厨に支えられているスレ
355デフォルトの名無しさん:2007/07/12(木) 01:58:50
まあ、せっかく保守してくれてるんだから有難い事じゃないか
356デフォルトの名無しさん:2007/07/19(木) 21:30:44
保守する価値あんのか、この超過疎スレは。
357デフォルトの名無しさん:2007/07/22(日) 06:55:00
ttp://www.doujingame.com/

もえすく 〜萌えるSqueak〜

ワロスww
358デフォルトの名無しさん:2007/07/22(日) 22:21:36
SmalltalkはいいシステムだがSmalltalkerにはゆすりたかり成果泥棒など人間性が腐ってる香具師が多い
359デフォルトの名無しさん:2007/07/23(月) 20:34:49
とか言う奴でSmalltalkをまともに読み書きできる輩を見たことがない。
360デフォルトの名無しさん:2007/07/24(火) 08:57:37
>>359の言う通りだが、
もし>>358
XX年Smalltalk書いてます、とか、
XX件Smalltalkの案件やりました、とか、
XX万Smalltalk書きました、とか書いてしまうと
結構な確率で個人が特定されてしまう罠。
361デフォルトの名無しさん:2007/07/30(月) 20:18:38
真性の過疎だな。
本物のSmallTalkerは30年も過疎ってるのだから
このスレの住民もがんがれ。
362デフォルトの名無しさん:2007/07/31(火) 00:36:28
保守するだけで良いよ
363デフォルトの名無しさん:2007/07/31(火) 19:56:28
スモールトークで彼女ができるって本当?
364デフォルトの名無しさん:2007/08/01(水) 23:42:12
マジレスだがそれはないな。
365デフォルトの名無しさん:2007/08/01(水) 23:52:40
>>364
合コンでのスモールトークは重要だろ、童貞君。
366デフォルトの名無しさん:2007/08/02(木) 00:08:32
スモールトークの人って、針小棒大自画自賛な人が多いって本当?
367デフォルトの名無しさん:2007/08/02(木) 00:12:08
そんなことはないと思うよ。
ただ27年シコってるだけ。
368デフォルトの名無しさん:2007/08/02(木) 00:13:51
そこでDirtytalk使いの俺がきましたよ。












パンティ
369デフォルトの名無しさん:2007/08/02(木) 20:35:15
俺はセクーストーカーだ。
370デフォルトの名無しさん:2007/08/02(木) 21:33:30
合コンで小言は嫌われると思う
371デフォルトの名無しさん:2007/08/02(木) 21:52:50
それで小言が多いわけか
372デフォルトの名無しさん:2007/08/03(金) 22:17:34
小言ってSmalltalkの訳語のつもり?
それを言うなら我田引水だろが
373デフォルトの名無しさん:2007/08/03(金) 23:01:45
昔bit誌に悪魔の辞典というのがあってだね(以下略)
374デフォルトの名無しさん:2007/08/03(金) 23:20:57
歴史を紐解いても、詰まらない物は詰まらないもんだな。
375デフォルトの名無しさん:2007/08/04(土) 02:44:40
すべらないSmalltalk

誰か書いてちょ
376デフォルトの名無しさん:2007/08/04(土) 09:55:53
歩、王取らん
恣意
こぼる
小言

ALGOL と PL/I は思い出せない
377デフォルトの名無しさん:2007/08/14(火) 19:22:41
時間が止まった
378ホシュ:2007/08/26(日) 22:18:15
ホシュ
379デフォルトの名無しさん:2007/08/28(火) 21:35:59
↓これ試してみた人居る? なかなか良い感じっぽい。

http://code.google.com/p/syx/
380デフォルトの名無しさん:2007/08/29(水) 14:14:28
>>379
これは GNU Smalltalk と何が違うの?
そういった開発動機みたいなものを書いたのがあったら教えてください。
381デフォルトの名無しさん:2007/08/29(水) 16:17:20
>>379
サラッと見た感じでは、GPL/LGPL じゃなくリベラルな MIT ライセンスを採用している、
JIT が無い、コードサイズが小さくアプリ組み込み言語としても使える、モバイル端末にも
対応している、辺りが違うかな。あとは歴史の長さが全然違うから、成熟度もまだまだ
なんじゃないかな。

開発動機は書いてなかったけど、普通のプログラマなら自分の言語処理系を作ってみたい
ものだよね。
382デフォルトの名無しさん:2007/08/29(水) 19:01:26
>>381
どうせ作るのなら、もっと展望があるものを作ったほうが、、、
かく言う俺もSmalltalkの俺処理系書いたことあるけど。
383デフォルトの名無しさん:2007/08/29(水) 19:58:38
>>381
ありがとうございます。ライセンスを含め、組み込み向き…って感じですかね。
ちょっと見た感じ、GNU Smalltalk レベルへの到達すら
そうとう時間がかかりそうな雰囲気ですが、“追いつき追い越せ”で、
がんばって欲しいものです。
384デフォルトの名無しさん:2007/08/29(水) 20:02:49
>>382
恥ずかしながら私も「なにも今さら GNU Smalltalk もどきを作らないでも…」とちらと
思ってしまったクチなのですが、“展望”というとどんなものがあるでしょうかね?
385デフォルトの名無しさん:2007/11/03(土) 11:15:52
squeakはじめたばかりなのですが、クラスブラウザでよくわからないことがあります。
どなたか教えてください。

継承されているメソッドを選択すると、inheritance ボタンの色が変わるんですけど、
ピンクっぽいときと緑っぽいときがあります。
たとえばPopUpMenuクラスのlabels:lines:だと緑っぽいし、confirm:だと
ピンクっぽいのですが、この違いは何を表しているのでしょうか?

よろしくお願いします。
386デフォルトの名無しさん:2007/11/03(土) 12:03:13
>>385
ブラウズ中のメソッドが、サブクラスで再定義されているか and/or
スーパークラスで定義されているものの再定義かを示しているだと思います。

あとでソースの該当部分を探して調べてみます。
387デフォルトの名無しさん:2007/11/03(土) 12:12:28
>>385
親クラスのメソッドに処理を付け足しているか(superを呼んでる)、
丸々上書きしちゃってるかの違い、じゃないかな?
388デフォルトの名無しさん:2007/11/03(土) 14:39:18
>>385
ボタンの上でぼーとしていると説明でるよ。

browse method inheritance
green: sends to super
tan: has override(s)
mauve: both of the above
pink: is an override but doesn't call super
pinkish tan: has override(s),
also is an override but doesn't call super
389デフォルトの名無しさん:2007/11/03(土) 14:42:45
>>386
仕組みは CodeHolder>>#inheritanceButtonColor あたりからたぐるといいかも。
390デフォルトの名無しさん:2007/11/03(土) 14:48:00
>>387
>>387
回答ありがとうございます。

inheritanceボタンにカーソルを当てていたらバルーンヘルプがでて以下のように説明がありました。

green: sends to super
tan: has override(s)
mauve: both of the above
pink: is an override but doesn't call super
pinkish tan: has override(s), also is an override but doesn't call super

2色じゃなくて5色もあるようで。
またよろしくお願いします。
391デフォルトの名無しさん:2007/11/24(土) 23:01:09
LinuxでFreetypeの綺麗なフォントを使うには、
Squeak v3.9以降を使えば出来ると聞きました。ディストリのパッケージには古いのしか
ないので自分でビルドしたいのですが、どうもうまくいきません。
x86_64だと無理なのでしょうか。
392デフォルトの名無しさん:2007/11/25(日) 00:43:18
へー、今って FreeType 使える様になったんだ?
IPA フォント同梱のディストリ作って欲しいね
393デフォルトの名無しさん:2007/11/25(日) 22:42:23
394デフォルトの名無しさん:2007/11/25(日) 22:51:00
395デフォルトの名無しさん:2007/11/25(日) 22:58:46
お、素晴らしい。個人的には UCS2 だけで十分。
396デフォルトの名無しさん:2007/12/02(日) 16:56:13
アラン・ケイ 人間とコンピューターの明日
http://www.nicovideo.jp/watch/sm1675694
397デフォルトの名無しさん:2008/01/04(金) 00:54:43
>>396
感動した。おまいらにとっては当然のことなんだろうけど。
何も知らんプログラマ一年生の俺は感動した。
398デフォルトの名無しさん:2008/02/03(日) 12:40:40
399デフォルトの名無しさん:2008/02/03(日) 17:08:23
400デフォルトの名無しさん:2008/02/03(日) 23:25:51
論理哲学論考 - ウィトゲンシュタイン
1.世界は成立している事柄の総体である
1.1.世界は事実の総体であり、物の総体ではない
401デフォルトの名無しさん:2008/02/04(月) 00:06:54
>>400 で?
402デフォルトの名無しさん:2008/02/04(月) 00:14:02
「論考」なんて、著者であるヴィトゲンシュタイン本人が後で否定したじゃん。
せめて「探求」から引用しろよw
403デフォルトの名無しさん:2008/02/04(月) 00:16:16
後で否定したのって嘘らしいよ。
404デフォルトの名無しさん:2008/02/04(月) 00:18:29
>>403
「探求」にそう明記しているのに?
405デフォルトの名無しさん:2008/02/04(月) 00:34:52
一部否定なんだけど
406デフォルトの名無しさん:2008/02/04(月) 05:03:00
そもそも探求を書いた頃の彼の精神状態は…
407デフォルトの名無しさん:2008/02/04(月) 13:12:00
純粋理性批判 - イマヌエル・カント
 我々が直感するところの物はそれ自体としては、
 我々が実際に直観しているところのものと同じものではない
408デフォルトの名無しさん:2008/02/04(月) 19:53:12
>>405
少なくとも>>400に挙げてあるような写像主義は完全に捨てたが?
409デフォルトの名無しさん:2008/02/04(月) 19:54:23
>>406
ウホ
410デフォルトの名無しさん:2008/02/04(月) 20:12:41
で、Squeakとの関係はどうなの。
Worldのsubmorphsにすべてのモーフは含まれるけれども、
モーフじゃないオブジェクトも一杯あるよ。
411デフォルトの名無しさん:2008/02/04(月) 22:15:39
squeakを仕事で使ってるヤツっているんか?
ケントベックも何してる人なんだ。
412デフォルトの名無しさん:2008/02/05(火) 09:22:21
>>411
はーい。仕事で使ってますが何か?
413デフォルトの名無しさん:2008/02/05(火) 18:50:50
>>412
Dabble DB http://www.dabbledb.com/ Web上の簡単データベース
Qwaq Forums http://qwaq.com/ 3D仮想オフィス構築環境
Plopp http://www.planet-plopp.com 子供向け3Dペインティングツール
CMS BOX http://www.cmsbox.ch/ Seaside+Scriptaculous ベースのCMS
Scratch http://scratch.mit.edu/ 教育向けプログラミング環境
Sophie http://sophieproject.org/ E-Bookオーサリングツール
C-Room http://www.c-room.net/ 感情が伝わる遠隔会議システム
414デフォルトの名無しさん:2008/02/05(火) 19:13:12
>>412
信じられん。どーやって?何に使うの?スクリプト替わり?
まさか出来たコードで食ってるとか。なんにせよ 羨ましい。
かなりSqueakの本は読んでるのに使い道が無い。
415デフォルトの名無しさん:2008/02/05(火) 21:50:44
バージョンアップが大変そう。
Ruby以上に中の人がこねくり回し杉。
416デフォルトの名無しさん:2008/02/05(火) 22:19:30
たとえば、Scratchの場合、2.8ベースのMIT Squeakという独自バージョンを
作って、影響を受けないようにしています。で、少数のプログラマがクロー
ズドで開発(最終的にはMIT Licenceでオープンに)。
417デフォルトの名無しさん:2008/02/06(水) 00:05:46
>>415
バージョンアップはたしかに大変ですが、それは新バージョンに見合う魅力があるときで
そうでなくて本家の向いている方向が気にくわなければ、「てめえたちでフォークしちゃえば
いいじゃん…」的考えが(ほとんど C 言語で組まれている Ruby と違って、Smalltalk は
ずべてが Smalltalk で組まれているぶん)ずっと敷居が低いし実践されているといえそうです。

あと、仮に互換性が失われたバージョンアップに追従するにしても、Smalltalk はユーザーサイドの
コードはもちろん、処理系それ自体に対しても Ruby にはないイントロスペクション機能が
適用できるので、Ruby で「ぎゃっ」というタイプの仕様変更で想像されるほどには、移行は
大変だったり絶望的ではないと思いますよ。
418デフォルトの名無しさん:2008/02/06(水) 08:42:54
>>417
たまに、「ほはぇ!?」と思うことはあるけどねw
419デフォルトの名無しさん:2008/02/06(水) 12:43:03
>>417
なんかすげー。
俺squeakがごまんとあるのか。
本家が気に入らなきゃ自分で改造って
スモールトーカーってパワフルなんだなw

420デフォルトの名無しさん:2008/02/06(水) 17:03:16
たとえば、メソッド1個書き換えて、メニュー1つで仮想イメージを
保存すれば、それだけで俺様環境ですから。
しばらくすると、OS, 言語, ライブラリ, 環境, アプリに区別がな
いことの方が自然に思えてきます。
むしろ、みんな俺様環境な中で、同じものを使えるようにする方が
面倒です。だからソースじゃなくて、仮想イメージをまるごと配る
という選択肢も出てきます。
421デフォルトの名無しさん:2008/02/06(水) 18:48:20
むしろ、全ユーザーでネット上のひとつのsqueeeakを使うほうが自然な感じがする。
422デフォルトの名無しさん:2008/02/06(水) 19:21:31
そう、雰囲気としてはWikiがそのままSmalltalkになったものが近い。
WysiWikiというのもありました。
http://www.smalltalk.jp/pipermail/squeak-ja/2006-July/003062.html
Smalltalkの歴史はコラボレーションの歴史に重なるところもあります。
古くは構成管理システムのENVYやOODBのGemStoneもイメージ共有と言え
なくないかも。
423デフォルトの名無しさん:2008/02/06(水) 21:29:15
>>422
GemStoneはそれ自体もSmalltalk処理系だから、
イメージ共有というよりも環境共有とでも言うべきと思われ。
424デフォルトの名無しさん:2008/02/06(水) 22:44:12
>>423
kwsk
425デフォルトの名無しさん:2008/02/07(木) 07:29:37
>>424
GemStoneは単なるDBではなくて、Gemstone Smalltalkが動作しているSmalltalk処理系。
クライアントのSmalltalk環境からGemStone上のSmalltalk環境に飛び込んで処理を継続したり、
その結果をクライアントのSmalltalk環境で受け取ることができる。
426デフォルトの名無しさん:2008/02/07(木) 13:30:40
>>425
それは GemStone Smalltalk のイメージを共有していることにはならないの?
というか、ENVY はイメージの共有なのだろうか?
427デフォルトの名無しさん:2008/02/07(木) 14:08:07
>>426
Virtual Imageさけでなく、VMも共有している。
428デフォルトの名無しさん:2008/02/07(木) 18:35:16
>>427
ああ、それで環境を共有している、と。多謝。
429デフォルトの名無しさん:2008/02/07(木) 19:44:43
ちょっとわかんないとこあります。環境を共有って言うけど、
その環境って、environmentのこと?それともcontextのこと?

programming environmentのことだったら、VMを共有してなくても
イメージの共有で十分「共有」と言えるし、普通そう言うと思う。

VMの共有が、「共有」であることの条件だとすると、それはGemstoneでは
computing contextの共有をしてるって理解していいの?
430デフォルトの名無しさん:2008/02/09(土) 16:02:05
メタバースみたいなシステムのSmalltalk空間って面白そうなんだけど。
↓SeeThroughTalkというのがあるけど、ローカルな仮想イメージはいらない。
http://www.ipa.go.jp/SPC/report/03fy-pro/mito/15-895d.pdf
431デフォルトの名無しさん:2008/02/09(土) 16:05:15
>>429
普通、Smalltalk環境と言えば、仮想計算機と仮想イメージを組にしてSmalltalk環境と呼ぶと思うけど。
432age:2008/03/06(木) 23:05:51
iPhoneSDKで動くかな?
433デフォルトの名無しさん:2008/03/07(金) 01:21:15
Newtonデバイスもそうだったけど、ヒープがきついんじゃないかと。
434デフォルトの名無しさん:2008/03/08(土) 13:52:58
メモリは 128MB も積んでるよ
435デフォルトの名無しさん:2008/03/21(金) 12:00:56
http://pc11.2ch.net/test/read.cgi/tech/1205021786/466
Squeak on NEOというのが既に稼動してるらしい。すぐ移植できそう。
436デフォルトの名無しさん:2008/03/22(土) 10:30:27
リナじゃないザウでも動いたのだから、載るのは確実だと思うけど
問題はMorphicのパフォーマンスだな。たぶんMVCなら楽勝。
437デフォルトの名無しさん:2008/03/22(土) 14:02:46
438デフォルトの名無しさん:2008/04/16(水) 00:48:50
保守
439デフォルトの名無しさん:2008/04/16(水) 01:41:05
>>437
それ読んでパペポを思い出して、上岡龍太郎って、
どうしたんだろうと気になって調べたんだが、
引退してたんだな。

知らなかった。
440デフォルトの名無しさん:2008/04/16(水) 19:30:42
パピポが休刊(廃刊)になったことは関係無いと明記しておかねば
441デフォルトの名無しさん:2008/05/16(金) 01:42:23
sqeakをみてヘミネコを思い出す。
442デフォルトの名無しさん:2008/05/16(金) 08:39:59
 ヘ_ヘ
ミ   ミ
443デフォルトの名無しさん:2008/05/18(日) 10:53:40
  ヘヘ
 ミ ・・ ミ
  ( ° )〜
444デフォルトの名無しさん:2008/05/29(木) 23:45:01
いまsqueakで軽いミニゲームを作ってるんだけど
解らないところがあるんだが質問して良い?
445デフォルトの名無しさん:2008/05/30(金) 00:37:48
>>444
好きにすれば良い
446デフォルトの名無しさん:2008/05/30(金) 02:36:38
>>445
thank

squeak触って間もない初心者だけど
いまシューティングゲームを作っているんだ、
それで自機の弾の連射ができない(´・ω・`)
一発ずつしか撃てないのを改善しようと
4時間悩んでググった結果このスレにたどり着いた。

どうかこのド低脳に解決方法をご教授願えやしませんでしょうか・・・
447デフォルトの名無しさん:2008/05/30(金) 09:39:44
弾モーフをいくつも置くんじゃ駄目なのか?
448デフォルトの名無しさん:2008/05/30(金) 10:39:47
>>446
Squeak で作っているということですが、Etoys(ドラッグ&ドロップのプログラミング)でか、
Smalltalk でか(ブラウザとかを使ってクラスとかを定義しているのか)で違うので、
どちらか教えてもらえますか? たぶん、Etoys だとは思うのですが。念のため。

それと、今のところ、どこまでどんなふうに書いたのかを簡単でいいので教えて
もらえると、それに乗っかってヒントも出しやすいです。
449デフォルトの名無しさん:2008/05/30(金) 15:50:53
450デフォルトの名無しさん:2008/05/30(金) 20:07:12
>>449
そういうページの探し方を伝授したらどんどん自力で能力を伸ばせるかもね。
451446:2008/05/30(金) 21:07:37
こんなにレスありがとうございます。

>>447
すいません、よくわからないです。

>>448
おそらくそのEtoysというほうだと思います。
いまは自機から弾を飛ばすところまでできました
弾が遊び場の外に出た状態でボタンを押すと自機の位置に戻ってきて
飛んでいくという設定になっています。
弾を一度発射するとその弾が遊び場からでるまで2発目が撃てないのを
なんとか連射出来るようにしたいんですが、わかりませんでしたorz

>>449
ありがとうございます
これを応用して出来るか試してみます。


最終目標は敵からも複数の弾が出るようにするのと
敵のHPを設定できるようにしたいです。
452デフォルトの名無しさん:2008/05/30(金) 21:48:59
>451
できたら、「公開する!」を長押しして「異なるサーバーに公開」で、
squeakland.jp/superかsuper2に作ったものを置いてみて。
453446:2008/05/30(金) 21:54:58
試してみたらできました。
皆さん本当にありがとうございます!
これでまた一歩完成に近づきました!!

>>452
完成したら。ということですか?
それとも今の連射が実装できたら、ということですか?
454デフォルトの名無しさん:2008/05/30(金) 21:57:23
>453
「完成したら」のつもりだったけど、できたところまでも
見たくなってきたよ。
455446:2008/05/30(金) 22:25:52
区切りのつくところまで出来たら一度上げてみたいと思います!
その時は改善点など見つけたら出来れば助言をお願いします。
456デフォルトの名無しさん:2008/06/11(水) 18:09:56
457デフォルトの名無しさん:2008/06/12(木) 21:38:33
458デフォルトの名無しさん:2008/08/03(日) 14:59:44
こんな感想が出ているようだが
http://pc11.2ch.net/test/read.cgi/tech/1198822420/89
正直どうよ?
459デフォルトの名無しさん:2008/08/03(日) 18:34:10
一個人の感想なんてどうでもいいじゃん
ようはその人それぞれに合った内容の書籍であればいいわけで
おいらはどっちもイラネ
460デフォルトの名無しさん:2008/09/01(月) 15:26:32
461デフォルトの名無しさん:2008/09/03(水) 20:44:58
クローズアップ現代を見て思ったのですが、Collectionのsizeとかって、コピペですよねぇ。
VisualWorksとSqueakで、コメントも含めて全く同じです。偶然とは思えない。
Smalltalkのライブラリって、コピペで作成されているのですね。
462デフォルトの名無しさん:2008/09/03(水) 23:06:50
>>461
Smalltalk-80の頃のコードがそのまま残ってるんじゃないの?
463デフォルトの名無しさん:2008/09/04(木) 00:02:08
それじゃあ、新しいSmalltalkを作る場合、ライブラリはどうするのですか?
Smalltalkのライブラリは膨大になりがちだから、コピペなしでは困難だと思います。
464デフォルトの名無しさん:2008/09/04(木) 10:30:42
>>463
そんなことないでしょ。Smalltalk-80由来のコードなんてクラス数はたかが知れている。
GNU Smalltalkみたいに完全独自な実装もあるし。
465デフォルトの名無しさん:2008/09/04(木) 14:47:25
コピペというより、SqueakもVisualWorksもXEROXから正規のライセンス
供与を受けたものなので、下の方は同じで当前です。
ライセンスを受けてない処理系は464の言うように独自で実装しています。
古くはSmalltalk/Vから、Smalltalk/X, Smalltalk MT, Dolphin Smalltalk,
Smalltalk Agent, VisualAge for Smalltalkなどなど、みんなそうです。
仕様はBlue BookやANSI X3J20を見ればオk。
LinuxはUNIXをコピペしなければ作れるはずがない、というのと同じ議論の
ように思えます。
これはSmalltalkのプログラミングスタイルがコピペ(PBE; Programming By
Example)と親和性が高いのとは別の話です。
466デフォルトの名無しさん:2008/09/04(木) 15:07:38
クローズアップ現代でなんか Smalltalk 関係のこととりあげられたんですか?
467デフォルトの名無しさん:2008/09/04(木) 17:11:31
468デフォルトの名無しさん:2008/09/04(木) 20:44:59
ライブラリを独自実装する場合、既存の他者のライブラリをどの線まで有効利用できるのだろう。
セレクタ名ぐらい、拝借しても別に問題ないのかな?
469デフォルトの名無しさん:2008/09/05(金) 08:36:07
>>468
APIの仕様には著作権は及ばない、ということになっていたはず。
つまりセレクタ名はOK。メソッド本体はNG。
470デフォルトの名無しさん:2008/09/05(金) 20:56:28
ブロックの組み合わせでプログラミングする教育用ツール「Scratch」日本語対応新版が登場
http://slashdot.jp/article.pl?sid=08/09/04/0830245

Squeak派生の子供向けプログラミング環境「Scratch 1.3」--日本語に対応
http://journal.mycom.co.jp/news/2008/09/04/054/
471デフォルトの名無しさん:2008/09/06(土) 06:02:05
リアルタイムやまぐち
http://4ch.kry.co.jp/movie/news/080819_4.asx

↑もそうなのですが、Squeakって、やはりこども教育用ですか。
デザインも含めて、何か使い辛い。

他のSmalltalkは開発用(IDE)って感じだし、Squeakは教育用って感じだし、
FITするSmalltalkがありません!!!
472デフォルトの名無しさん:2008/09/06(土) 08:09:57
>>471
開発用でも教育用でもイヤだというあなたは
Smalltalkを何用に使いたいのですか?
473デフォルトの名無しさん:2008/09/06(土) 12:33:03
>>471
月並みな意見ですけど、Smalltalk システム、特に Squeak とかは荒削りだから
気に入らないところは仕組みを調べてどんどん手を入れて変えていく気概がないと、なかなか。

「フィットする」より「フィットさせるのに、より手間がかからないもの」に間口を広げてから
あらためて処理系を吟味してみてはいかがでしょう? 選択肢もそう多くはないわけですし。
474デフォルトの名無しさん:2008/09/06(土) 19:35:04
プロ用でもなく、こども用でもなく、一般人用のSmalltalkがいいですね。
まず、まともなWebブラウザとDVDプレーヤーがあるSmalltalk。できれば、テレビも。
475デフォルトの名無しさん:2008/09/06(土) 20:45:17
そんなもんSmalltalkでやって何が楽しいんだ?
476デフォルトの名無しさん:2008/09/06(土) 21:15:03
Smalltalkコードで、自由にカスタマイズしたり、コントロールしたり、分解したり、
再構成したり、いじくり回せます。あと、Smalltalkの内外に行ったり来たりせずに
すむので、落ち着いてSmalltalkできます。Smalltalkで何をすれば楽しいのですか?
477デフォルトの名無しさん:2008/09/06(土) 22:04:52
ソースコードを印刷して電車の中で読むのがいいと
JUNさんが最新著作で書いてた
478デフォルトの名無しさん:2008/09/06(土) 22:25:12
479デフォルトの名無しさん:2008/09/06(土) 23:48:55
別人
480デフォルトの名無しさん:2008/09/07(日) 08:45:17
>>476
その程度の話なら、DVDを一旦qtに落とせばいいだけだろ
481デフォルトの名無しさん:2008/09/07(日) 16:42:42
わざわざDVDを一旦qtに落とすメリットは何?
普通にDVDプレーヤーで再生、コントロールすればいいのに。
482デフォルトの名無しさん:2008/09/07(日) 18:18:53
>>481
あれ?動画を分解したり再構成したりしたいんじゃないの?
483デフォルトの名無しさん:2008/09/11(木) 07:48:42
いいえ、アプリの機能を自由に編成する話。アプリがものすごく使いやすくなる。
484デフォルトの名無しさん:2008/09/11(木) 08:41:33
なーんだ、つまらん。その程度なら自分でやれば?
485デフォルトの名無しさん:2008/09/12(金) 07:19:28
Smalltalkには、Webブラウザもないの?
486デフォルトの名無しさん:2008/10/06(月) 22:36:15
Win版のskratchの日本語メニューが文字化けなんですが設定できるのでしょうか?
もちろんLanguageをEnglishなどにすればそれはちゃんと表示されますが・・・
487デフォルトの名無しさん:2008/10/06(月) 22:50:38
Scratchですよね。メニューが文字化けとは?メニュー以外の日本語は
出るのですか。環境などもう少し詳しく。
488486:2008/10/06(月) 23:23:03
はい、Scratchです。VM Preferencesは英語でちゃんと表示されますが、
ウインドウ内にある数字以外の文字がいわゆる(縦長い)豆腐■です。
OSはWin2000です。
一番上にあるメニューのLanguageでヨーロッパとアラビア?系には設定できますが
日本語や漢字が豆腐です。
489486:2008/10/06(月) 23:45:09
Scratchのバージョンは1.3です。
490デフォルトの名無しさん:2008/10/07(火) 00:01:32
なんとなくPangoがちゃんと動いていない感じですね。
インストールディレクトリにあるUnicodePlugin.dllをどこかに動かすと、
挙動が変わりますか(黒い豆腐が白になるとか)。
あと、フォントのルックアップに失敗しているとすれば、locale\ja.poで
msgid "Win-Font"
msgstr "MS Gothic"
みたいに陽にフォントを指定してみるとどうでしょうね。
491486:2008/10/07(火) 00:50:59
>>490
>msgstr "MS Gothic"
これで解決しました。ありがとうございました。
ちなみにUnicodePlugin.dllを動かしても同じ症状でした。
492デフォルトの名無しさん:2008/10/07(火) 01:05:04
よかったです。私も経験値が上がりました。
493デフォルトの名無しさん:2008/10/12(日) 15:35:58
www.object-arts.comって、今サイト落ちてる?
494デフォルトの名無しさん:2008/11/21(金) 21:37:33
ワークスペースのdo-itなどのSmalltalkのコードで、
VM自身のウィンドウのリサイズは可能でしょうか?
495デフォルトの名無しさん:2008/11/21(金) 23:19:56
そのものはないけど、3.8までだったらFFIでuser32.dllが
呼べるからできるでしょう。
カテゴリのFFI-Examples-Win32にサンプルがあります。
496デフォルトの名無しさん:2008/11/24(月) 10:10:21
Smalltalkからは無理なんですね。
ありがとうございました。
497デフォルトの名無しさん:2008/11/24(月) 11:12:43
ワケワカラン・・・
498デフォルトの名無しさん:2008/11/24(月) 17:34:45
495の情報でSmalltalkからできると思いますが。
499デフォルトの名無しさん:2008/11/24(月) 22:42:52
暇だったんで作ってみた。

'From Squeak3.8.1 of ''28 Aug 2006'' [latest update: #6747] on 24 November 2008 at 10:38:58 pm'!

!Win32Window methodsFor: 'accessing' stamp: 'nanashi 11/24/2008 22:38'!
moveWindow: aRectangle
"Win32Window getFocus moveWindow: (100 @ 100 extent: 200 @ 200)"
self
apiMoveWindow: self
with: aRectangle origin x
with: aRectangle origin y
with: aRectangle width
with: aRectangle height
with: 1! !

!Win32Window methodsFor: 'api calls' stamp: 'nanashi 11/24/2008 22:37'!
apiMoveWindow: aHWND with: x with: y with: width with: height with: bool
<apicall: bool 'MoveWindow' (Win32Window long long long long bool) module: 'user32.dll'>
^ self externalCallFailed! !
500デフォルトの名無しさん:2008/11/24(月) 23:34:02
うそ、ここってねだると作ってくれんの?
501デフォルトの名無しさん:2008/11/25(火) 00:23:23
たまたま。474みたいなのはだめ。
502デフォルトの名無しさん:2008/11/25(火) 00:31:32
この辺を参考にすればいいのでは?
http://kminami.fc2web.com/Squeak/Goodies/Win32WindowEnh/
503デフォルトの名無しさん:2008/11/25(火) 07:52:25
甘やかすと彼等のためにならない。ここはパパート的に。
504デフォルトの名無しさん:2008/11/26(水) 07:49:58
でも3.10じゃできないってことですよね
3.8は普通に使われてるバージョンなんですか?
505デフォルトの名無しさん:2008/11/26(水) 17:12:49
使われてますよ。
FFIはセキュリティ上の理由(なんでもできちゃうから)で外された
だけなので、必要ならSqueakMapからインストールすればオk。
506デフォルトの名無しさん:2008/12/23(火) 08:44:05
あげ!!


Scratchってなかなか寄さそうですね!
でも資料が少ない・・・
507デフォルトの名無しさん:2008/12/23(火) 14:48:49
10年前ならいざ知らず、今はありすぎて読みきれない
ほどだと思いますが。
508デフォルトの名無しさん:2008/12/24(水) 13:45:56
>>507
逆にどれを読めばいいか、おぬぬめヨロ。
509デフォルトの名無しさん:2008/12/24(水) 20:55:03
ごめん、Squeakと読み間違えてたよ。
確かにScratchはまだ少ない。10年前は無いし。
とりあえず、ここからどうぞ。
http://info.scratch.mit.edu/Support/Translation/%E6%97%A5%E6%9C%AC%E8%AA%9E_%2f%2f_Japanese
来年はいっぱい出ると思います。
510デフォルトの名無しさん:2009/01/15(木) 23:18:36
京大、「パソコンの父」に名誉博士号を贈呈
http://osaka.yomiuri.co.jp/university/research/20090107-OYO8T00477.htm
511デフォルトの名無しさん:2009/02/09(月) 14:29:36
Visualworks 7.6NCで正規表現を扱うにはどうすればいいんでしょう。
String以下をspawn hierachyしてもそれっぽいメソッドが見つからないです。
SqueakだとBRegexpとかあるみたいですが・・
512デフォルトの名無しさん:2009/02/09(月) 19:31:18
$(VISUALWORKS)\goodies\other\Regex11.pcl
513デフォルトの名無しさん:2009/02/09(月) 20:36:00
regex11はすでに入手不可
514デフォルトの名無しさん:2009/02/09(月) 21:47:45
>>511
コンソールのSystemメニューから load parcel named...
regとか打てば出てくるよ
515デフォルトの名無しさん:2009/02/09(月) 23:12:54
>>514
できました!RxMatcherで後方参照できるっぽいのでこれで行ってみます。
ありがとうございました。
516デフォルトの名無しさん:2009/02/10(火) 02:28:09
もしかして、暇なSmalltalkerってたくさんいるのか。
517デフォルトの名無しさん:2009/02/10(火) 07:48:40
たくさんどころか絶滅危惧種では・・
ST80由来のベースは共通だけどSqueak使いはVW使えないし
VW使いはSqueak使えないし
どちらも使いこなすまで果てしなく長い時間がかかる・・

ST80時代に御大を大量にdeepCopyしておくべきだったかもw
ってそれはそれでまずいか・・w
518デフォルトの名無しさん:2009/02/10(火) 15:16:53
それにしては、レスが早い。
ロートルがここに集結してるとか。
519デフォルトの名無しさん:2009/02/10(火) 21:19:58
smalltalkerは一匹見かけると100人はいるんだぜ。
520デフォルトの名無しさん:2009/02/11(水) 05:45:53
>>517
Squeakerでも、SqueakをSmalltalkとして使っている人は大抵
VisualWorksどころかObjectWorksも経験していると思うよ。
521デフォルトの名無しさん:2009/02/11(水) 12:11:07
はじめるには3.8でいいのでしょうか?
alt+bとかショートカット効かないんですが。。。
522デフォルトの名無しさん:2009/02/11(水) 12:36:24
>>521
ここだけの話、SmalltalkAgentが最適。
523デフォルトの名無しさん:2009/02/11(水) 17:07:12
>>521
普通に使えるよ。
バージョンは自分が使うテキストで推奨しているのを使うのが吉。
サンプルが動かないとかいやでしょ。
524デフォルトの名無しさん:2009/02/11(水) 21:04:29
テキスト推奨のでは効きました。ありがとうございます。
趣味でやるので古いので大丈夫です
525デフォルトの名無しさん:2009/02/12(木) 19:13:10
上で出てきたScratchというのもSamlltalkらしいですが、それでもSmalltalkの勉強できますか?
526デフォルトの名無しさん:2009/02/12(木) 19:47:22
VWの非商用版がフリーだからそっちでやった方がいいんじゃないか?
527デフォルトの名無しさん:2009/02/12(木) 21:30:33
見てみたら最近更新してないみたいだけど
もうsqueak自体は放置なの?
528デフォルトの名無しさん:2009/02/12(木) 22:16:02
>>525
>>526の言う通りVisualWorksやったほうがいい。
出来ることがまるで違うから。
529デフォルトの名無しさん:2009/02/12(木) 22:59:57
>>527
どこですか?

>>525
Smalltalkで組まれているだけでScratch自体はSmalltalkではないです。
似たような話でeToysというのもやはりSmalltalkではないです。

Smalltalk処理系は、正統派のVisualWorks、機能は古いままでUIも特殊ですが
ユーザーが多めのSqueak、Smalltalkにつきものの独自GUIが苦手な人向きの
GNU Smalltalk、Win専用ですがIDEの完成度の高いDolphinなどがあります。

GNU Smalltalkを除けば、どれから始めても他に応用が利くと思いますが
身近の教えてくれる人か、使いたい教科書があればその人or文書が使っている
処理系を選ぶのがベターです。>>523でも言われていますができるだけ
バージョンも合わせた方がよいです。がんばってください。
530デフォルトの名無しさん:2009/02/12(木) 23:52:07
> 身近の教えてくれる人

これがもっとも得難い。
531デフォルトの名無しさん:2009/02/13(金) 04:27:10
>>519
日本にSmalltalkerが100人もいたら、もうちょっとマシな状況になっていると思われ。
532デフォルトの名無しさん:2009/02/13(金) 10:43:58
100人のSmalltalker村とかあったら嫌ですね。
533デフォルトの名無しさん:2009/02/13(金) 12:41:38
急に盛り上がり始めたな
なんかあったのか?w
534デフォルトの名無しさん:2009/02/13(金) 22:10:19
ついに時代が来たとか。
535デフォルトの名無しさん:2009/02/14(土) 09:32:57
もう終わってるかと思ったわ
536デフォルトの名無しさん:2009/02/14(土) 10:49:57
馬鹿者。
始まってもいない物が、終わったりせぬ。
537デフォルトの名無しさん:2009/02/14(土) 11:06:27
Lisp飽きた
はやく始まってくれSmalltalk
538デフォルトの名無しさん:2009/02/15(日) 06:22:47
repeatやwhileTrueとかでブロッククロージャから局所脱出させる方法が分からない
^だとメソッド終了しちゃうし・・
539デフォルトの名無しさん:2009/02/15(日) 12:47:11
>>538
脱出したいタイミングで例外をあげる処理と #on:do: との組み合わせでは駄目ですか?

| i |
i := 0.
[ [#一連の処理. (i:=i+1) > 100 ifTrue: [Exception signal]. #続きの処理] repeat
] on: Exception do: [:ex | #脱出時の後処理]
540デフォルトの名無しさん:2009/02/15(日) 18:07:49
>>538
valueWithExitを使う。

[:e
"let me go!"
  true whileTrue:[
   ふにゅふにゅ....
( ふんが>ふんぐっ ) ifTrue;[ e value ].
  ].
] valueWithExit.

"escape from the reallity"
Transcript show:'また来週!'.

仕組みの説明は相当めんどいのではしょるが、任意レベルの大域脱出が可能。
541デフォルトの名無しさん:2009/02/15(日) 20:11:24
>>539-540
やってみます
542デフォルトの名無しさん:2009/02/16(月) 07:58:47
>>539-540
ありがとうございました。
にしてもon: do:はprimitiveっぽくて中身見えず
valueWithExitは何をやってるかさっぱり

Cのbreakやcontinueに相当するものがよくある解説にはまったく出てこないのはどうしてなんだろう?
そういえばcontinue相当がまだ見つからない・・
ブロック内でself value. とかしたら再帰になっちゃいますよね。
543デフォルトの名無しさん:2009/02/16(月) 08:25:53
>>542
もともとcontinueやbreak自体、問題アリと言われています。
Cでもコーディング規約が厳しい所では、continueやbreakの使用は
制限されることが珍しくないです。

> ブロック内でself value. とかしたら再帰になっちゃいますよね。

なりません。selfが何を指すのか、そこからじっくり考えてみましょう。
544デフォルトの名無しさん:2009/02/16(月) 12:14:43
>>543
>Cでもコーディング規約が厳しい所では、continueやbreakの使用は
>制限されることが珍しくないです。
下請け孫請けさんざんやったけどそんな規約は見た事無いよ。
主に制限されるのは変数名や関数名の命名規則やインデント
あとはgoto禁止とかね
545デフォルトの名無しさん:2009/02/16(月) 14:37:20
>>542
VWにcontinueの考えはないので実装した方が早い。
ttp://d.hatena.ne.jp/kaminami/20090123/p3
※raiseの前にスペースが必要。

valueWithExitはメソッドコンテキストと密接な関わりがあるのと、^ ≠ return であることの深い理解が必要なので
今は放置して先に進んだ方が宜しいかと。
546デフォルトの名無しさん:2009/02/16(月) 17:00:34
>>545の訂正
signalBreakの実装は、signalContinueにしないと作例は動作しないので注意。
547デフォルトの名無しさん:2009/02/16(月) 20:36:51
>>544
車業界で使用されるMISRA-Cではcontinueやbreakは禁止されているよ。
(ルール57とルール58)
548デフォルトの名無しさん:2009/02/16(月) 21:00:56
>>545-546
なんとか動きました!
とりあえずなんとかなりそうです
ありがとうございました。
549デフォルトの名無しさん:2009/02/16(月) 21:42:31
breakなしでswitch-case書くの?>>MISRA-C
550デフォルトの名無しさん:2009/02/16(月) 22:45:04
>>549
正確には「(switch文のcase節を終了する以外では)break文は使用してはならない。」とある。
forとかwhileで使用すんな、ということ。
551デフォルトの名無しさん:2009/02/16(月) 22:47:01
>>549
全部フォールスルーで処理しなければならないと決まっています
552デフォルトの名無しさん:2009/02/17(火) 09:10:22
クソ面倒な規約だぬ
553デフォルトの名無しさん:2009/02/17(火) 17:14:35
勉強会行った人いる?どんな感じ?
554デフォルトの名無しさん:2009/02/17(火) 17:42:23
>>553
kwsk
555デフォルトの名無しさん:2009/02/17(火) 17:52:49
556デフォルトの名無しさん:2009/02/17(火) 18:27:38
ハブられるのはいやづら・・
557デフォルトの名無しさん:2009/02/17(火) 18:35:06
やっぱり、(・∀・)人(・∀・)ナカーマ の人じゃないとつらいですか。
558デフォルトの名無しさん:2009/02/17(火) 18:40:48
やさしくしてくれる?
こう動かすんですよとマウスに触れた手の暖かさに恋が芽生えたりする?
559デフォルトの名無しさん:2009/02/18(水) 11:46:32
>>558
もちろん
560デフォルトの名無しさん:2009/02/27(金) 22:21:48
squeak、scrach、ドリトル
この系統の言語で他に現役なのありまっか
561デフォルトの名無しさん:2009/02/28(土) 00:57:58
>>560
http://www.stagecast.com/creator.html
http://www.viscuit.com/
http://education.mit.edu/starlogo-tng

とか、この手のはちょっと探せば結構な数が見つかるんじゃない?
562デフォルトの名無しさん:2009/03/01(日) 22:13:56
smalltalkの良いところって何ですか?
563デフォルトの名無しさん:2009/03/02(月) 00:02:58
構文がシンプルで柔軟な事
564デフォルトの名無しさん:2009/03/02(月) 00:39:14
なんで、Javaに負けたん?
565デフォルトの名無しさん:2009/03/02(月) 00:45:37
ビジネスで使うには自由過ぎるから
566デフォルトの名無しさん:2009/03/02(月) 07:39:51
>>564
SunとParcPlaceの資本力の違い、が一番大きそう。
つーか、ParcPlaceの人がもうちょいビジネスに才覚があれば、
Smalltalkの運命はちょっと違うものになってたと思うなあ。
567デフォルトの名無しさん:2009/03/02(月) 09:59:32
キーボード操作だけで完結できるsmalltalk処理系ってありますかね?
568デフォルトの名無しさん:2009/03/02(月) 10:47:40
>>567
GNU Smalltalk
569デフォルトの名無しさん:2009/03/02(月) 11:17:34
>>567
GUIがうっとうしい、使いたくないということならGNU Smalltalkとかですね。

何らかの理由でマウスなどのポインティングデバイスが使えない…ということでなら
Squeakはキーショートカットが充実していますし、マウス無しで全操作が可能なような
細工もしやすいと思います。
570デフォルトの名無しさん:2009/03/02(月) 11:49:52
とんくすです
Squeak歴が浅いのでGNUのいってみます
571デフォルトの名無しさん:2009/03/02(月) 13:25:44
Smalltalkがビジネスで成功する位ならCommon Lispが成功してるってwww
572デフォルトの名無しさん:2009/03/02(月) 15:00:27
メッセージ式はともかく、S式とかないわー
573デフォルトの名無しさん:2009/03/02(月) 16:56:47
じゃあM式。

てか、Lispのマクロ嫌いなの?
574デフォルトの名無しさん:2009/03/02(月) 17:36:20
嫌いなの?って、ここ Lisp スレじゃないですからっ。www
575デフォルトの名無しさん:2009/03/02(月) 19:16:52
Smalltalk は Smalltalk-72 のときにあったマクロっぽい機能をいちど捨てていますからねぇ…。
OMeta があるけれど、あれは独立した別言語ですし。
576デフォルトの名無しさん:2009/03/23(月) 12:32:13
VWで無限ループを書こうと思ったがそれっぽいのがなかった。
Squeakにはあるのかと探したが見つからない。
まさかとは思うがみんな再帰で書いてるの?
577デフォルトの名無しさん:2009/03/23(月) 12:45:07
#repeat
578デフォルトの名無しさん:2009/03/23(月) 22:49:01
[true] whileTrue: []
579デフォルトの名無しさん:2009/03/24(火) 04:25:40
普通はrepeat使う。
580デフォルトの名無しさん:2009/03/24(火) 11:17:07
1 to: Float infinity do: [:each | ... ]
581デフォルトの名無しさん:2009/03/24(火) 20:11:35
一週間位レスないかと思ってたら速攻でレスがorz

>>577-578
ありがとうございました。
582デフォルトの名無しさん:2009/03/24(火) 21:41:00
どんな方針で探して「無い」と結論したか、さしつかえなかったら教えてください。
583デフォルトの名無しさん:2009/03/24(火) 23:24:27
>>580 も正解なんだけど・・・
584デフォルトの名無しさん:2009/03/24(火) 23:51:33
1 to: Infinity positive do: [:each | ... ]

とかしないと。VWなので。
585デフォルトの名無しさん:2009/03/27(金) 11:31:29
>>582
無限ループでググって見つからなかった。
ループ制御に関する記事って全然ないね。
586デフォルトの名無しさん:2009/03/27(金) 11:54:32
そりゃSmalltalkではループ制御は言語仕様じゃないからなあ。
587デフォルトの名無しさん:2009/03/27(金) 16:28:37
>>585
ぜんぜんってこともないとは思いますが、たしかに探し出しづらいですね。

ちょっと調べてみて分からなければ、あまり自力解決にはこだわらずに
気軽に訊いてしまうのがよいと思います。
588デフォルトの名無しさん:2009/03/27(金) 19:48:19
じゃあ早速質問。
1. ブロッククロージャの実行環境というのは
無名のメソッドコンテキストであるという理解でいいのですか?
この場合ブロッククロージャ内に現れるselfの実体は何になるのでしょうか。

2. ブロッククロージャ内で出現する ^ は引数がどんなオブジェクトであれ
現在のメソッドコンテキストを消滅させ、直前のメソッドコンテキストに処理が戻る
という考え方は一般的でしょうか?

3. しかしvalueWithExitの実装を見ると^nil が非常に特殊なものであるように見えます。
これはバイトコンパイルする時に引数がnilである場合にのみ命令の置き換えをしているということでしょうか?
589デフォルトの名無しさん:2009/03/27(金) 19:58:23
さらに追加質問

4. ifTrue:[ ... ] はブロッククロージャを伴いますが
この場合はブロッククロージャではなく、[ ... ]はインライン展開されるためブロッククロージャではないとのこと。
こういった見た目にはまったく判断できない非ブロッククロージャ(インライン展開されるもの)は他にもありますか?

5. 4.のインライン展開される対象はどのようにして決めているのでしょうか。
例えば任意のメソッドの引数(=ブロッククロージャ)を
バイトコンパイラにインライン展開させるような指定は
可能になるようなものなのでしょうか。
それともTrue,Falseクラスに対してのみインライン展開が作用するように作られているのですか?
590デフォルトの名無しさん:2009/03/27(金) 21:28:08
>>588
> 1. ブロッククロージャの実行環境というのは
> 無名のメソッドコンテキストであるという理解でいいのですか?

違います。
そもそもクロージャにするためにはメソッドコンテキストから独立
させる必要があります。

> この場合ブロッククロージャ内に現れるselfの実体は何になるのでしょうか。

クロージャを包んでいるメソッドの環境でのselfです。

> 2. ブロッククロージャ内で出現する ^ は引数がどんなオブジェクトであれ
> 現在のメソッドコンテキストを消滅させ、直前のメソッドコンテキストに処理が戻る
> という考え方は一般的でしょうか?

はい。

> 3. しかしvalueWithExitの実装を見ると^nil が非常に特殊なものであるように見えます。
> これはバイトコンパイルする時に引数がnilである場合にのみ命令の置き換えをしているということでしょうか?

それはメソッドコンテキストが特殊なのではなく、nilがバイトコードにおいて特殊なだけです。
591デフォルトの名無しさん:2009/03/27(金) 21:29:03
>>589
> 4. ifTrue:[ ... ] はブロッククロージャを伴いますが
> この場合はブロッククロージャではなく、[ ... ]はインライン展開されるためブロッククロージャではないとのこと。
> こういった見た目にはまったく判断できない非ブロッククロージャ(インライン展開されるもの)は他にもありますか?

whileTure:やto:do:もインライン展開されます。

> 5. 4.のインライン展開される対象はどのようにして決めているのでしょうか。
> 例えば任意のメソッドの引数(=ブロッククロージャ)を
> バイトコンパイラにインライン展開させるような指定は
> 可能になるようなものなのでしょうか。
> それともTrue,Falseクラスに対してのみインライン展開が作用するように作られているのですか?

SmalltalkCompilerを参照
592デフォルトの名無しさん:2009/03/27(金) 22:49:52
>>590-591
即解答ありがとうございます。
新たな疑問が沸いてきました。

6. ブロッククロージャが新たなメソッドコンテキストを生成するものではないなら
^ が発行された時点でメソッドコンテキストが消滅するので
valueWithExitが成り立たないのではという考えに至りました。
しかし実際には機能します。
これはどういうことなんでしょうか?

7. [^nil] value と [^aObject] value で機能的に違いがあるのでしょうか。


5.についてはSmalltalkCompilerが難解なのでざっと見た感じですが
おそらくブロッククロージャのレシーバを除いて
引数のブロッククロージャは例外無くすべてインライン展開されるのではないかと思いましたが違いますか?
593デフォルトの名無しさん:2009/03/27(金) 23:49:56
>>592
Squeakで MessageNode >> initialize を見ればいいと思うよ
594デフォルトの名無しさん:2009/03/28(土) 01:57:18
>>593
MessageNode class >> initialize ですよね? VW でも同じです。
595デフォルトの名無しさん:2009/03/28(土) 03:19:39
とんちんかんな回答ばっか
596デフォルトの名無しさん:2009/03/28(土) 09:53:32
>>592
あまり思い込み&先走りせずに、おちついて考えてみてはいかがでしょう。
あと、#repeat のときと同じで、どうしてそういう結論にいたったかを
書いてもらえるとくい違いを指摘しやすいと思います。

#valueWithExit のどちらの ^ について成り立たないと判断されたかわかりませんが、
いずれの ^ でも #valueWithExit をコールしたコンテキストに戻るので
(そしてそれは消滅していないので)問題はないと思いますが、違いますか?

7. については、文面どおり呼び出し元への戻り値が nil か aObject かの違いだけです。

5. については、具体的には SmalltalkCompiler のどのメソッドの記述から、
引数のブロッククロージャは例外なくインライン変換されると結論されたのでしょうか?
597デフォルトの名無しさん:2009/03/28(土) 18:44:10
>>596
成り立たないと思ったのは、ブロッククロージャの実行環境が無名メソッドコンテキストではないということは
任意のクラスメソッドを呼んだ時、そこにはいくつブロッククロージャがあっても
クラスメソッドを呼んだ時に生成されたメソッドコンテキストしか存在していないと思ったからです。
であれば、valueWithExitの機能は成り立たたず、通常の^と同じで発行された時点でメソッドの呼び出し元に戻ってしまい
valueWithExitの外に戻ってはこないと思っています。
ここの所がどうもひっかかっています。

7.ですが、ということは[^nil] valueだけが非常に特殊なものというわけではなく、例えば[^Object ] valueとしてもvalueWithExitとまったく同等の機能になるということですか?

5.はifTrueなどのメソッド名がどこにも書かれていなかったので、引数のブロッククロージャはすべてインライン展開されるのでは、という予想です・・
特定のメソッド名で束縛してインライン展開をしているのでは、というこれも予想ではあったのですが・・

>>593-594
ここに記述されているメソッドがインライン展開の対象になるということでしょうか。



598デフォルトの名無しさん:2009/03/28(土) 19:29:24
>>597
7.
実際に試せばよい。

5.
Squeakならブラウザの右側のボタンでコードペインの表示内容が切り替えられるはず。
ソースコードとバイトコードを見比べれば疑問も解けるでしょう。

MessageNode class >> initialize に並ぶメソッドはコンパイル時に特別扱いされる。
それらのメソッド定義にはインライン変換についてコメントが入っているはず。
599デフォルトの名無しさん:2009/03/28(土) 20:10:41
>>597
590 の「違います」の意図が分かりかねるのですが、無名メソッドコンテキストがブロックコンテキストを
指しているなら、私は「ブロッククロージャの実行環境は無名メソッドコンテキスト」ということで
いいような気がします。そうならば #valueWithExit は成り立ちそうですか?

7. については BlockClosure にたとえば #valueWithExitValue を

valueWithExitValue
 ^self value: [:val | ^val]

…のように定義すれば、次のようにして nil 以外の任意の値を戻り値にすることができます。

[:exit | (1 to: 10) do: [:each | each = 5 ifTrue: [exit value: each]]] valueWithExitValue

このことは両者に違いのないことの参考になりますか?
600デフォルトの名無しさん:2009/03/28(土) 21:47:43
>>598
7. はとりあえず動くようです。
5. 環境はVWなのですが、内容的に理解できました。
ありがとうございました。

>>599
大分すっきりしました。
結局ブロッククロージャを実行すれば新たにメソッドコンテキストを生成するという理解でいいわけですよね?
であればvalueWithExitがきちんと機能するのもよく分かります。

丁寧なサンプルありがとうございます。
違いがないことがはっきりと分かりました。
>>590
>nilがバイトコードにおいて特殊なだけです
というところにひっかかっていました。
ありがとうございました。

・・ところでインライン展開をする理由というのは
パフォーマンス向上のためだけなんでしょうか。
メソッドコンテキストを生成するコストを省くためという目的以外に
何か考えられることはありますか?
601デフォルトの名無しさん:2009/03/29(日) 02:10:54
>>600
ヒント
whileTrue:
602デフォルトの名無しさん:2009/04/01(水) 01:42:54
SmallTalk始まったな
http://smalltalk.smalltalk-users.jp/
603デフォルトの名無しさん:2009/04/01(水) 02:43:10
>>602
やるじゃん
604デフォルトの名無しさん:2009/04/01(水) 03:09:29
作り込み具合が(・∀・)イイ!
605デフォルトの名無しさん:2009/04/01(水) 06:11:17
いろいろな意味で感心する。
ここまでやってくれると逆にツッコミが入れづらいw
とりあえず今日という日を忘れないよ。
606デフォルトの名無しさん:2009/04/01(水) 13:21:47
>>602
Smalltalkじゃなかったっけ
607デフォルトの名無しさん:2009/04/01(水) 14:33:55
>>606
そこもツッコミどころだが・・・・・
608デフォルトの名無しさん:2009/04/01(水) 21:46:44
御大はどっちでもいいって言ってるんでしょ?

ともかく、俺はダウンロードして実行してサンプルを Alt+d くらいはしてみたけど、>>603-605 のようなことを言えるほどには真面目に見なかった。彼らに感服。

p とかは有難いね。
これが AOP 的だとさらに濡れ濡れなんだけど。
609デフォルトの名無しさん:2009/04/01(水) 23:56:26
>>607
ごめん、リンク先見る前に反応してしまった
610デフォルトの名無しさん:2009/04/02(木) 11:43:30
んで4月2日になったわけだが・・・・
611デフォルトの名無しさん:2009/04/02(木) 18:36:07
http://smalltalk.smalltalk-users.jp/oshirase/osawagaseshimashita
グッドジョブ!
拍手パチパチパチ・・・・・・・
612デフォルトの名無しさん:2009/04/02(木) 20:22:30
とりあえずVWにpをアバウトに実装してみた
これはこれで便利。
613608:2009/04/03(金) 15:06:07
何も分かってないこと丸分かりでこっぱずかしw
614デフォルトの名無しさん:2009/04/11(土) 09:21:35
妙にgotoの実装が流行ってるな・・・
615デフォルトの名無しさん:2009/04/11(土) 14:17:58
構造化言語前に逆戻り?先祖帰りかw
616デフォルトの名無しさん:2009/05/10(日) 00:31:10
squeakのマスコットって名前とかあるんですか?
顔が決まってるだけですか?
生まれとか星座とか好きな食べ物とかのキャラ立ち上がってますか?
617デフォルトの名無しさん:2009/05/10(日) 21:03:23
ははは
618デフォルトの名無しさん:2009/05/11(月) 00:21:40
こやつめ
619デフォルトの名無しさん:2009/05/11(月) 11:54:46
Visualworks 7.6NCでemacsと連携取る方法って何かありますか?
620デフォルトの名無しさん:2009/05/11(月) 13:35:11
自己レスですが
ParagraphEditorを掘っていたら

1. UIFeelPolicyの下にEmacsFeelPolicyなどを作ってdispatchをそこで定義しておく
DefaultFeelPolicyはEmacsFeelPolicyを返すようにする

2. ParagraphEditorのfeelPolicy: に直接EmacsFeelPolicyを与えてdispatchTableを取り込ませる

の2通りでうまくいきそうな気がしてきました。
しかし1. でシステムクラスのDefaultFeelPolicyを書き換えるのはちょっと怖い気がします。
2. は生成されるParagraphEditorのインスタンスに常に適用させる方法がわかりません。

何か助言があったらお願いします。

621デフォルトの名無しさん:2009/05/11(月) 23:31:10
>>620
MagicKeyパーセルをロードして参考にすればいいと思うよ
622デフォルトの名無しさん:2009/05/12(火) 10:48:38
>>621
探し方が悪いのか見つかりませんでした。
Cincomサイト内の検索もやってみましたがヒットしないので
ヒントあればお願いします。
623デフォルトの名無しさん:2009/05/12(火) 12:55:16
>>621
VW7.6が持ってました。
load parcelして掘ってますが
(SCG.MagicKeys.FeelPolicyEditor new feelPolicy: SCG.MagicKeys.MagicFeelPolicy currentFeelPolicy copy) open.

とかやるとそれっぽいです。
しかしどの辺から手をつければいいのか・・
624デフォルトの名無しさん:2009/05/13(水) 23:54:01
>>623
ちなみに、System-Settings-Look and Feelからでも同じのが開く。

そこでMagicKeysのkey mappingでやれる範囲で満足するか、
ParagraphEditorの実装や拡張部分を参考にしつつ自分で実装するか、
どちらかでは?
625デフォルトの名無しさん:2009/05/14(木) 01:40:49
emacsのプロセスと通信するとかそういう話じゃないのか
626デフォルトの名無しさん:2009/05/14(木) 13:48:30
>>624
そもそもMagicKeyでマッピング変更してacceptとか押すとトラップするんで
使い方がよくわからないというか・・
現状のスキルだと追いきれなくて頓挫してます。

>>624
できればその方がいいけれども現実的じゃなさそうなので・・
627デフォルトの名無しさん:2009/05/15(金) 12:17:47
SqueakのソースをiPhoneで読む電子書籍「Squeak Docs」
http://journal.mycom.co.jp/news/2009/05/14/075/index.html
628デフォルトの名無しさん:2009/06/11(木) 11:20:52
質問です
VW7.6NCで
(Dialog requestFileName:'' ) inspect.
とかするとファイラーが立ち上がって選択したファイルのパスが得られますが
複数ファイルを選択できるようするにはどうしたらよいですか?
629デフォルトの名無しさん:2009/06/16(火) 01:08:50
FileDialog requestFileName: '' default: '' version: #multipleOld ifFail: [''] for: nil
630デフォルトの名無しさん:2009/06/17(水) 11:59:40
>>629
動きましたありがとうございます。
FileDialogを掘ったらMultiOpenFileDialogなんていうのもあるようなので
以下のようにしてみました。

| aDialog |
aDialog := MultiOpenFileDialog new.
aDialog open ifTrue:[ (aDialog selections ) inspect ] ifFalse:[ Dialog warn:'canceled' ].

クラスブラウザでなんとなく*Dialogとか打ち込んでみたら正規表現が効いていてびっくり。
631デフォルトの名無しさん:2009/06/20(土) 12:40:38
Scratchのユーザーって少ないんですか?
スレもないし、ここでも話題にならないですね。
632デフォルトの名無しさん:2009/06/20(土) 15:04:39
GNU Smalltalk 3.1のインストール方法が分かりません
どなたか教えて下さいませんかorz

http://smalltalk.gnu.org/
633デフォルトの名無しさん:2009/06/20(土) 16:01:31
>>632
オケ。特別に Mac OS X へのインストール方法を教えて進ぜよう。

% mkdir gst
% cd gst
% curl -# -O ftp://ftp.gnu.org/gnu/smalltalk/smalltalk-3.1.tar.gz
% tar zxf smalltalk-3.1.tar.gz
% cd smalltalk-3.1
% ./configure --prefix=${HOME}/gst
% make
% make install

使い方はこうじゃ。

% ~/gst/bin/gst
GNU Smalltalk ready

st> 'hello' printNl
'hello'
'hello'
st>
634デフォルトの名無しさん:2009/06/20(土) 16:13:07
ついでに Smalltalk YX のインストール方法。

% mkdir ~/syx
% cd ~/syx
% curl -# -O http://syx.googlecode.com/files/syx-0.1.7.tar.gz
% tar zxf syx-0.1.7.tar.gz
% cd syx-0.1.7
% ./configure --prefix=${HOME}/syx --disable-gtk
% make && make install

そして使い方。

% ~/syx/bin/syx
Smalltalk YX 0.1.7 is ready.
Type "help!" to get help.
> 'hello' printNl !
'hello'
'hello'
>
635デフォルトの名無しさん:2009/06/20(土) 16:43:31
>>633
>>634
ありがとうございます!
smalltalkを使い始めてこの一週間こんなに早く的確に
欲しい情報に近づけたことがなかったのでなんか感動しました。

自分はWindowsでインストールするのでこの手順を脳内で変換
して実行させたいと思います。
初心者なため少々時間がかかってしましますが後にご報告に参ります。

636デフォルトの名無しさん:2009/06/20(土) 16:56:28
>>635
Windows ですか...
Windows なら Squeak にしておいた方が良いと思いますよ。
それか Smalltalk YX なら Windows 用のバイナリも用意されています。

http://code.google.com/p/syx/

Smalltalk みたいなマイナー言語に取り組みたいなら Windows は
向いていないと思います。
637デフォルトの名無しさん:2009/06/20(土) 17:44:17
GNU Smalltalkも最新版には超かっこいいGUIがはいってる
638デフォルトの名無しさん:2009/06/20(土) 18:42:22
>>636
>Smalltalk みたいなマイナー言語に取り組みたいなら Windows は
>向いていないと思います。

どうしてだろう? 逆に Windows のほうが処理系の選択肢も広くていいと思うんだけど。
あと何故あえて Squeak なのかな。Win なら IDE の見栄えも出来もいい Dolphin もあるし、
入門書に「Smalltalkで学ぶオブジェクト指向プログラミングの本質」を買ってくれば
付録 CD-ROM からWin版VisualWorksをドラドロでインストールできてお手軽かとも。
639デフォルトの名無しさん:2009/06/20(土) 19:13:01
>>638
プロプラの製品だと弄れる範囲や使える範囲が制限されているから。
ディスコンになったらお手上げだしね。
640デフォルトの名無しさん:2009/06/20(土) 20:59:36
632です。

Windowsへのインストール断念しました。
というより素直にMacにインストールした方が良いと考え直しました。
月曜日に社内にMacがあるか探したいと思います!

>>636,637,638,639
ここは本当に情報の宝庫ですね。今まで知らなかったのが悔やまれます...
Smalltalkの勉強会も開催されているみたいですし参加してみようと思います!

とあるシステムを動かそうとこの一週間あがいてきました。
もう手はないのかと諦めていましたが皆さんのおかげで新たな道が見えてきました。
本当にありがとうございます!

それでは駄文失礼致しました。
641デフォルトの名無しさん:2009/06/20(土) 21:41:25
俺もSmalltalkの勉強会にいきたいのだが、まともにつくれないので足踏みしてる。
642デフォルトの名無しさん:2009/06/20(土) 22:43:35
>>641
気にせずどんどん行ってみればいいとおもうよ。未経験者であることと、他言語でのスキル、
どんなことに興味があるかはじめに言っておくと対応してもらえるかと。
643デフォルトの名無しさん:2009/06/21(日) 00:20:31
ハブられるのはいやづら・・
644デフォルトの名無しさん:2009/06/21(日) 09:39:47
じゃあ、基本的だと考えていることはここで訊いて解決してから行けばいいよ。
645デフォルトの名無しさん:2009/06/21(日) 10:31:52
"!"ってsmalltalkでは意味のある記述なのでしょうか?
ただ文字化けしてるだけかもしれないのですが...
646デフォルトの名無しさん:2009/06/21(日) 12:46:21
>>645
! は chunk 形式の区切り文字です。
chunk 形式は Smalltalk の式を入力する方法の一つです。

言い換えると、Smalltalk において ! が意味を持つ場合と
そうでない場合があって、意味を持つ場合と言うのは
chunk 形式で入力している場合です。文字化けではありません。
647デフォルトの名無しさん:2009/06/21(日) 13:57:29
言語としてSmalltalkの文法には含まれていない。
Smalltalkの環境によっては!を入力の区切りに使うことがあるというだけ。
648デフォルトの名無しさん:2009/06/21(日) 13:58:37
>>646
なるほど誤った記述ではなく、stファイルで使われる形式なのですね。

!Animal methodsFor: 'actions'!
talk
self display: '...cannot talk...'! !

”chunk”で調べて、”!”で区切っている所はSmalltalk内で一つのオブジェクトとして
存在するクラスということが分かりました。
しかし最後の行の半角スペースが”!”で区切られているのが解せません。

”!”は手書きではなく自動でセットされる類のものだからでしょうか...
もう少し調べて出直して来ます。
ご助言ありがとうございました!
649デフォルトの名無しさん:2009/06/21(日) 15:05:55
>>648
普通にブラウザ上でSmalltalkプログラミングをしてるときはchunkなんて意識しないよ。
ファイルにソースコードを書き出したときに勝手に入るだけ。手で"!"を入れるのは普通じゃない。
650デフォルトの名無しさん:2009/06/21(日) 15:46:05
>>649
そうなのですか、なるほど解決しました!
ありがとうございました!
651デフォルトの名無しさん:2009/06/21(日) 20:14:13
'nijiura' replaceAll:$u with:$p

が効かない理由がやっとわかったわ・・
String族はimmutableだからなのか・・
652デフォルトの名無しさん:2009/06/21(日) 20:37:35
リテラル式で生成された文字列だからではなく?
653デフォルトの名無しさん:2009/06/21(日) 20:48:06
VisualWorksで.im形式のファイルの使い方が分かりません。

ファイルを取り込んだら文字化けしてしまいます。
Windowsでは使えない機能なのでしょうか。
654デフォルトの名無しさん:2009/06/21(日) 20:59:35
>>653
virtual machine(visual.exe)にvirtual image(.im)をのせるとVisualWorksが起動する。

>ファイルを取り込んだら文字化けしてしまいます。

いったい何をしようとしたの?
655デフォルトの名無しさん:2009/06/21(日) 21:36:06
>>652
リテラルというより8rや16rが混在できるからimmutableなのかな?よくわからん
copyReplaceAll:with:の方が要素にStringも使えるし便利だった。
656デフォルトの名無しさん:2009/06/21(日) 21:53:25
とある操作説明書に特定の.st形式ファイルを4つ"file in"する手順があるのですが、

毎回4つ"file in"するのは難儀なので、最初に4つのファイルを
"file in"した時点で.im形式でその状態を保存して操作を簡略化しましょう。

ということが書かれていました。
なのでその時に作成した.im形式のファイルを取り込めば4つのファイルを
"file in"した状態から始められるものだと思ったのですが...
657デフォルトの名無しさん:2009/06/21(日) 21:58:44
すみません>>656の書き込みは
>>654様に向けたものです。
658デフォルトの名無しさん:2009/06/21(日) 22:32:57
>>657
.stに日本語は含まれてる?
日本語環境はインストールした?
.stはXML形式?
file inはできてたの?
VisualWorksのバージョンは?
VisualWorksはどうやって起動してる?
VISUALWORKS HOMEは設定した?
659デフォルトの名無しさん:2009/06/21(日) 23:35:58
>>658
・.stに日本語は含まれていません。
・日本語環境はインストールしておりません。
・すみませんXML形式か判断できませんでした。
 普通は何形式で記述されるものなのでしょうか...
 古いファイルなので1997年頃に流行っていた形式だと思います。
・file inはエラーにならなかったので出来たと解釈しました。
・VisualWorks7.6を使用しています。
・VisualNCというアイコンをクリックして起動しております。
・VisualWorks Homeは、home directoryをVisualWorksをインストールした
 ディレクトリを指定して設定し、その他は基本的にデフォルトのままです。

ご迷惑おかけしております。
夜分に大変失礼致しました。

660デフォルトの名無しさん:2009/06/22(月) 01:20:56
>>659
その頃のVisualWorksとは2世代違うので、ちゃんとfile inできていないと予想。
file in後は動作してる?
ブラウザで見たらその部分のソースコードが変になってない?
661デフォルトの名無しさん:2009/06/22(月) 02:15:52
>>660
夜分に本当にすみません。

たしかにfile inが出来ていない気がしています。
Smalltalkの文法が分からないのでソースコードの変化を
見るのを怠っていました。
現在手元にソースが無いので、本日その点を
確認したいと思います。

file in後の次の手順がまだ理解できていないため、
file in後の動作は未確認です。申し訳ありません。

それと当時はSmalltalk-80 で動かしていたようです。
やはりVisualWorksのバージョンが当時と違うという
のがよくないのですね。
ですが当時のVisualWorksはもうないですよね...

ご助言ありがとうございました!
662デフォルトの名無しさん:2009/06/22(月) 13:02:08
知ったかぶりしてないで何がわからないのかはっきりさせて書けよ
663デフォルトの名無しさん:2009/06/22(月) 19:07:07
それよりエスパーの登場をだな・・
664デフォルトの名無しさん:2009/06/22(月) 19:15:45
>>655
リテラルを直にいじろうとしないでコピーを作れば普通に出来るよ。VW7.6 だけど。

'nijiura' replaceAll: $u with: $p "=> Core.NoModificationError "
'nijiura' copy replaceAll: $u with: $p "=> 'nijipra' "

つーか、みんな、環境(Smalltalk処理系とバージョン)くらいは書こうよ。^^;
665デフォルトの名無しさん:2009/06/23(火) 08:32:55
666デフォルトの名無しさん:2009/06/23(火) 21:53:46
VW7.6NCで端末エミュレータみたいなのはありますか?
cshOne:を使うとかじゃなくて。
667デフォルトの名無しさん:2009/06/23(火) 22:16:04
英語でおk
668デフォルトの名無しさん:2009/06/24(水) 13:21:37
>>666
GUIを介さずにコマンドラインから使いたい、とかではなく?
669デフォルトの名無しさん:2009/06/24(水) 21:51:22
>>668
VW7.6NCで実装された端末エミュレータがあれば連携もできそうだし
使ってみたいと思って。
670デフォルトの名無しさん:2009/07/03(金) 11:50:17
保守
671デフォルトの名無しさん:2009/07/27(月) 22:50:12
第1回Smalltalkハッカソン - 時を超えたオブジェクトとの遭遇
日時: 2009/8/8(土) 13:00-18:00
場所: 株式会社フルネス トレーニングルーム
http://www.smalltalk-users.jp/Home/gao-zhi/smalltalk-hackathon-1
672デフォルトの名無しさん:2009/07/28(火) 06:59:48
幻の言語てどういうこっちゃ
673デフォルトの名無しさん:2009/07/28(火) 08:22:35
木曜スペシャル
674デフォルトの名無しさん:2009/07/28(火) 17:00:32
Smalltalkはアイヌ語みたいなものだったのか?
675デフォルトの名無しさん:2009/07/28(火) 17:40:23
てかハッカソンってなによ
676デフォルトの名無しさん:2009/07/28(火) 21:22:44
677デフォルトの名無しさん:2009/07/28(火) 23:22:27
ハッキングマラソン?
678デフォルトの名無しさん:2009/08/05(水) 00:29:41
VisualWorksを日本語対応にしたいです。
下のサイトとかを参考にしたんですけど上手くできませんでした。
http://www.sra.co.jp/people/h-asaoka/study/JapaneseEnvInstall/Jpl7x/index.html

日本語対応の設定は結構難しいことなのでしょうか。
679デフォルトの名無しさん:2009/08/05(水) 08:21:18
えっ
680デフォルトの名無しさん:2009/08/05(水) 17:53:22
681デフォルトの名無しさん:2009/08/06(木) 23:42:37
>>680
VisualWorksの日本語対応に成功しました。
ありがとうございました。
682デフォルトの名無しさん:2009/08/07(金) 07:52:36
えっ!?
683デフォルトの名無しさん:2009/08/07(金) 11:00:41
なにそれこわい
684デフォルトの名無しさん:2009/08/07(金) 17:37:53
VisualWorksですが

メソッドをこう定義して
element:aData

aData := 'points'.

^self

とかやってsaveしようとすると
Attempt to store into argument
と出てaDataを書き換えられないような感じです
VisualWorksは引数の書き換えを禁止しているのですか?
逆に引数の書き換えをするにはどう書けばいいのでしょう。
685デフォルトの名無しさん:2009/08/07(金) 18:41:32
thisContext localAt: 1 put: 'points'.
686デフォルトの名無しさん:2009/08/07(金) 19:45:57
なんとなく分かったような気もしますが
もっとスマートに書き換える方法はありませんか?

それともVisualWorksでは引数の書き換えを使うのではなく
まったく違うアプローチが推奨されているのでしょうか。
リストを返して呼び出し元でat:1 at:2とかで評価することも考えましたが
それって根本的におかしい気もします。

^#(4789 7 9108 46 49)
687デフォルトの名無しさん:2009/08/07(金) 19:55:31
何に引数の書き換えを使おうとしていらっしゃるのか、
何にアプローチしようとしていらっしゃるのか、
そもそも引数の書き換えといって何を意味していらっしゃるのか、
その辺を明らかにしていただけないとなかなか回答がしにくく御座います。
スマートさで申し上げればちょうちょを使うのが一番スマートだとおもいます。
http://xkcd.com/378/
688デフォルトの名無しさん:2009/08/07(金) 20:02:56
>>687
例えばこんな感じです。
void func(int *a , int *b) {
*a = 46;
*b = 49;
}

引数が呼び出し先で書き換えられることを前提にした書き方はかなりの頻度だと思いますが
逆にVisualWorksでそれは基本的にやってはいけないことだとするなら
上記のようなケースではみなさんはどう書いているのですか?
689デフォルトの名無しさん:2009/08/07(金) 20:29:36

でもって今書いているのはこんなものです。
呼び出し元でn1,n2,d1を使用しているので呼び出し先で書き換えてくれないと困るというか・・
VisualWorksではもっと適切な書き方があるんでしょうか?

patternNND:aString name:n1 name:n2 digit:d1

| m |
m := RxMatcher forString:'¥s*(¥w+)¥s+(¥w+)¥s+(¥d+)¥s*'.
( m matchesPrefix:aString) ifFalse:[^False].
n1 := m subexpression:2.
n2 := m subexpression:3.
d1 := m subexpression:4.
^True.

690デフォルトの名無しさん:2009/08/07(金) 21:08:33
ああそういうことなら
n1 become: (m subexpression: 2).
とか書けばいいです。become:はポインタの指す先を入れ替えるメッセージです。
超便利なので使いまくりましょう。

あとTrue, Falseはクラス名なので真偽値をあらわすにはtrue, falseと小文字で書きます。
691デフォルトの名無しさん:2009/08/07(金) 21:19:27
早速修正してみます!
ありがとうございました!
692デフォルトの名無しさん:2009/08/08(土) 14:39:32
>689
この場合はbecome:を使うまでもなく、センダ側で、

arrayOfPattern := Array with: aString with; n1 with: n2 with: d1

みたいにして引数の配列を作っておいて、

patternNND: arrayOfPattern

で呼べばいいのでは。受け取った側では、

arrayOfPattern at: 2 put: (m subexpression: 2).

みたいにして書き換えます。名前付がいいなら配列じゃなくて辞書にする
とか、パタン自体がオブジェクトになる可能性も検討すべきかと(本当に
必要かどうかは設計の問題)。

become:は強力すぎるので、その使用は最低限にすべきでしょう。
693デフォルトの名無しさん:2009/08/08(土) 15:57:51
694デフォルトの名無しさん:2009/08/08(土) 19:45:47
>>693
オーバーライド系のメソッドは情報隠蔽のメリットを失わせてしまうので、
これも非常手段でしょう。
695デフォルトの名無しさん:2009/08/09(日) 06:26:49
>>692
ダメだよそれじゃ。
配列なんかで渡したら、各パラメータの意味がわかりにくいでしょ?
Perlじゃあるまいし。
漢なら、パラメータは辞書渡し。これならオプション引数まで扱える。
これを使いこなしてこそ、Smalltalker中のSmalltalkerと言える。
696デフォルトの名無しさん:2009/08/09(日) 09:27:57
>>695
最後の1行だけが余分w
697デフォルトの名無しさん:2009/08/09(日) 11:50:06
漢の中の漢、ならまだ意味が通る
698デフォルトの名無しさん:2009/08/09(日) 16:52:58
>>695
真のSmalltalkerだったら辞書なんか使わずにクラス作るよ。
699デフォルトの名無しさん:2009/08/09(日) 18:36:16
>>697
ValueHolderを使えというわけですね
わかります。
700デフォルトの名無しさん:2009/08/09(日) 21:02:09
可読性考えるとbecome一択だな
701デフォルトの名無しさん:2009/08/09(日) 21:08:13
become:のセンダサーチをして、なんでこんなに用例が少ないか考えるべき。
702684:2009/08/09(日) 22:23:41
色々と試行錯誤してみましたが
なかなかうまくいきません・・

>>685
コンテキスト内は有効みたいですが、呼び出し元でinspectしても
値はまったく変化しないようです。
これではちょっと・・

>>690
becomeはmodifyエラーが出て使えませんでした。
どんな時に有効か教えて頂けませんか?
これで解決するなら本当にありがたいです。

>>692 >>695
配列や辞書渡しは勘弁して下さい・・

>>699
呼び出し元でaValue := (ValueHolder with:aObj)で渡し
呼び出し先でaValue setValue:'ex'. とかすると
呼び出し元でaValue value inspectで正しく変化していることが確認できました。

とはいえ引数をValueHolderでラップして渡すまでもなく
直接変更を加えたいというのが本音なので・・

そもそもどうして引数に対し := で直接書き換えさせてくれないんでしょう。
不便で仕方がないと思うんですが・・
何か理由があってこうしてるんですか?
703デフォルトの名無しさん:2009/08/09(日) 23:04:02
マジレスしよう
…そのプログラム全部うpれ
704684:2009/08/09(日) 23:19:15
>>703

>>685の場合は
test:aObj
thisContext localAt:1 put:'ex'.
^self

呼び出し元で aObj inspect -> 変化なし

>>690の場合も同じように
test:aObj
aObj become:'ex'.
^self

modifyエラーが出て進みません。

>>699の場合
aValue :=(ValueHolder with:'before').

test:aValue
aValue setValue:'after'.
^self

呼び出し元で確認
aValue value inspect ->'after'になっている。
705デフォルトの名無しさん:2009/08/10(月) 07:42:14
>>702
なんだよ、呼び出し元にも変更を波及させたいのかよ。
参照渡しがしたければ、始めからそう言えばいいのに。
706デフォルトの名無しさん:2009/08/10(月) 12:42:45
707デフォルトの名無しさん:2009/08/10(月) 17:52:32
>>706
それはポインタの値渡しであって、参照渡しではないと思うが。
aやbの内容が変化するわけじゃないだろ?
708デフォルトの名無しさん:2009/08/10(月) 19:11:14
int x,y;
x=0;
y=0;
func (&x,&y);
printf ("%d,%d\n",x,y);
とすれば46,49とと出力されるはず
709デフォルトの名無しさん:2009/08/10(月) 20:19:47
Cには参照渡しがないので、ポインタで代用するわけだが。
710デフォルトの名無しさん:2009/08/11(火) 08:18:12
>>708
引数はxとyじゃなくて、&xと&yだろ?
で、func(&x, &y)で&xや&yが変化するわけじゃない。
つまり参照渡しではないし、func内で引数に代入しているわけでもない。
単に&xや&yから得られる情報に従ってメモリを操作しているだけ。
711デフォルトの名無しさん:2009/08/11(火) 12:39:30
>>710
>>702は参照渡しでもポインタ渡しでも
目的達せられればそれでよさそうだけどなw

>>684は参照狙い
>>688はポインタによる操作
712デフォルトの名無しさん:2009/08/12(水) 18:36:43
ハッカソンはどうだったの?
713デフォルトの名無しさん:2009/08/22(土) 18:41:12
Kent BeckもRubyに流れたwww
714デフォルトの名無しさん:2009/08/26(水) 20:30:38
任意レベルの脱出ができるvalueWithExitの使い方ってありますか?
[ ^nil ] method inspect すると
2 <DE 01> outer(1) method return

なので
outer(n) method return になるようなコードが知りたいのですが・・
715デフォルトの名無しさん:2009/08/27(木) 20:10:17
valueWithExitに拘らなければできます
716デフォルトの名無しさん:2009/08/28(金) 13:18:35
>>715
具体的におながいします
717デフォルトの名無しさん:2009/09/08(火) 10:44:21
718デフォルトの名無しさん:2009/09/08(火) 12:43:13
>>717

「Rubyなどのスクリプト言語(高級言語)で「クロージャ」などと
呼ばれている機能」のところ? 別にいいじゃん。
719デフォルトの名無しさん:2009/09/22(火) 23:07:00
Pharo インスコしてみたけど、動作が凄いもっさりしてるね…
Emacs + elisp とか WebKit + JavaScript みたいな、常用出来る
プログラミング環境になってくれると嬉しいんだけど…
720デフォルトの名無しさん:2009/09/23(水) 08:54:47
クラスライブラリがしょっぱいとどうにも
721デフォルトの名無しさん:2009/10/23(金) 00:50:21
>>704
結局ValueHolder使えば希望する事は出来たって事ですよね。

>>702
>そもそもどうして引数に対し := で直接書き換えさせてくれないんでしょう。
>不便で仕方がないと思うんですが・・

一度も不便を感じた事がないけど、なぜ書きかえれないだろう?
722デフォルトの名無しさん:2009/10/23(金) 01:01:17
>>721>>704じゃないよね?
「書き換える」という表現で、Smalltalkの仮想マシンのどんな動作を自分が思い描いているのかよく考えてみるといいかも
723デフォルトの名無しさん:2009/11/06(金) 06:31:25
pharoタソサイコオォォォォオオオォォ!!!

ふう、やれやれ。おぢさん疲れちゃった。
724デフォルトの名無しさん:2009/11/06(金) 12:34:43
ゆっくり休むといいよ
725デフォルトの名無しさん:2009/11/10(火) 18:41:10
RIP
726デフォルトの名無しさん:2009/11/13(金) 00:41:43
www.strongtalk.org が無いと思ったら http://code.google.com/p/strongtalk/ で続けてるのね。
Mac OS X にもポーティングが進んでるみたいなので今度試してみようと思った。
727デフォルトの名無しさん:2009/12/01(火) 07:39:45
>>721
結局手間ばかりかかってどうしようもなく不便で仕方がないのでVisualWorksからすっかり遠ざかってしまいました。

math libraryみたいにどうしても関数として扱いたい場合が出てくるので
MathLibClass func(&a,&b,&c) みたいなことが気軽に書けないのが致命的でした。
個人的には出来ない訳がないと確信していた分だけに落胆しています。
その筋の某氏にもお尋ねしてみたのですが、そうする必要がないのですよとか禅問答みたいな流れになってしまい
代案等適切な指導が頂けませんでした。

ネームスペースも異なる任意のオブジェクトから上記みたいなことをしたい場合ってかなりあると思うわけですが
現状のVisualWorksだとValueHolderをいちいち作って渡してローカル変数へ戻すか、リストを戻り値にしてローカル変数へ戻すとか
手間をかける以外に解決する方法がありません。
シェア変数やグローバル変数で解決するなどといった野暮な手法もどうかと思うし
適当なモデルを渡してset getなどもはや論外でして・・

VisualWorksでどこまでやれるのか興味はあったのですが
ImageReaderのdisplayFromFileを触った時に色んな意味で完全に吹っ切れました。
今は相変わらずObjective-CとBoostな毎日です。
728デフォルトの名無しさん:2009/12/16(水) 16:57:37
smalltalkの世界(オブジェクトとメッセージ)の人にとって
> func(&a,&b,&c) みたいなことが気軽
は気軽にやりたいことではないってこと

>math libraryみたいにどうしても関数として
関数というよりも手続きだよね?
関数と言うならLispでの多値を求めた方がよいのでは
729デフォルトの名無しさん:2010/01/05(火) 23:52:10
Squeak と Emacs って似てるよね。
どっちもプログラムで拡張可能な作業環境を提供していて、
どちらも古い実装を引きずってる。Squeak は Smalltalk-80 が
ベースで、Emacs は MacLisp がベース。ANS Smalltalk や
ANSI Common Lisp とは仕様が違う。両方ともレキシカル
バインディングが出来なくて、Smalltalk だと代わりに Pharo が
あって、Emacs だと lexbind がある。
730デフォルトの名無しさん:2010/01/06(水) 13:16:42
>>729
「梅村恭司先生の考える道具としてのMacintosh/HyperCardでは、
SmalltalkとHyperCard、Emacsを同列に論じています」
http://squab.no-ip.com:8080/morphiclesson/21
731デフォルトの名無しさん:2010/01/06(水) 19:19:00
HyperCard も良いですよね。ディスコンになってしまったのが残念。
732デフォルトの名無しさん:2010/02/13(土) 20:27:20
Squeak 4.0 になったらクロージャとネイティブコンパイラは入るのかしら
733デフォルトの名無しさん:2010/02/27(土) 17:51:06
ライセンス関連だけじゃないの?
仕様の話は話題になってないし
734デフォルトの名無しさん:2010/03/18(木) 05:23:18
マルチメディア機能を備えたSmalltalk実行環境「Squeak 4.0」が登場
http://sourceforge.jp/magazine/10/03/17/030214

ライセンス関係だけでした
735デフォルトの名無しさん:2010/03/22(月) 19:08:10
すみません
iPhoneAppでSqueakは無いでしょうか
736デフォルトの名無しさん:2010/03/22(月) 21:10:55
>>735
http://www.atmarkit.co.jp/news/200901/29/mono.html
「任意のコードを実行できるランタイムを配布パッケージに含めることを、
セキュリティ上の理由からアップルが禁じているからだ。」

ということでSqueak自体を配布するのは無理。
737デフォルトの名無しさん:2010/03/22(月) 21:57:24
>>736
何と無くそんな気はしてましたが
やっぱり無いですか。。。

jbしたら有るよ とかも無いのでしょうか?
有るならjbに挑戦しても欲しいです
738デフォルトの名無しさん:2010/03/22(月) 22:19:01
>>737
http://isqueak.org/HomePage

Jail Break ではなく、開発中のテストと称して自分の iPhone に
アップロードして動かしているらしいよ。違ってたらスマソ。
739デフォルトの名無しさん:2010/03/22(月) 23:30:37
>>738
まさにそんなのです‼
これ、DLしたらどうやってiPhoneに入れるんだろ。。。
取り合えず自力で行ける所までやって見ます
740デフォルトの名無しさん:2010/03/23(火) 00:11:51
もしJBせずに使うなら開発者のJohn M McIntoshさんに
UDIDを送ってお願いする必要があります。
741デフォルトの名無しさん:2010/03/23(火) 00:15:18
>>736
そうなんですが、Scratchで穴が開いたような気がしなくもないような。
Appleは気づいてないのか。
742デフォルトの名無しさん:2010/03/23(火) 05:36:59
iPhone上で動くプログラム電卓がありますが、機能が限られているから
OKなのでしょうか。iPhone上で動くように機能制限したSqueakというのは
有り得るでしょうか。
743デフォルトの名無しさん:2010/03/23(火) 07:51:24
>>740
え、そうなんですか。。。
道理で昨日頑張ってもだめだったわけですね

英語苦手だから迷いますね。。。
744デフォルトの名無しさん:2010/03/23(火) 17:50:48
>>742
その限界がSmalltalk Consultingが売ってるiSqueakベースの
アプリ群だと思うよ。
ただ、ScratchはApp Storeの検閲なしで好きなプロジェクトを
動かせるし、その気になればインタプリタも書けるので、いずれ
消されるような気もする。
745デフォルトの名無しさん:2010/04/11(日) 15:25:29
Squeakって今、どんな感じに開発進んでますか?
個人的にネームスペースとpublic/privateが他言後に比べて弱かったので、一度離れたのですが。。。
746デフォルトの名無しさん:2010/04/11(日) 21:28:39
public/privateって・・
747デフォルトの名無しさん:2010/04/12(月) 13:41:33
>>746
言い方が悪かったですか。。。
メソッドは事実上全て公開するという仕様に不安が有って
公開/非公開を選択出来たらな。。。と思っていたので

その辺が改善されたのか気になった次第です

748デフォルトの名無しさん:2010/04/12(月) 13:54:17
問題ないよ
749デフォルトの名無しさん:2010/04/12(月) 14:21:17
>>748
問題無いとは?
私の記憶ではprivateカテゴリに入れても「内部用メソッドだから使わないでね?」って意図で置かれるだけで外部のクラスからも使えていたと記憶してますが。。。

せめて、この部分だけでも外部のクラスから使えない様になっていれば。。。

と当時は思っていたのです

大丈夫とは、この点が改善されたと解釈して良いのでしょうか?

長文すみませんでした
750デフォルトの名無しさん:2010/04/12(月) 14:21:54
>>747
たぶん言い方じゃなくて、そもそもの考え方だろうね。Smalltalk にそぐわないのは。

独裁者言語や委員会言語と違って、本当に必要なら自分で作って広めればいい…という
側面もあるので、改善されるまで使わないとか言っていると、なんだかなーって思われる罠。

ちなみに Squeak Smalltalk には、セレクタ名を pvt から始めると、レシーバーに
self 以外許さない(コンパイル時にはじかれる)というバグ、もとい仕様がある。これトリビアね。

くわしくは #pvtCheckForPvtSelector: を参照のこと。
751デフォルトの名無しさん:2010/04/12(月) 17:48:08
>>750
なるほど
そう言う所からイジれるんですね

トリビア、目からウロコです

久し振りに弄って見ます
752デフォルトの名無しさん:2010/04/12(月) 17:51:18
>>749
privateみたいな機能を実装するのはたいした手間ではないという点に加えて、

>せめて、この部分だけでも外部のクラスから使えない様になっていれば。。。

なっていればどうだというのか、よく考えてみて欲しい。
Smalltalkにそのような機能が標準では存在せず、しかし巨大なソフトウェアが
Smalltalkで開発されているということは、privateのような機能を標準では必要としない
プログラミングのスタイルがSmalltalkにはあると言うこと。
良くも悪くも特殊な環境なので、他の言語での経験をそのまま持ってこようとすると失敗する。
753デフォルトの名無しさん:2010/04/12(月) 17:52:39
あと実行時コンテキストを好きに見て弄れるような環境で、
public/privateなんて荒っぽい分け方に思考を制限するのももったいない
754デフォルトの名無しさん:2010/04/12(月) 19:43:39
>>752
>>753
なるほど
アドバイス感謝です

勉強になります
755デフォルトの名無しさん:2010/05/12(水) 02:54:27
4.1が凄いってんで、久々に落としてみた。Mac用のUniversalBinary版。OS10.4.11でPPC G3なので、これ以外の選択肢は無い。が、起動せず。

SqueakもG4じゃないと動かんかorz

#ソースからビルドできるかなぁ?(w
756デフォルトの名無しさん:2010/08/04(水) 23:23:29
757デフォルトの名無しさん:2010/08/05(木) 00:09:52
Go wwwwwwww
758デフォルトの名無しさん:2010/09/29(水) 00:49:39
759デフォルトの名無しさん:2010/09/29(水) 00:59:36
偶然とか有り円だろJK
760デフォルトの名無しさん:2010/12/07(火) 09:55:05
VW7.7.1NC for OSXで日本語表示が崩れるのなんとか直らないかな

vw.im created at 2010年12月7日 09:00:00

となるところが

vw.im created at 2010 12 7  09:00:00
           年 月 日

になる
コメントの日本語もずれまくってまずいことに。
761デフォルトの名無しさん:2010/12/07(火) 21:31:33
>>760
俺のところじゃそんなふうにはならない
762デフォルトの名無しさん:2010/12/08(水) 12:53:55
>>761
そうか・・
念のため新規に10.5の起動ボリューム作って
まっさらの状態で7.7.1NC実行してみたが変わらなかった。

7.6NCだと日本語表示にまったく問題ないんで
7.7系の問題なのかと思ってたけど
そういうことじゃないのかな。
763デフォルトの名無しさん:2011/02/15(火) 01:40:46
visualworksが落とせなくなってる
764デフォルトの名無しさん:2011/02/15(火) 19:04:04
765デフォルトの名無しさん:2011/02/16(水) 16:28:54
次バージョンから描画がCairoベースになるとか
766デフォルトの名無しさん:2011/02/27(日) 23:08:15.09
チャルメラ大行った人いるの?
767デフォルトの名無しさん:2011/03/12(土) 18:41:34.55
自由自在ゲットォ!
読・む・ぞ♪読・む・ぞ♪
768デフォルトの名無しさん:2011/03/13(日) 19:13:19.84
>>767
おめ!
むっちゃ良書だ

個人的には、入門書はもう、自由自在だけで十分
(むしろ、英訳して海外でも売れば良いのにと思う)

次のステップはSqueakとの対話やね

769デフォルトの名無しさん:2011/03/16(水) 00:54:37.00
ttp://www.cincom.co.jp/smalltalk.html
いつまでダウンしてるつもりなんだ・・
770デフォルトの名無しさん:2011/04/30(土) 07:43:38.53
自分も『自由自在Squeakプログラミング』の店頭在庫を見つけたので、確保した。
積ん読本になる予定。
771デフォルトの名無しさん:2011/05/13(金) 15:18:53.14
ほしゆ
772デフォルトの名無しさん:2011/06/04(土) 11:02:59.07
ほしゅ

773デフォルトの名無しさん:2011/06/04(土) 11:10:21.30
いつの間にか Cog VM というのがリリースされていたのか
処理性能が速くなるのは良い事だね
774デフォルトの名無しさん:2011/07/09(土) 10:37:35.92
最近あんまりニュース無いね
使っている人はバリバリ使っているんだろうか
775デフォルトの名無しさん:2011/07/09(土) 13:31:32.98
遊びでしか使ってないけど
Arduinoに信号送ってLED点滅させたりサーボモータ動かしたりしてる
DriveACarで画面のハンドル動かしたらサーボも動くとか
776デフォルトの名無しさん:2011/07/12(火) 23:29:16.76
アンドロイドきたね
777デフォルトの名無しさん:2011/08/12(金) 15:01:51.29
VisualWorksのsandbox対応ってどうするんだろうな
やらざるを得ない内容なはずだけど
778デフォルトの名無しさん:2011/10/14(金) 22:33:35.20
tablet型PC上で動かないのかな
ダイナブック構想が現実味を帯びて、目の前まできているのに
その遺伝子をついだobjective-cやjavaだけが動いている
779デフォルトの名無しさん:2011/10/14(金) 23:58:52.17
>>778
まさか電話から発展するとは当時誰が想像できたかと
780デフォルトの名無しさん:2011/10/15(土) 02:52:39.34
>>778
今でもTablet PCやiPad上で普通に動く。タッチパネルへの最適化は、OLPC XO-3あたりで。ちなみにMSのTablet PCを開発したのはAltoを設計したチャック・サッカーとバトラー・ランプソン。
781デフォルトの名無しさん:2011/11/16(水) 01:17:53.95
某所であまりsqueak/pharoの事触れると、迷惑掛かりそうなんでこっちで
ここの上のコメントを見てると、emacsと似てるみたいな話出てるけど、
僕もそんな感じしてしまった。pharoの見た目はMacOSXなのにMacOSみたいな
不思議な感じ。とりあえずpharobyexample読んでます。
pharoとsqueakの違いってわかりにくかったけど、前者のほうが仕事より
で後者が教育目的という感じなんですね。
782デフォルトの名無しさん:2011/11/19(土) 04:24:48.52
Squeakはスタート時こそ教育目的限定だったけれど、Smalltalkだったんでみんながいろんな目的で
使い始めて、機能は増えたけどいろいろと問題も増えてきたので一度整理したのがPharoかと。

ただ、使い慣れた雑然とした部屋を片付けるとよくあることだけれども、整理しきれないところや
整理したがゆえになくなったりうまく機能しなくなる部分もあったりして、じゃあ開発はPharoだけで
行けるかというとそうでもない感じ。
783デフォルトの名無しさん:2011/11/19(土) 15:41:07.49
なるほど、まだ過渡期なんだね。整備はどうしても時間がかかるから
しゃーないような気もするな。
784デフォルトの名無しさん:2011/11/19(土) 18:25:40.86
過渡期と言い続けてかれこれもう30年なわけだがorz
785デフォルトの名無しさん:2011/11/19(土) 19:16:09.59
それをかっこよく言うと「エターナル・コンピューティング」というわけですよ。w
http://tele-task.de/archive/video/flash/14029/
786デフォルトの名無しさん:2011/11/19(土) 21:21:32.81
地球が太陽に飲み込まれるまで30億年はあるんだから、焦るなって。
787デフォルトの名無しさん:2011/11/19(土) 23:13:54.17
squeakで検索したら ゲイコミュニティが引っかかった 苦笑。
788デフォルトの名無しさん:2011/11/21(月) 11:43:36.94
pharobyexampleを読んでてわからなかった所があるけど、ビデオを見て解決
した所があった。
http://www.pharocasts.com/2010/11/lightsout-game.html
lightout gameは作って実行したはいいけど、キルプロセスに当たるものが
何かわからなかった。適当にごちゃごちゃして消えたけど^^;クラスブラウザは
なかなか面白いと思ったけど、あんなの初めてだったから戸惑った。^^;
あとは、↑というのがソース中に現れるけど、^のことだと最初わからなかった。

しかしながら、一つでもサンプルを打って動かすとなんだか気分はいいですね。
これまでいくつかの言語をやってきたけど、全く違う世界を見ていい頭の体操に
なった感じはする。
789デフォルトの名無しさん:2012/02/19(日) 00:55:22.17
Squeakとかもっとキッズに愛用されていいのに見向きもされず
おっさんのおもちゃになってるという現象はある意味面白いな


790デフォルトの名無しさん:2012/02/19(日) 05:22:42.19
おっさん?
現状認識が甘い。
じいさんだろ。
791デフォルトの名無しさん:2012/02/19(日) 07:26:17.75
自由自在 Squeakプログラミング PDF版 が公開されてるね
梅澤さんありがとう もちろん書籍持ってるけど
792デフォルトの名無しさん:2012/02/21(火) 23:50:21.18
80時代の連中は確かに年寄りだけど、Pharoのやつらはちょっと若いね。
Scratchでプロジェクトを作るのに飽きた子はSmalltalkのコードいじって改造してるけど、むちゃくちゃ若いよ。
なんせScratchは母集団が100万人だからいろんなのがいる。
793デフォルトの名無しさん:2012/02/23(木) 06:14:45.35
その年寄りが2名ほど某スレで痴話喧嘩してる件orz
794デフォルトの名無しさん:2012/03/22(木) 00:33:43.70
せめてGUIをテカテカのハイカラにしてやらないと
若い子には受けんのじゃなかろうか
795デフォルトの名無しさん:2012/03/22(木) 01:37:33.20
モダンSqueak
796デフォルトの名無しさん:2012/03/22(木) 05:43:04.51
つ pharo
スクラッチってSmalltalkの処理系なんけ?
板全体まきこんで変な名無しにしてくれたなあ
(それもどうも現状維持でまとまってから反対派が申請しちゃったらしい)
>>797
1.4まではSqueak Smalltalkで記述されてるけど、Smalltalkとはまったく違う言語。
クラスはスプライトとステージの2つだけ。インスタンスをプログラムから生成できない。手動のクローニングだけ(ステージはシングルトン)。
レシーバーを指定してメッセージを送れない。引数も戻り値もない。メソッドを作れない。
継承もデリゲーションもない。
変数は形無しだけど、オブジェクトはファーストクラスじゃない。スコープはローカルとグローバル。
配列は一次元のみ。
プログラムは並行して動く。
>>799
ありがと。
801デフォルトの名無しさん:2012/04/22(日) 20:48:48.23
Linux上のVisualWorksにJapaneseLocaleをロードしたんだけど、日本語が豆腐になる。
NamedFontSelector open で何を選べばいいのかわからない。
うまくいった人いる?

Centos6.2, VisualWorks7.8nc
802デフォルトの名無しさん:2012/04/26(木) 14:48:54.35
Smalltalkスレすらないのは偶然ではない
803デフォルトの名無しさん:2012/04/26(木) 17:05:12.29
804デフォルトの名無しさん:2012/05/05(土) 10:37:33.91
デフォルトのブラウザで日本語が使えない、っていうの
十年前から直ってないのでは????
805デフォルトの名無しさん:2012/05/07(月) 17:24:39.06
OSXのVW7.8.1NC使ってみたら以前問題だったUIの表示崩れが直ってた
これならいいか
806デフォルトの名無しさん:2012/05/14(月) 20:53:58.99
すみません。毛玉ワールドとはなんですか?
使い方がさっぱり解りません。
807デフォルトの名無しさん:2012/05/14(月) 21:37:34.86
古いバージョン向けの情報ですがこちらは参考になりませんか?
http://www.languagegame.org:8080/zoo/172
808デフォルトの名無しさん:2012/05/14(月) 22:13:30.14
ありがとうございます!
もう一つ教えてください。
入れ子になったViewのMVCを
勉強するのにおすすめのクラスが
あれば教えてください。
809デフォルトの名無しさん:2012/05/31(木) 19:28:07.37
とあるスクリプトで
○のy座標←△のy座標というのを作りたいんだけど
どうやればこの形が出来るかな?
810デフォルトの名無しさん:2012/06/01(金) 00:48:02.40
○や△はどんなオブジェクトですか?
811デフォルトの名無しさん:2012/06/01(金) 01:12:36.63
口で説明するの下手だから画像を上げてみた
http://or2.mobi/data/img/33602.jpg
ステッキの所で2段目のステッキのy座標人のy座標と入れるんだけど
どうしても人のy座標という部分が入れられない
812デフォルトの名無しさん
さっきやってみたらうまくできました
ありがとうございました