ΨΨΨ Smalltalk/ Squeak 教えろゴルァ ΨΨΨ

このエントリーをはてなブックマークに追加
1◆oRQMZiP6
質問スレだゴルァ
2デフォルトの名無しさん:2001/08/22(水) 10:57
Squearkって何ですか?
3それはそれ:2001/08/22(水) 10:59
これはこれ。
4デフォルトの名無しさん:2001/08/22(水) 11:07
まず正しい名前から覚えて下さい。
5デフォルトの名無しさん:2001/08/22(水) 11:08
6デフォルトの名無しさん:2001/08/22(水) 11:08
7デフォルトの名無しさん:2001/08/22(水) 11:39
Squeakとは「おっととどっこい、ハム太郎」の鳴き声のことです。
8デフォルトの名無しさん:2001/08/22(水) 12:47
三三三三三三   ミ _    三三三三三三
三三三三三三   〔|ミlm|___,Θ三三三三三
三三三三./ ,)-__二二-―−´lミ ミミミミミ彡
三三三 /,,/ ̄ ̄ ̄) .、テ‐,-  ヽミ/~ヽミミ彡
三三三 /,,,/ (,,ヽ/ i ~`` ヽミ   lSl |ミミミ彡
三三 /^ヽヽノ lヽ) _ `   |   _/彡ミ彡   やれやれだぜ…
三 / \ ソ.  / }‐- 、       l ヽ彡ミミ
三 l、 \ )(  ノ  ノ⌒       / | ヽミミ \
三 l\ソ、  _/  ヽ__  _ /  |   /三三\
三 \  _/i |‐、三三三三\    /  /三三三

今さっき1を殴り飛ばした空条承太郎だ。

やれやれ、それにしてもこのスレ、以前から2chで起きていた悪質な連続荒らし厨房真犯人の墓場には似合いのスレだな。
1の立てるスレッドの魔の手、射程距離は2ch全範囲に及んだ… 集客力、ネタ、有意義、成長性…何をとっても糞スレの典型としか呼べない
非力さなのだが唯一(―――これがある意味一番恐ろしかったのだが)
「持続力」
もともとヒッキーである1の忍耐力(やれやれ、環境で自然に鍛えられたのだろうな)、根の暗さ、隠顕さ、プライドの高さ、自己中心的思考、妄
想癖、そして精神障害… これらの要素が手伝って、相乗効果を発動。1は自らの厨房さを極める事に成功した。
1を止める者はもはやこの地上には存在しないかに思われた。しかし所詮厨房、ここで2つの致命的なミスを起こしてしまう事になった。ひとつ
は調子に乗って遠征を始めた事、ハッキングはおろか串さえも知らない1の遠征は当然失敗に終わった。ふたつめは2chで騙されて晒した
fushianaのIP。気付いた時には後の祭り、必死に強がるもただ嘲笑されるだけだったな。
結局この2つが突破口となって1は個人情報その他が暴かれ、今回の制裁に至ったというワケだ。
…俺がヤツを追い詰めた時の1はまるでドブに投げ込まれた子鼠みたいに哀願してきた。「命だけは助けてくださ〜〜〜いっ!」ってな、だ
が…駄目だね。
『再起不能』
今ごろ1は集中治療室で己の悪行を反省しているだろうか?
俺のスタープラチナ渾身のオラオラ…
前身30カ所以上の複雑骨折及び内臓破裂との診断だとかいう話だ。
もはや1が2chに舞い戻ってくる日は来るまい。
さよならだ1、そしてGood Bye 2ch…
9デフォルトの名無しさん:2001/08/22(水) 13:09
言語/処理系のスレだからたててもいいじゃん。
10デフォルトの名無しさん:2001/08/22(水) 14:11
SQUEAKあの独特のインターフェイスが使いづらい。
つうか、フォントをもっと大きくしたいのよ。
キャレットが緑なのは見にくいのよ。
ウィンドウ背景色変えられてもフォント色かえられないと意味無いわけよ。
supplies タブのアイコンクリックすると、タブ内にアイコンが複製されて
それを消す方法がわからないわけよ。
ペイントみたいな奴が始まると、それを解除する方法がわからないわけよ。
ワケワカ。
11デフォルトの名無しさん:2001/08/22(水) 14:47
>>10
もっと普通っぽいUIのVisualWorks Non-Commercial版を使いましょうq
12デフォルトの名無しさん:2001/08/22(水) 15:25
13デフォルトの名無しさん:2001/08/22(水) 16:03
>>10
トゥル−タイプフォントを使えたらだいぶいいんですけどね。

>>11
あのUIってWIn3.1時代のままですよね。操作性だったらSqueakのほうがまだいいような。
14デフォルトの名無しさん:2001/08/22(水) 16:04
>>10
マウスの真ん中ボタン(なければAlt or Ctrl+クリック)で丸いメニューアイコンがいくつか出るからそのうちの×を押せばいいです。
15デフォルトの名無しさん:2001/08/22(水) 16:09
>>8
↓ここよか、こっちとかにやってくれよ
ゲームキャラ改造くん
http://piza2.2ch.net/test/read.cgi?bbs=tech&key=998460031
16デフォルトの名無しさん:2001/08/22(水) 16:53
>>13
>>トゥル−タイプフォントを使えたらだいぶいいんですけどね。

TrueTypeとかPostScriptとか、そういう名前のクラスは散見されるんだけどね。

それにしても NewYork とか、18pointが15pointの倍くらい大きいのはどういうわけ!?
17デフォルトの名無しさん:2001/08/22(水) 17:38
フォントをちょっと大きくするコード。すこしは見やすくなると思います。

Workspaceなどにコピペ → マウスで選択 → メニューから"do it"または Alt + d して下さい。

| textStyle |
textStyle := TextConstants at: #DefaultTextStyle.
Preferences setSystemFontTo: (textStyle fontOfSize: 15).
Preferences setListFontTo: (textStyle fontOfSize: 15).
Preferences setMenuFontTo: (textStyle fontOfSize: 15).
Preferences setFlapsFontTo: (textStyle fontOfSize: 15).

他国語化キットからのパクリです。
18デフォルトの名無しさん:2001/08/22(水) 17:42
他国語化キット >>>> 多国語化キットのまちがい。_o_
キットについては
ttp://www.kk.iij4u.or.jp/~y-kamite/squeak/multilingual_squeak.html
参照。
19デフォルトの名無しさん:2001/08/22(水) 20:26
Smalltalkの無料かつ、日本語の開発環境ってないですか?
20デフォルトの名無しさん:2001/08/23(木) 00:48
文字入力キャレットの色を赤に変える

Preferences insertionPointColor: (Color red).

色を自分で選びたかったら、

Preferences chooseInsertionPointColor.
21デフォルトの名無しさん:2001/08/23(木) 00:50
SqueakもVisualWorksも、ちょこっと手を入れれば
日本語が扱えるようになるけど、ダウソしたまんまで
日本語が使えるものってあったかな〜?
22デフォルトの名無しさん:2001/08/23(木) 00:58
2322:2001/08/23(木) 00:59
2419:2001/08/23(木) 02:28
>>22
ありがとうございます。
でも、UNIX系のOSを使うことが前提なのかな?
近いうちに試してみます。
2519:2001/08/23(木) 02:33
あ、Windowsでも大丈夫っぽいね。
すみません。
26デフォルトの名無しさん:2001/08/23(木) 07:44
なるほど、Smalltalkで記述されたSqueak を,
Squeak上のSmalltalkでさらに変えられるって事ですね。

フォントを変えたいときは、自分自身を現すクラスのFONTプロパティを
変更するみたいな感覚ですか?
それっぽいクラスを探すときはクラスブラウザを開いて探すのでしょうか。
27デフォルトの名無しさん:2001/08/23(木) 08:47
えと、C++とかDelphiになれてると
メソッドの実装もダイアログを利用せず
コードをがりがり書いていきたくなるんですが、
Squeakではブラウザを利用するしかないんですか?

仮に、
Object subclass: #Point
instanceVariableNames: 'x y'
classVariableNames: ''
poolDictionaries: ''
category: 'MathApp'
のようなクラスを書いたとして、メソッド
setXValue, setYValue をコードのみで
追加するにはどうすればよいですか。
28デフォルトの名無しさん:2001/08/23(木) 10:22
>>26
確かに>>17>>20のようなプログラムでもいじれるけど、
実はメニューから全部いじれる。

・システムディフォルトフォントの変更
 壁紙部分で左クリックメニューから
 "appearance..." -> "system fonts..."

・キャレット色の変更
 壁紙部分で左クリックメニューから
 "appearance..." -> "insertion point color..."

・テキストペインのフォントの部分的変更
 テキストを選択状態にして黄ボタンメニューから
 "more..." -> "set font..." / "set style..."

 色の変更はどうするんだろね〜。


※黄ボタン…3ボタンなら中ボタン、2ボタンなら右ボタン。
 Windowsなら、ウィンドウの左上にあるアイコンメニューから
 "VM preferences" で "Use 3 botton mouse mapping"
 をチェックしておくと基地。
29デフォルトの名無しさん:2001/08/23(木) 11:05
おおおお 3ボタンエミュレーションONにしたら
ウィンドウ回転できたよォォォォ
Squeakマンセー!!
30デフォルトの名無しさん:2001/08/23(木) 11:11
Squeak の読み方は スクィーク でよいですか。
31デフォルトの名無しさん:2001/08/23(木) 11:13
>>27
一日〜二日いじってればブラウザに慣れるので気にならなくなると思われ。
(キーバインドをEmacs風にしたいとはよく思うけどね。
これもどこかをいじればカスタマイズできるはず。)

動的にメソッドを追加する方法は、
ClassDescription>>compile:classified: かなあ。
Pointはすでに存在するクラスなのでMyPointにしてみた。

MyPoint
    compile: 'setXValue: newX
    "set new x value"
    x := newX'
    classified: 'accessing'.

でどうですか。
調べながら書いてるから間違っていたら訂正して下さい>識者
32デフォルトの名無しさん:2001/08/23(木) 11:23
3ボタンエミュレーションにした場合、
もともと右クリックででていたメニューを出すには?
赤いメニュみたいなアイコンだと違うメニューが出るし…
33デフォルトの名無しさん:2001/08/23(木) 11:25
もうひとつ。
ピックアップで取り出したオブジェを
元に戻すにはウィンドウを
開きなおすしかありませんか。
34デフォルトの名無しさん:2001/08/23(木) 11:33
>>30
ざうちゅうのえらいひとあたりがネイティブな発音をよく知ってそうだね。
辞書みると [skwi:k] だからいいんじゃないかなぁと想像。
35デフォルトの名無しさん:2001/08/23(木) 16:02
>>32
ホィールマウスならホィールを押し下げ、
3ボタンマウスなら中ボタン、
XFree86の3-botton Emurationのことなら左右ボタン同時押し、
などで出来ないでしょうか。

>>33
>>ピックアップで取り出したオブジェ
というのがよく分かりません。どんな操作をしたんでしょうか。
3633:2001/08/23(木) 20:46
>>35
言葉が足りなかったですね。スマソ

2ボタンマウスを使用していて、
3ボタンエミュレーションを使っている場合の話。

適当なウィンドウ内のコントロール上で右クリックすると
ウィンドウ全体を囲むように丸いアイコンメニューが出る。

そのままもう一度右クリックすると、ウィンドウ内のコントロール
を囲むようにアイコンメニューがでる。

この状態で、上辺の真中にある 黒地に白のアイコン
(バルーンヒントには pickup と書いてある)をドラッグ。
すると、コントロールだけがウィンドウから切り離され、移動する。

このとき、もともとコントロールがあった場所は
真っ黒に塗りつぶされている。

この、切り離されたコントロールを
ウィンドウに戻そうとして移動させても、
もとのウィンドウに重なるように表示されるだけで、
合体はしない。

元のように合体させるには、ウィンドウを一度閉じないと
むりなのか… と、そういう事ですワ。
37デフォルトの名無しさん:2001/08/24(金) 09:13
>>36
あ、確かにおっしゃる通りの挙動ですね。
Morphは僕もサッパリなんですよ。すみません。

操作体系というかコンセプトが分かればすぐいじりかたも
分かるんでしょうけどね。
38デフォルトの名無しさん:2001/08/24(金) 10:13
Morph ってなに?
SqueakのUIの事?
39デフォルトの名無しさん:2001/08/24(金) 11:52
そうです。
SqueakはSmalltalk-80由来の伝統的なMVC系と、新しいMorph系の
2種類のGUIフレームワークを持っています。どちらも使えますが
今後はMorphでいくということのようです。
40デフォルトの名無しさん:2001/08/24(金) 11:57
緊急!!
最大化の状態であるSqueakを元に戻すできません。
どうすればいいですか?
41デフォルトの名無しさん:2001/08/24(金) 12:06
フルスクリーンモードだったら

ScreenController new fullScreenOff.

Windowsの最大化だったらタイトルバーからなんとかできない?
42デフォルトの名無しさん:2001/08/24(金) 12:11
>>40
Squeak のウィンドウに対して
SW_RESTORE メッセージを送ってあげましょう。
あと日本語おかしいです。
43デフォルトの名無しさん:2001/08/24(金) 12:20
>>40
背景上で左クリックのメニューで
appearance | fullscreen off
でいいじゃんよ
44デフォルトの名無しさん:2001/08/24(金) 13:28

緊急はどうなったんだ? あげ
4540:2001/08/24(金) 13:34
ありがとう
おかげで無事フルスクリーン解除できました

これでブラウザ見ながらSqueakいじれます。
46信奉者:2001/08/25(土) 01:34
Morphicが難しすぎます。

なんでもいいから気の利いたサンプルコードがあったら書いてくれませんか?
47デフォルトの名無しさん:2001/08/25(土) 10:21
結局、2ボタンマウスを使っている場合、
3ボタンエミュレーションモードで、
もともと右クリックででていたメニューを
出すにはどうすればよいのでしょう?
48デフォルトの名無しさん:2001/08/25(土) 10:28
Shift+右クリック
Ctrl+右クリック
Ctrl+左クリック

出てくるメニューが全て違うから分けかからなくなる。
ワケワカ。
49デフォルトの名無しさん:2001/08/25(土) 10:50
つーか、ピックアップってすごいね。
ラベルやタイトル文字までピックアップできる…

どういう仕組みになってるんだろう…
50デフォルトの名無しさん:2001/08/25(土) 11:34
http://www.tec.ac.jp/ って落ちてる?
51デフォルトの名無しさん:2001/08/25(土) 11:48
ここにSqueakとMorphのチュートリアルの和訳がある。
さわりには役に立つのと違うかな。

http://embug.dyndns.org/kusakari/3
52デフォルトの名無しさん:2001/08/25(土) 11:50
>>50
繋がるよ。
ドキュンなページが出てきた。
53下がりすぎ:2001/08/25(土) 18:12
Windows2kで確認。

| font |
font := TTFontReader parseFileNamed:'c:\WINNT\Fonts\times.ttf'.
font asMorph open.
^font

いやーこんな機能が実装されていたんだ。出てきたものを見てびっくり。
しかし FontDescription>>asStrikeFontScale: の使い方がよく分からん。
5453:2001/08/25(土) 18:15
あ、
FontDescription -> TTFontDescription
の間違いだった。
55デフォルトの名無しさん:2001/08/25(土) 20:11
SmallTalkイディオム って本を見つけたんだけど、
VisualWorksという環境での話だった。
描画プログラムやらいろいろあるんだけど、
Squeakとは互換性あるのかな。
環境が違うだけで、言語としての使用は一緒だよね?
いや、この本買ってグラフィックプログラムを
Squeakで実行できなかったら嫌だなと思って。
56デフォルトの名無しさん:2001/08/25(土) 21:00
その本は超おすすめ。
ウィンドウやグラフィック関係はそのままでは動かないけど、
もっと根本的な部分でためになること多し。
57デフォルトの名無しさん:2001/08/25(土) 21:13
>>55

VisualWorksとSqueakはどちらもSmalltalk-80直系ではあるけれど、
グラフィックシステムまわりは驚くほどに別物になっている。

初めてSmalltalkに触れる人にはSqueakはあまり宜しくない。
変なバグが色々あったりして、問題の切り分けが難しいから。

VisualWorksもNon-Commerical版があるので、それを使うのが吉。
VisualWorks5i.xもごちゃごちゃしててナニなので、3.1がお薦め。

ここにVisualWorksNC3.1のwin32版とLinux版がある。
cincomのページに行くと、最新版しかないので要注意。
http://wiki.cs.uiuc.edu/VisualWorks/DOWNLOAD/
58信奉者:2001/08/26(日) 00:49
>>55
>>56
あの青木グルの本いいと思うけど、ちょっと宗教入ってるなあ。
「Smalltalkerの曼荼羅」だって。
59信奉者:2001/08/26(日) 00:52
>>53
TTフォント使えるんですね。僕もやってみました。
でもあくまでMorphで、システムフォントとしては使えないのかな?
6055:2001/08/26(日) 05:18
>>56-57
んー やはりグラフィック周りはダメか。
本の冒頭に、「Smalltalkは常に変化するから
ライブラリも変化しまくる」みたいな事書いてあったし、
初版も3年前だったから
無理かな〜 とは思っていたけれど。

とりあえずVisualWorks落としてみるよ。ありがとう。
61デフォルトの名無しさん:2001/08/26(日) 05:22
...って、これか↓
VisualWorksNC31b-win32.zip 262 KB
あまりにも小さくてマジビクーリ
62test:2001/08/26(5) 31:00
test
6361:2001/08/26(5) 34:00
やはりこれ単体では実行できないか…

VisualWorksNC-attools-3.1-1.i386.rpm
VisualWorksNC-base-3.1-1.i386.rpm
VisualWorksNC-database-3.1-1.i386.rpm
VisualWorksNC-dllcc-3.1-1.i386.rpm
VisualWorksNC-docs-3.1-1.i386.rpm
VisualWorksNC-goodies-3.1-1.i386.rpm
VisualWorksNC-wavedev-3.1-1.i386.rpm

これらがLINUX,WIN共通のデータファイルなのかな?
rpm拡張子って初めて見たけれど…

全部DLしてEXEと同じ場所にいれてみたけど無理だったヨ...
www.cincom.com/downloads/gz/CSTNCFeb2001.iso.gz
>>63
rpmはLinux版
>>63

vwnc31all.zipを落とすべし。
>>64のに入ってるのは5i.3なので、要注意。
>>62-63
あ、時刻表記…
67デフォルトの名無しさん:01/08/26 11:56
これって、visualnc.exe を起動するときに
visualnc.im をドラッグして起動しないといけないの?
実行時引数でイメージファイル名を渡すの面倒なんだけど…
みんなバッチファイル作ってるのかな。
.im を visualnc.exe に関連付けすれば
イメージファイルのダブルクリックでオッケー。
>>59
TTFontDescription>>asStrikeFontScale:
っていうのがあって、StrikeFontというのが
Squeakで普通のテキスト表示に使われるフォント
だから、これを使えばTrueTypeフォントを
変換して取り込めそうな気がする。

まだうまくいかないけど。
70デフォルトの名無しさん:01/08/26 20:47 ID:TeHBTESQ
>>47
「3ボタンエミュレーションモード」というのはどういうものですか?
また、お使いのマウスのボタン数は何個ですか?
71デフォルトの名無しさん:01/08/27 00:36 ID:LaYnmZtY
3ぼたんえみゅ=[ウィンドウ左上のアイコンクリック]→[VM〜]→3ButtonMouse〜]
使用マウスボタンの数は2個+ホイール。
72デフォルトの名無しさん:01/08/27 00:42 ID:LaYnmZtY
CUIでいいから、簡単なサンプルゲームプログラム無いかな。
キーボードからの値入力(マウスでもいいけど)が分からないのよ。
7370:01/08/27 00:55 ID:vBj4UQ0E
>>71
ホイールを転がさずにぐっと押し込むと、
中ボタンクリックになります。
74デフォルトの名無しさん:01/08/27 01:07 ID:6V2HxvNs
>>72
Tools-Menusカテゴリの中に、ボタン・メニュー・ダイアログの類がまとまっています。
exampleというクラスメソッドがあれば、それは使用例です。
ソースにコメントの形で載っているものを二つ紹介します。

SelectionMenuクラスの例
---begin---
(SelectionMenu labels: 'sin
cos
neg' lines: #() selections: #(sin cos negated)) invokeOn: 0.7
----end----

FillInTheBlankクラスの例
---begin---
FillInTheBlank
multiLineRequest:
'Enter several lines; end input by accepting
or canceling via menu or press Alt+s/Alt+l'
centerAt: Display center
initialAnswer: 'Once upon a time...'
answerHeight: 200
----end----
75信奉者:01/08/27 01:37 ID:9uEHIeCA
>>69
Strikeフォントってラスタフォントですよね。
もし使えるとしても変換するということですか。

標準でTTフォントを使えるようにならないのかな?
っていうかやっぱりUIがちょっとダサいから流行らないってのもありますね。
WIndows用の(?)ネイティブウィンドウ描画のプロジェクト、チーズとか言うのはボツったみたい。

Windowsのような洗練されたデザインで、ウィンドウの回転とかできたらそれだけで注目されると思う。
76信奉者:01/08/27 01:39 ID:9uEHIeCA
>>72
自分も人のことを言える立場ではありませんが、
そもそもSmalltalkってのはサンプル(&システム)をブラウズすることで自習するものみたいです。
77デフォルトの名無しさん:01/08/27 09:26 ID:ioKl98Ug
>>76
まあでも、最初のとっかかりを掴まないことには右も左もわからないもので、
最初に「そういうときはここを見るといいよ」と言ってあげることは必要だと思う。

掴んだあとはほっといてもサクサク進むというのは実感だけど。
もしSmalltalkでペアプロしたら、まったく初めての人でも1日でたいていのことは
解決できるようになっているかも。
78デフォルトの名無しさん:01/08/27 10:10 ID:HBxF9Ze2
>>75
>標準でTTフォントを使えるようにならないのかな?

もしそうするなら、フリーのフォントを自前で持つとかする必要かありますね。
Windowsのフォントをそのまま利用することにすると他のOSで使えないですから。

たとえばGT明朝とか? よく知らないんですが。
79デフォルトの名無しさん:01/08/27 11:52 ID:vESbNPa.
>>58
>あの青木グルの本いいと思うけど、ちょっと宗教入ってるなあ。

任意の部分を飛ばし読みする自由が、読み手にはあります。(w
80デフォルトの名無しさん:01/08/27 14:47 ID:piRrflGU
良書紹介。

ファイル処理、文字列処理、GUI処理などについて分かりやすくまとめ
られている。

P.H.ウィンストン『ウィンストンの Smalltalk』
アジソン・ウェスレイ・パブリッシャーズ・ジャパン, 星雲社, 1999
ISBN4-7952-9735-5 C3055 \4200E

訳者さんのページ
ttp://www.zzz.or.jp/~iizuka/EOO/Japanese/index.html

Squeakで参考にするためのソース変更点
ttp://www.kk.iij4u.or.jp/~y-kamite/squeak/winston_squeak.html
81デフォルトの名無しさん:01/08/27 16:23 ID:vESbNPa.
"Squeak Bon Mots"
ttp://minnow.cc.gatech.edu/squeak/268
"... to be little bits of code (2, 3, or up to 10 lines) that do something interesting, or unusual. Maybe something unique to Squeak ..."

だそうです。
82デフォルトの名無しさん:01/08/27 23:55 ID:dC.beocc
>>78
ギコ明朝、ギコゴシック、ギコCourier、ギコNewRoman… ウマー

待てよ。2chでなにか大層なものを作るのは無理だと揶揄(藁)されるが、
フォントなんか比較的マシに作れるんじゃないのかなあ?
というのは、フォントって文字1つづつの作業の独立性が高いから、
2chくらい人々の結合が緩い世界でも、旨く行くんじゃないかと。
SETI@homeのノリ。一人1文字作ってくれれば恩の字っていう。
83所新車:01/08/28 02:32 ID:TsVgfhCw
オブジェクト指向関連の本などを読むと頻繁にSmalltalkについてでてきますが、
オブジェクト指向の勉強においてSmalltalkを使う意味はあるのでしょうか?
C++やJavaと比べた場合の長所や欠点とはなんでしょうか?
84デフォルトの名無しさん:01/08/28 16:11 ID:kOzAX4vg
オブジェクト指向という言葉はSmalltalkを説明するために作られた言葉。
デザインパターン,UML,XPなど新しい潮流は常にSmalltalkコミュニティから
生まれる。
85信奉者:01/08/29 00:02 ID:reEzbSBE
>>84
プログラミング界の裏原宿ってか。
86Del:01/08/29 08:35 ID:NbMZgfhU
プログラミング怪の裏原宿なのに
このスレなんでこんなに盛り上がらないんだ?





Smalltalk がマイナーなのか…
87デフォルトの名無しさん:01/08/29 10:27 ID:Ero40vXE
では、こんなページはいかがでしょうか。
最近出来たばっかりみたい。VisualWorksの使い方が丁寧に解説してあります。

http://www.cam.hi-ho.ne.jp/kai-home01/
88デフォルトの名無しさん:01/08/29 10:31 ID:Ero40vXE
あと、自分のブックマークにあった中ではこれかな。
かなり、とほほな物だけど。

http://www.pocketsmalltalk.com/new/

アランは今どこで何をやってるかご存知の方いらっしゃいますか?
少し前まではディズニーにいたみたいだけど。
89デフォルトの名無しさん:01/08/29 12:41 ID:C/RyLmG.
>Smalltalk がマイナーなのか…
日本では、ね。


>アラン

少し前まではSqueakCentralがDisney内の組織だったから、Disney所属だったけれど、
SqueakCentralがDisneyを離れたからね。それ以降にsqueak-devに流れたメールの
From:は、[email protected]になってる。Squeakから離れてはいない様子だが、
SqueakFoundationのメンバーには入ってない。詳しいことは大島さんにでも聞くしか
無いのでは。
90デフォルトの名無しさん:01/08/29 13:08 ID:pJ99GHGY
Squeakってver3.0になってたのか。
外観のイメージが以前と違うのね。
91デフォルトの名無しさん:01/08/29 15:05 ID:1nqjvGMk
Jun for Smalltalkをいれてみた。
単に3Dのツールというだけでなく、(というか3Dはサパーリだが)
Lispインタープリタとか、JunGNUDiff(移植したの?)とか
リビジョン管理だのカレンダーだの…
3Dとか関係なさげかつ便利な部品がてんこ盛りでびびった。
9291:01/08/29 15:07 ID:1nqjvGMk
あ、Jun for Smalltalk は Squeak じゃなく VisualWorks 用だからね。
9391:01/08/29 15:09 ID:1nqjvGMk
誤>(というか3Dはサパーリだが)
正>(というか漏れ3Dはサパーリ使えない人だが)
94デフォルトの名無しさん:01/08/29 16:29 ID:qmpYZKr6
Squeakでグラフィック描画したーい
直線多角形楕円描画した―イ
95デフォルトの名無しさん:01/08/29 17:53 ID:TrWna7Bk
>>94

| quadrangle circle line |
quadrangle _ Quadrangle origin: 0@0 corner: 100@100.
quadrangle display.
circle _ Circle new.
circle radius: quadrangle width / 2.
circle center: quadrangle center.
circle display.
line _ Line new.
line beginPoint: quadrangle origin.
line endPoint: quadrangle corner.
line display
96信奉者:01/08/30 05:59 ID:KtE0AQrQ
公式サイトはこれだよね?
http://www.squeak.org/
http://www.squeakland.org/
97デフォルトの名無しさん:01/08/31 04:18 ID:QaAQ1xiM
オージス総研にある Happy Squeaking! で Smalltalk を勉強したんだけど、
イントロスペクションやインターセッションといった用語が判んなくて挫折した
覚えがある。
でも、Smalltalk に触れておいたおかげで Javaや Objective-C を始める時
かなり楽だったな。

昔メーリングリストで話題になった、Squeak本の日本語訳は立ち消えになったのでしょうか?
日本語化パッチもバンドルして出版すれば、日本でも「マニアのツール」を抜け出せるのに。

ちなみにココね(Happy Squeaking!)。役に立つこと請け合いです。
www.ogis-ri.co.jp/otc/hiroba/technical/Squeak/squeak.html
98デフォルトの名無しさん:01/08/31 16:51 ID:7zpcE/DQ
Squeakをいじってて、初心者はVisualWorksの方
を先にやったほうがいいとSMLなどで言われてい
るのを見て、さわってみてるけど…。

各種ツールの使い心地はなぜかSqueakのほうが
しっくりくる。先に慣れちゃったからかな。
99デフォルトの名無しさん:01/08/31 17:39 ID:MtyLkymY
Squeakのシステムブラウザで、タイトルバー左から二番目のスイッチを
押して出るメニューから"show tiles" をオンにしたら。

…すっげー。コードに色つけるとかそういうレベルじゃないな。
とりあえず元に戻してしまった。
100デフォルトの名無しさん:01/08/31 19:47 ID:0V6W10r6
>>99
Show tiles でてこないよ?
Squeak 3.0 の System Browser で、
タイトルバーの左から2番目のアイコン上で
左クリックしても、
右クリックしても、
Ctrl+左クリックでもでてこない…

ShowActions ならあるけど
10199:01/08/31 21:35 ID:xIXE5jmU
あ、3.0だと出ないね。
壁紙左クリック -> [help...] -> [update code from server]
でバージョンあげたイメージだと出てくるよ。

これ見るためだけでも上げる価値はある。
実用はともかく。
102デフォルトの名無しさん:01/09/01 00:50 ID:7xBEU0JQ
3.0から3.1 にアップグレードしたけど、やはり出ない…
help->update code from server で、メニューが2つでてくるよね。
どちらも実行してみたけど。下のメニューは更新にものすごく
時間がかかった…
103信奉者:01/09/01 01:42 ID:f0KjALqo
>>99
具体的にどうなるの?
教えてー
10499:01/09/01 08:00 ID:PrHoA6V.
あれ? 自宅のSqもいまアプしたらshow tiles出るようになったよ?
システムブラウザの、タイトルバーの左端が「閉じる」の×印で、その
右隣がシーソースイッチみたいなアイコンで、押すと下記のようなメニューがでる

change title...
----------------
send to back
make next-to-topmost
----------------
make unclosable
make undraggable
----------------
full screen
window color...
----------------
□show tiles
10599:01/09/01 08:04 ID:PrHoA6V.
補足:アイコンを普通の左クリック。

(コントロールキー+左クリックだとshow actionsが出るけど)
106デフォルトの名無しさん:01/09/01 08:05 ID:Ac11xdd2
あ、わかった
俺の奴は、
show tiles でなくて、what to show って項目になっている。
これをクリックするとサブメニューがでて、
そこから tiles を選択でいけたYO!
107デフォルトの名無しさん:01/09/01 08:07 ID:Ac11xdd2
...ってなんじゃゴルァァァァ
すげえぞSqueak!!

でも、ただ凄いだけだ!!
108デフォルトの名無しさん:01/09/01 08:11 ID:Ac11xdd2
VisualWorksは、下手に外観がWindowsに似ている割に、
メニュー操作ではマウスボタンを押しっぱなしにしておかないと
勝手に選択されてしまうという、微妙に操作が異なるので
逆に使いずらいと思う。
Squeakみたいに思い切り風変わりな外観のほうが、
返って混乱しなくてすむね。
10999:01/09/01 12:14 ID:Dtp./k7c
ごめん、最新のイメージでは、左から2番目のアイコンで
what to show... を選んでさらにサブメニュー What to show で
tiles が出てくるようになってますね。
110デフォルトの名無しさん:01/09/01 13:14 ID:xDMwvGAE
俺もやってみたが・・・
見やすいのか、見にくいのかようわからん・・・
11199:01/09/01 18:42 ID:47UChoKw
最新に上げたら日本語が表示できなくなってしまった…。
直せるかな。
11299:01/09/01 19:02 ID:d10.nUtw
>>103
こればっかりは実際に見てもらわないと、とても字では
説明できない。

あえて言うと、"The World of Squeak" の "Scripts"
に出てくるMorphでできた不思議なスクリプト部品で、
Smalltalkのソースが書かれているところを想像して。
113デフォルトの名無しさん:01/09/01 19:14 ID:7.zFNWw2
updateやってたらデバッガーに落ちてしまった。TextナントカのAddLastが無いとかで。

国際化imageではうまくないのかな。素のimageをupdateして、それから国際化かませばいいのだろうか?
それともVM本体が古いからだめなの?(VMは3.0)
114デフォルトの名無しさん:01/09/01 19:16 ID:7.zFNWw2
おいらもまだ見れてないのだけど。

それって、あの上下左右矢印の付いたコンボボックスみたいなのでソースのワード群が囲まれてるって感じ??
>>112
115デフォルトの名無しさん:01/09/01 19:18 ID:74THsOQE
単語をクリックすると、その場所に隠れていた
コンボボックスがでてきたり、
エディットボックスがでてきたりする感じ。
Delphiでいうオブジェクトインスペクタの右側の列、
VBでいうプロパティエディタの右側の列が
もっと強烈になったような…
116デフォルトの名無しさん:01/09/01 20:53 ID:d10.nUtw
11799:01/09/02 00:43 ID:wt8s2lck
>>113
うちも国際化したイメージでVMは3.0だったよ。

途中で警告が出て、「ここでupdateの機構自体を置き換えるので
一旦エラーになる。デバッガを消してあらためてupdateを始めれ」
と出たけどそれのことかな?
118113:01/09/02 00:48 ID:WujI.Q2o
素のimageでupdateしたらうまくいった。おお、こういう事か。

>>117
それとは違いました。手元のimageが変だったのでしょうおそらく。
これから再度国際化してみるつもりです。
119デフォルトの名無しさん:01/09/03 02:08 ID:MmJhSes.
age
120デフォルトの名無しさん:01/09/03 09:29 ID:oDYd29Ko
不思議なサーキットゲームとか
テトリスとかのゲームって、どこから起動するんですか?

一番最初に出てきていた巨大なメニュー(選択画面?)
を消したら、どこから起動するのか分からなくなって…
121デフォルトの名無しさん:01/09/03 14:33 ID:cxUbogB6
>>120
壁紙左クリックメニューから "jump to project..." で
"The Worlds of Squeak" を選択すれば飛べるかも。
122デフォルトの名無しさん:01/09/03 22:24 ID:Yxe5V/NQ
X.ORGからBDFフォントをダウソして変換してインストールしてウハウハ

BDFFontReader downloadFonts.
BDFFontReader convertX11FontsToStrike2.
BDFFontReader installX11Fonts

国際化してないとダメかも。もしかすると。
123デフォルトの名無しさん:01/09/04 03:24 ID:CWQc1zT6
小咄age
124デフォルトの名無しさん:01/09/04 10:52 ID:Arqb.Wvo
X11font 文字字間隔が詰まりすぎるぞゴルァ
文字輪郭だけで計算しとるらしい
125デフォルトの名無しさん:01/09/04 12:40 ID:MmUrMvH6
俺の周りに smalltalk を使っている奴が居ないせいか、
このスレに集まってる奴がすごく
マイナー指向というか、マニアックに感じる。
使ってるどころか「smalltalk?なにそれ」が
ほとんどだと思う…
126 :01/09/04 12:42 ID:zVUpIT/g
!<arch>

最良のMagicは何?
127デフォルトの名無しさん:01/09/04 14:28 ID:LOQedxtk
>>126
ごめん意味分かんない
128デフォルトの名無しさん:01/09/04 17:36 ID:WgAvFMp6
>>125
Smalltalkもそうだけど、日本では受けないけど学ぶ価値のある言語はたくさんある。

日本で受けないのはなぜか考えてみたら、結局英語を読めない・読もうとしない人が
多すぎるのではないかという気がして来た…。
129デフォルトの名無しさん:01/09/04 18:29 ID:UBYhxRDc
>結局英語を読めない・読もうとしない人が 多すぎる
じゃ MIND がはびこっているかというと、そうではないわけで。
130デフォルトの名無しさん:01/09/04 21:15 ID:cgnDfOcA
ソースじゃないよ、資料だよ。>>129
131デフォルトの名無しさん:01/09/04 21:47 ID:7PcHmx0U
>>128

いや、歴史的な事情の方が大きいと思うな。Smalltalkは重い処理系だったから、
速い計算機が必要だったわけ。だから、研究室あたりで触れなかったら、ずっと
出会わないままで終わってしまう。しかも、結構なお値段がしたわけで、日本の
大学の研究室ではなかなか予算がつかなかったでしょう。Smalltalkそのものの
研究以外には使い物にならなかっただろうしね。
で、一度ついた流れが止まらないまま、今日に至る、と。

今はPDAでもある程度動くようになったから、巻き返しに出る条件は整ったとは
思う。Squeak本の翻訳が出てからが勝負かな。
132信奉者:01/09/05 02:28 ID:lY7cXRwo
Squeak本、装丁とかも今後の売れ行きを左右する気がする。
パッと見で地味な本じゃ絶対売れない。

いんちき臭いくらい派手な目立つ装丁にして欲しい。
133名無しさん:01/09/05 02:50 ID:b3/sA8Gs
「できるSqueak」とか?
134デフォルトの名無しさん:01/09/05 03:01 ID:Fgy3d/FE
>>133
 おお、インチキクセー
135デフォルトの名無しさん:01/09/05 05:20 ID:Te2ijjgw
>>124
>X11font 文字字間隔が詰まりすぎるぞゴルァ

多国語化してないイメージでやったらうまくいった。
このへん直らないかな。
136デフォルトの名無しさん:01/09/05 09:30 ID:hlqwZkXQ
Smalltalk って private とか public とかのアクセス制御がないっぽいけど、
すべてに対してすべてを公開するという思想?
137デフォルトの名無しさん:01/09/05 09:57 ID:7OUMCJjQ
>>136
データメンバは非公開、メソッドは公開、ということだったと記憶してるが、
なんなら自分が望むアクセス制御手段を自分で(Smalltalkで)実装すりゃいい(藁

ところでpublicだのprivateだのいう単語にも(既存言語1つづつそれぞれに)微妙に違う意味付けが有るけど、
どんな意味付けをお望みか?
138デフォルトの名無しさん:01/09/05 10:50 ID:qQoQ/17s
>>137
俺が欲しがっているとかいう話ではなく、アクセス制御という枠組がなくても
やっていけるという思想なの? という疑問。
139デフォルトの名無しさん:01/09/05 13:10 ID:VvkxN2Xs
>>138
うろ覚えですが。

オブジェクトの外部からのアクセスを制限したいメソッドは 'private' というカテゴリに分類してやる。
他のオブジェクトからは 'private' のメソッドは呼ばないようにする。

こんな感じでアクセス制御(?)を行っているはずです。
もちろん、自分でアクセス制御を実装してやる、というのも可能だと思います。
140デフォルトの名無しさん:01/09/05 14:11 ID:VkLqO6Wo
すべてのソースがプログラマに対して開示されている環境だから、
カテゴリで private とか public とか表明するだけでよしとする?

Cなどでポインタとヒープの扱いがプログラマに任されているように、
Smalltalkではメソッド呼び出しの扱いがプログラマに任されている
ということかな。
141デフォルトの名無しさん:01/09/05 14:20 ID:VkLqO6Wo
ざうちゅうのえらいひとと△鳩 for Squeakの作者は
どちらもおおしまさんですがなにか関係ありますか?
142デフォルトの名無しさん:01/09/05 15:13 ID:iUZCS8gE
>>138
>やっていけるという思想なの?

思想か?と問われれば、答えはYESだろうなあ。
少なくとも、無いと絶対に動くソフトが作れないということなんか無いのは
間違いないわけで、となると後は、それを導入することによる
使いやすさ(にくさ)をどう評価*したい*か?という、考え方の問題になる。

つまり、採用の可否を決める理由は、思想(ものの考え方)しか、有り得ない。
#なにも考えずに気づけばそうなっていた、という線も有りえるが、まさかね…

変数に型が無いのとも、事情は似たようなもんだろな。
143デフォルトの名無しさん:01/09/06 11:03 ID:1cz9bw9E
>>138
もともと、Smalltalkっておもちゃなんだよ。DynaBook構想のOSなんだから。
環境丸ごと好きなようにいじれるというのが売りになってるわけ。だから、
何かを隠すなんてことはあり得ない。変数に型が無いのも、いじり倒すのに
邪魔になるからだろうね。
こういった出自を考えると、堅っ苦しいVisualWorksよりも、Squeakの方が
正当な後継のような気がしてしまうな。

---

VisualWorksの5i.4が落とせるようになってる。isoイメージはgzippedなのに
200Mオーバーだ。5i.2迄しか見たことなかったから、あまりの変りっぷりに
愕然とした。こんなのWorkspaceじゃない、とか叫びたい気分である。
144デフォルトの名無しさん:01/09/06 12:11 ID:xBBQEm0E
>>143
そんなでかいのダウソできないけど…。
でも見てみたいのでのでスクリーンショットきぼんぬ。
145デフォルトの名無しさん:01/09/06 14:04 ID:Os7P5cME
最近知ったこと。

なにかメソッドをいじって、実行してみたらでエラー発生。
という状況でデバッガが起動したとき、デバッガに表示されているスタック
ダンプの階層をたどって、エラーを起こしている当該メソッドのソースコー
ドを引っ張り出し、その場で修正た上で処理をそこから続行できるらしい。
収拾がつかなくなっても「以前の版に戻す」というメニューもあるので安心。

スタックダンプっていうと普通死体だけど、Smalltalkの場合は生きたオブ
ジェクトなんだよね。そのまま続行とかStep実行とかできるし、その時点で
変数に束縛されているオブジェクトがどうなっているかInspectしたり、更
にはメッセージを送って状態を変更したりもできる。

Smalltalkは実行しながらデバッグできる、ってそういうことだったのね。
146デフォルトの名無しさん:01/09/06 17:48 ID:1cz9bw9E
>>144
http://members.tripod.co.jp/GarbagesCollection/5i.4.jpeg
こんなWorkspace。クラス名はWorkbookになってる。
147デフォルトの名無しさん:01/09/06 20:54
>>146
あー、わざわざありがとう。
148デフォルトの名無しさん:01/09/07 17:00
VisualWorksで実行できてしまいました。

| ア整数 |
ア整数 := 1.
^ア整数 + ア整数
==> 2

「ア整数」より「ある一つの整数」としたほうがより明確ではないかと
一部で議論になったのですが、ここは簡潔さや従来の慣習に敬意を表し、
あえて外来語としてそのまま採り入れました。

ちなみにSymbolのクラス階層は
Object()
    Collection()
        SequenceableCollection()
            ArrayedCollection()
                CharacterArray()
                    String()
                        Symbol()

だそうです。(クラス名の後ろの括弧はなんじゃ?)
149信奉者:01/09/08 01:31
>>148
クラスのメンバ変数?
#スレ違い気味だけど、

Linux+XFree86 4.1.0でVisualWorks、動いてる?
FreeBSD 4-STABLE+XFree86 4.1.0だとフォントを古いのにしないと
動かないのだが。
151デフォルトの名無しさん:01/09/10 18:05
>>149
そうなんだ!
Arrayってメンバ変数ないのね。非ポインタ型とかインデックス型とか、
あのへんに関って来るのかな。よく分からないんだけど。
152デフォルトの名無しさん:01/09/13 12:14
Squeak3.0にも tile scripter あったよ。
ブラウザに統合されていなかったから気づかなかった。くぅ。

メッセージセレクタペインで黄ボタンメニュー -> tile scripter
153デフォルトの名無しさん:01/09/14 14:34
154デフォルトの名無しさん:01/09/16 08:47
VisualWorksのエディタをvi風にするチェンジセットだそうな。
Squeakでも何とかならんかねえ。ネタとしては面白そうなんだが。

http://embug.dyndns.org/kusakari/16
よりによってなんでvi・・
156デフォルトの名無しさん:01/09/16 21:11
キーバーインドの変更ならParagraphEditorをいじるよろし。
157j:01/09/16 21:14
158デフォルトの名無しさん:01/09/17 07:07
>>154
試してみたけどすげえ。
標準のSettingパネルの"Mac", "Motif", "Windows" なんかに
混じって、"Vi like" が出現したよ。気合入ってるな〜。
159デフォルトの名無しさん:01/09/17 15:59
VisualWorks3.0 non-commercialで質問です。
Squeakでいうメソッドのversionsのような、編集履歴を遡って参照する機能はないのでしょうか?
160デフォルトの名無しさん:01/09/17 19:20
>>159
標準では憑いてこないね。
Junにはそんな感じの事をするユーティリティが入ってた筈。
GPL嫌いじゃないなら、使ってみる宜し。
161vi厨:01/09/18 00:28
>>155
え?viは合理的で素晴らしいぞ?
なんせあんなに沢山のキーが「カーソルキー」に変身してくれるんだからな。
将棋のコマより遥かに多彩な移動パターンが醸し出せるのは自明だろう。
あとはそれに慣れれば、モードレスゆえにカーソル移動でいちいち
変なキーを押さないと/併用しないとならない他のエディタの
アーキテクチャの馬鹿さ加減が、ひしひしと理解できるというものであらふ。

キーボードの上で眠ったら「必ず」文章を破壊するエディタなんか、要らないって。
viなら入力モードに移行するキーを押さない限り(つまり確率)、大丈夫だ。
確かに、寝ぼけて :q! しちゃったことはないな。
163デフォルトの名無しさん:01/09/18 01:44
>>162
眠りなだけに「ZZ」とか。
164デフォルトの名無しさん:01/09/18 01:45
>>159
Change Listで同じではありませんが、似たことはできます。
VisualLauncherのChangesメニューから「Open Change List」を選んで、Change Listを開き、「File」メニューから「Read file/directory...」で*.chaファイルを選択。
表示される変更履歴から、元に戻したいメソッドを選択した後にsameチェックボックスをチェックすると、そのメソッドだけに絞り込まれるので、適当なメソッドを選んで「Replay」メニューから「This change」を選択。これで任意の時点に戻れます。
もし、*.chaが大きすぎる場合は「SourceFileManager default recover: 5000」のようにして、st80.recentに落としてから使ってください。
# もちろんENVYやStOREのような構成管理ツールを使った方が楽です。
でも事実上Undo無制限のエディタも多いしなぁ・・・
俺も日本語の文章じゃなければvi好きだけどね。
166デフォルトの名無しさん:01/09/18 18:05
>>160
JunRevisionManager でしょうか…。見てみます。

>>164
やってみました。できなくもない、という感じですね。

>>165
viは無理ですがvimならばUndo無制限だったと思います。
167デフォルトの名無しさん:01/09/20 13:54
超どうでもいいことですが、

  クラス>>メソッド

という表記は、もしかして

  クラス>カテゴリ>メソッド

のカテゴリを省略したものなんでしょうか?
168デフォルトの名無しさん:01/09/22 23:08
self age. "落ちないように"
169デフォルトの名無しさん:01/09/22 23:38
>>167
Squeakでは、ContextPart>>printOn:
VisualWorksでは、CompiledMetohd>>printNameOn:inClass:
あたりを参照。
170デフォルトの名無しさん:01/09/23 11:22
          

Rubyはクソです。ゴミ箱逝きです。

いじょ
この発言をコピペしていただければ幸いです。
171デフォルトの名無しさん:01/09/24 11:28
smalltalk って、日本では、SRA って会社がメインでやってるみたいだね。
172デフォルトの名無しさん:01/09/27 13:10
age
173デフォルトの名無しさん:01/09/27 22:35
>>171
特定の実装の商品についてなら、そういう話は成り立つだろうけど、
その言語全般についてならば、会社がどうとか考える意味はないだろう。

Squeakなんかもあることだしさ。
174デフォルトの名無しさん:01/09/29 00:34
smalltalkって食ってけますか。
趣味程度にしといた方がいいですか。
>>174
会社らしい会社が無いだろ今は。
なので、分母が少な過ぎるんで、どっちも言えぬ。
ちょうどいい。キミが時代の最先端(つまり人柱)になってみないかね?ん?
176デフォルトの名無しさん:01/09/29 18:41
(素人)
SqueakとMySQLってドッキングできませんでしたっけ?

データベースとセットでならビジネスになりません?
SRA は Smalltalk 関係で仕事とってるんだろうか。
>>177
去年の OO シンポジウムで青木さんの講演を聴いたよ。
まず、グラフィック環境「じゅん」の宣伝(Smalltalk 版と Java 版がある)。
それと政府関係の仕事をしてるという話だった。
(はったりも含めて)結構できる人のようです。
179デフォルトの名無しさん:01/10/01 04:10
Smalltalkイディオムはなんかすごい
180デフォルトの名無しさん:01/10/01 04:29
lispと違ってSmalltalkは結構仕事あるよ。
カッコとの差か(w
>>180
そういえばASCIIからLisp(しかもマック上のらしい)の本出てたな。
最近流行っているの?>Lisp
九大病院はどうなったー?
183デフォルトの名無しさん:01/10/02 21:43
>>182
その話し聞きたい
>>183
「九大病院!?」
そこでまたブチ切れですよ。
185デフォルトの名無しさん:01/10/04 13:11
>>178
あのひと、元MACオタクの超人です
BSC>FXIS>SRA

(元後輩)
186デフォルトの名無しさん:01/10/05 23:27
187名無しさん:01/10/05 23:51
( ゚Д゚)アヒャヒャ
188デフォルトの名無しさん:01/10/06 00:21
SqueakOSっていまどーなってんの?
self age
190デフォルトの名無しさん:01/10/08 23:22
191デフォルトの名無しさん:01/10/09 14:59
Happy Squeaking! 第五回のサンプルを打ち込んでみましたが,
Squeakのバージョンが新しいせいか,うまく動きません.残念です.

ちなみに上記サイトでは2.4ですが,手もとにあるのは2.7 / 2.8 / 3.0です.
あそこはもう放置されているのでしょうか?
192デフォルトの名無しさん:01/10/10 00:21
>>191
これはMVCの例題なので、MVC Projectの中で試してみてください。3.0では動きました。
また、ご本人は続ける気はあるようですので、励ましのメールを出すと良いかもしれません。
193デフォルトの名無しさん:01/10/10 09:26
あれ?動きますか。
打ち間違いかな。
194193:01/10/11 09:57
ダウンロードしたファイルをfileInしたらちゃんと動きました。
やっぱり打ち間違いでした。
195デフォルトの名無しさん:01/10/11 22:52
>SqueakOS

VMWareのゲストOSとして食べさせたら、VMWareが落ちました(T_T)
>>195
うぐぅ。
VMWareよりSqueakのVMのほうが軽いと思われ。
197デフォルトの名無しさん:01/10/14 17:53
SqueakNOS起動しないあげ
198デフォルトの名無しさん:01/10/15 10:05
SqueakOSってファイルシステムとかどうなってんの? あげ
199デフォルトの名無しさん:01/10/17 22:35
SqueakNOSのswiki見えないあげ
Squeak本っていつごろ出るの?
201デフォルトの名無しさん:01/10/19 03:42
201
>>201
も、もしかして2月1日に出るという符丁ですか?
203デフォルトの名無しさん:01/10/21 03:46
下記の条件にあった Smalltalk 環境はないでしょうか?

1. Unix 系の OS で動作する
2. Non Commercial
3. コマンドラインと親和性が高い
4. GUI も作成可能

2 までだと、Squeak でも良さそうですが、コマンドラインで操作でき、尚且つ
GUI も作成できるという物は見つかりません。
どなたかご存知でしたらお教えください。
204203:01/10/21 03:57
イメージ的には、トランスクリプト、ワークスペース、各種ブラウザが
コマンドラインコンソールに統一された趣です。
emacs のようなインターフェースの Smalltalk 環境があると便利な人も
いるんじゃないかな、と思ったんですけど、無いですかね?
そのままemacs使えよ
206デフォルトの名無しさん:01/10/21 13:46
207デフォルトの名無しさん:01/10/21 23:15
"Hello?"

"shine shine shineshineshineshine shinjimae~"
>>204
トランスクリプトとワークスペースはコンソールに近いけど、各種
ブラウザってのはコンソールでどうやるんだろ? イメージわかない。

SqueakやVisualWorksにはヘッドレスというGUIなしのバッチモード
(httpサーバーとして起動する時などに使う)があるから、標準入力を
評価するプログラムを書いて起動するとかで、コマンドラインからの
操作もできそうな気はする。

あとコマンドラインとEmacs風インターフェースというのは微妙に違うと
思う‥‥‥。
209208:01/10/22 11:03
ああ分かった。
cursesとかのキャラクタ端末ベースのインターフェースが欲しいってことね。
80x25のキャラクタ画面で4分割ペインとか表示されても狭くない?
「放送大学 教養学部 発達と教育専攻」
は、もしかして受講してるだけですか?
どこかの研究室勤めかとばかり思ってた。
211デフォルトの名無しさん:01/10/22 18:29
Solaris 上のSqueak で OpenGL プログラミングをしようとしています。

現在、FFI の X11 の例題がうまく動かず苦戦しています。
FFI の資料を探しています。
詳しい方、よろしくお願いします。

JunのSqueak版があるとうれしいのですが、ありますか?
また、UNIX 上の Squeak で OpenGL を使っている人いますか?
(Windows上のSqueakなら、動く例題がいくつかありました。)

何か分かったらお知らせします。
212203:01/10/23 01:29
GNU Smalltalk のコンパイルに失敗した。ちょっと鬱。
Smalltalk/X もダメだった。

>>209 さん
そんな感じです。
213209:01/10/23 09:14
>>212
このへん
ttp://member.nifty.ne.jp/abee/smalltalk/mobilegear.htm
に紹介されている Methods がそんな感じだったらしいすね。
214デフォルトの名無しさん:01/10/23 18:03
>>209,>>213
MSXを連想しました。何故だろう。
215デフォルトの名無しさん:01/10/24 18:16
squreak 手に入れたんですが、いまだに smalltalk の文法がよくわからないです。良い(squeak の)本かWEBはありませんか。

transcript: "HELP".
だっけ?コメントってどうやるんだっけ。
216デフォルトの名無しさん:01/10/25 07:30
>>215
おすすめのサイトは、 >>5 >>6 に載ってます。
その他いろいろリンクがありますので過去ログ参照して下さい。

> transcript: "HELP".
> だっけ?コメントってどうやるんだっけ。

Transcript show: 'HEEEEELP!!!'.
文法的には
 Transcript がレシーバ(メッセージの受け手であるオブジェクト)
 show: がメッセージ(レシーバの持つメソッドを起動するためのシンボル)
 'HEEEEELP!!!' が引数(ここではStringクラスのインスタンス)
 . がキーワードメッセージ式の終りを示す終端記号

文字列は 'シングルクォート' でコメントが "ダブルクォート" です。
217216:01/10/25 09:31
VisualWorksプログラミング/基礎編
ttp://www.sra.co.jp/people/kondo/business/VW/Basic/index.html
ここも参考になりそうです。
218215:01/10/25 09:34
>>216-217
おお、どうもありがとう
219デフォルトの名無しさん:01/10/25 11:31
>>216
「show: 'HEEEEELP!!!'」がメッセージで、
「show:」がメッセージセレクタ(キーワードメッセージセレクタ)、
「'HEEEEELP!!!'」が引数なのはOK、
「.」はメッセージ式とメッセージ式の区切り文字だと思います(したがって、この例では不要)。
220216:01/10/25 11:46
訂正ありがと。
'.' はターミネータ(Cの';')ではなくセパレータ(Pascalの';')でしたね。
221デフォルトの名無しさん:01/10/25 19:35
Squeak ですが、

WorldMorph クラスってどこにあるんですか?

PasteUpMorph と WorldMorph の関係を教えて下さい。
222デフォルトの名無しさん:01/10/26 09:32
>221
WorldMorphというクラスはありません。グローバル変数WorldにはPasteUpMorphのインスタンスが入っています。

World
http://minnow.cc.gatech.edu/squeak/1816
みんないいなあMorphic使えて。
マシン遅すぎでMVCしかまともに動かん。
224デフォルトの名無しさん:01/10/26 14:42
>>222
リンク先を見てきました。

2.5 以降は、WorldMorph がなくなったんですね。

Morph の例題があるページに WorldMorph が出てきたので、
右往左往していました。

http://pbl.cc.gatech.edu/cs2390/227

上の例題は、PasteUpMorph のメソッドに適当にあわせてやれば
いいということで、よろしいでしょうか?

>>223
自分の Squeak 環境は、メモリ:64MB, CPU:K-6 266MHz です。
はじめからこの環境なので、速いか、遅いかよく分かりません。

1GHzとかでやっている人は、Squeakの体感速度はどうですか?
300MHzとかと比べて速くなりましたか?
お前らSmalltalk/Squeak教えてください。
>>225
いいですよ。
>>224
モバイルギアで動かしているので、うっかりMorphicプロジェクトに
飛びこむと、遅くて死にそうになります。
画面が狭いのでメニューが下にはみ出して、選択できないし。
角度とか。
>角度とか。
これなあに?
アドレスが変わっている。
ブックマークで飛んでくるから、分からなかった。
231デフォルトの名無しさん:01/10/26 23:14
「“ダイナブック”の香りは受け継いでいる」――“パソコンの父”アラン・ケイ氏が来日
http://ascii24.com/news/i/keyp/article/2001/10/26/630756-000.html
232デフォルトの名無しさん:01/10/29 16:26
「どうしてこのスレこんなに盛り上がらないんだ。」
「そりゃあ smalltalk がマイナーだからじゃないの?」
「確かに、日本にいても smalltalk とか squeak とか聞かないしね。」
「本屋に言っても、初心者向けC++、JAVA、SQL、VB、Perlしか見かけないね。」
「Delphi,Lisp,COBOL、ましてやSMALLTALKなんて
絶対見ない。」
「…」
「…」
「あげ(ボソッ)。」
233デフォルトの名無しさん:01/10/29 17:51
>>232
日本語のマニュアルがないからだと思います。
smalltalk はたくさんあるが、squeak は英語ばっかり。
Morphic とかの説明を検索しても、英語のページにリンクしてあるだけ。

だれか、squeak/morphic の日本語のサイト教えて下さい。
234デフォルトの名無しさん:01/10/29 18:04
235デフォルトの名無しさん:01/10/29 18:24
たとえばね、簡単なじゃんけんゲームを squeak で
作るにはどうすればいいのだろう。
Cで書いた場合は↓見たいな感じで。

#define GU 0
#define CHOKI 1
#define PA 2

#define TIE 0
#define WIN 1
#define LOSE 2

(中略)

do{
  printf("番号を入力せよ 1:グゥ 2:チョキ 3:パァ > ");
  scanf("%d", &player);
}while ( plyaer >= 1 && player <= 3 );

player--; /* 0 ベースの値に直す */
computer = rand() % 3;

/* 勝敗判定テーブル */
int table[3][3] = {
  /* Computer = GU, CHOKI, PA */
  { TIE, WIN, LOSE }, /* Player = GU */
  { LOSE, TIE, WIN }, /* Player = CHOKI */
  { WIN, LOSE, TIE } /* Player = PA */
};
result = table[player][computer];
switch (result){
  case TIE:
    printf( "あいこ\n" );    break;
  case WIN:
    printf( "かった\n" );
    break;
  case LOSE:
    printf( "まけた\n" );
    break;
}
/* 終了 */
236デフォルトの名無しさん:01/10/29 18:29
>>235
printf() でつまづいているんですが。

inspect it 以外のやり方お教え下さい。
237デフォルトの名無しさん:01/10/29 18:32
transcript show: 'Hello World'
238デフォルトの名無しさん:01/10/29 23:29
thread age: '落ちないように'
>>236
つーか、このまま直訳するんなら、そのまま文字列を返せばいいじゃん。
あとは使う側でprint itするなりinspect itするなり適当なmorphにブチ込むなり
好きにしてくんさい、っつーことで。
240作ってみたよ:01/10/30 14:36
結果が Transcript show: なのがちと残念。
OKボタンのついたダイアログってどうやって出すんだっけ?

Janken class>>play
 "Janken play"
 | table player computer result |
 table := #((TIE WIN LOSE) (LOSE TIE WIN) (WIN LOSE TIE)).
 player := (PopUpMenu labelArray: #(GU CHOKI PAR) lines: #())
    startUpWithCaption: 'What is your choice?'.
 computer := 3 atRandom.
 result := (table at: player) at: computer.
 Transcript show: result; cr.
241デフォルトの名無しさん:01/10/30 15:12
>>240
おおお!なるほど。
確かに実行できました。どうもありがとう
ゆっくりプログラムを解析します。
242デフォルトの名無しさん:01/10/30 15:14
ところで、コンピュータの出した手を表示しようとして
240での配列の使い方を参考に

Transcript show: #(GU CHOKI PAR) ar computer.

と書きましたがエラーでした。一度配列オブジェクトをつくらないとダメなのですか。
243デフォルトの名無しさん:01/10/30 15:16
すみません

Transcript show: #(GU CHOKI PAR) at: computer.

としたらうまくいきました。
244デフォルトの名無しさん:01/10/30 15:20
重ね重ね申し訳ない。かっこつけ忘れてました。

Transcript show: (#(GU CHOKI PA) at: computer); cr.

ところで、

Transcript show: 'computer='; (#(GU CHOKI PA) at: computer); cr.

では、なぜうまくいかないのでしょうか。
>>244
Transcript show: 'computer', (#(GU CHOKI PA) at: computer); cr.
にかえてみそ。
「;」じゃなくて「,」っつーことね。
246デフォルトの名無しさん:01/10/30 15:39
なるほど。
カンマは文字列の連結か区切りなのですか?
でもcr は改行 \n ですよね。
改行の直前は ; だし…
あ cr は改行文字ではなく、改行命令ですか?
それならば納得がいきます。
cr は show に対しての cr ではなく、 Transcript に対して cr しているという事ですか。
>>246
そう。245は
| messageString1 messageString2 messageString |
messageString1 := 'computer'.
messageString2 := #(GU CHOKI PA) at: computer.
messageString := messageString1 , messageString2.
Transcript show: messageString.
Transcript cr
と同じ。
「;」はmessage cascadingといって、
前のメッセージ式(この場合Transcript show: ...)の
リシーバ(この場合はTranscript)にメッセージを投げる。
プログラムが見にくくなるから俺は好きじゃないけど。
Squeakいじってると、代入記号は ':=' ではなく '←' (ASCIIの'_')
のほうが見やすいと感じるようになってしまった。
>>248
:=って何か興覚めだよな。
250デフォルトの名無しさん:01/10/30 19:20
>>249
僕は、Prolog(:- ばっかり出てくるやつ) を使っていたから、
:= の方が違和感がない。
251デフォルトの名無しさん:01/10/30 23:47
>>240
PopUpMenu inform: aString
Object>>inform:も切ってあるので、レシーバは任意のオブジェクトでも可。
でも、これはやり過ぎかも。

>>246
,はレシーバの集合と引数の集合を結合した「新しい」集合を返すメソッドのための二項メッセージセレクタ。
252バージョン2だよ:01/10/31 10:15
なんでもクラスにしてしまうヲレ。

Object subclass: #Janken
 instanceVariableNames: ''
 classVariableNames: ''
 poolDictionaries: ''
 category: 'My-Games'

Janken class>>play
 "Janken play"
 | table player computer result |
 table _ #((TIE WIN LOSE) (LOSE TIE WIN) (WIN LOSE TIE)).
 player _ (PopUpMenu labelArray: #(GU CHOKI PAR) lines: #())
    startUpWithCaption: 'What is your choice?'.
 computer _ 3 atRandom.
 result _ (table at: player) at: computer.
 Transcript show: result; cr.
 PopUpMenu inform: result, '.
computer''s choice is ', (#(GU CHOKI PAR) at: computer)
253デフォルトの名無しさん:01/10/31 20:01
OXゲームを作ろうと思いました。が、いきなり詰まりました。

| x y |

x _ ( PopUpMenu
labelArray: #(X1 X2 X3)
lines: #()
).

y _ ( PopUpMenu
labelArray: #(Y1 Y2 Y2)
lines: #()
).

Transcript show: x,' ',y.

X及びY座標を選択させたいのですが、なぜかエラです。
どうしてですか?
254デフォルトの名無しさん:01/10/31 20:02
あ、アンダーバーは "←" です。
255デフォルトの名無しさん:01/10/31 20:59
>>253
PopUpMenu>>labelArray:lines: は、PopupMenu のインスタンスを返します。
それに startUpWithCaption: を送ると、首尾よくユーザーの選択した番号
が返るという寸法です。
256デフォルトの名無しさん:01/10/31 21:47
startUpWithCaption: は、ポップアップメニューのキャプションを
設定するプロパティではないのですか?
257256:01/10/31 21:52
なるほど、

| x y |

x _ ( PopUpMenu
labelArray: #(X1 X2 X3)
lines: #()
)startUpWithCaption: 'Select X Coord'.

y _ ( PopUpMenu
labelArray: #(Y1 Y2 Y2)
lines: #()
)startUpWithCaption: 'Select Y Coord'.

Transcript show: x,' ',y.

としたらうまくいきました。
startUpWithCaption: と 'Select X Coord'.
の間にスペースを入れる必要があるのですね。
258デフォルトの名無しさん:01/10/31 22:05
| px py field cx cy|

field _ #((0 0 0)(0 0 0 ) (0 0 0)).

px _ ( PopUpMenu labelArray: #(X1 X2 X3) lines: #() )startUpWithCaption: 'Select X Coord'.

py _ ( PopUpMenu labelArray: #(Y1 Y2 Y2) lines: #() )startUpWithCaption: 'Select Y Coord'.

Transcript show: 'player: x='.
Transcript show: px.
Transcript show: ' y='.
Transcript show: py.
Transcript cr.

cx _ 3 atRandom.
cy _ 3 atRandom.

Transcript show: 'computer x='.
Transcript show: cx.
Transcript show: ' y='.
Transcript show: cy.
Transcript cr.

ここまでできたのですが、px ← ... と py ← .. の行を
Cで言うところの
do{
 ...
}while ( field[px][py] == 0 );

で囲むにはどうすればよいですか?
259デフォルトの名無しさん:01/10/31 23:23
[((field at: px) at: py) = 0] whileTrue: [...]

かな?

ジャンケンはともかく、三目並べくらいのものを組むなら、
クラスを定義してメソッド分割したほうがいいような。
260デフォルトの名無しさん:01/10/31 23:24
クラスに仕立て上げるとなると、

system ブラウザ立ち上げて、リストに新クラスを new して、
メソッドつくって… て感じですか。
261デフォルトの名無しさん:01/11/01 00:13
>>260 そうですね。
262デフォルトの名無しさん:01/11/01 01:31
x,y 座標を入力させるメソッド
x,y が空かどうかを調べるメソッド
x,y に○×を書き込むメソッド
一直線に並んでいるかを調べるメソッド

が必要なわけですよね。

配列の読み出しは array at: index
だと分かったのですが、配列への書き込みはどうやるのでしょう。
263デフォルトの名無しさん:01/11/01 01:44
>>262
ブラウザ開いて、
Arrayのat:メソッドを探せば
その近所にあると思うぞ。

ぢぢー臭い事言うけど、
Smalltalkを学ぶのに必要なのは
知識を得ることではなくて
知識を得る方法を得ることだよ。
まあSmalltalkに限らないけど。
264まま、バージョン3:01/11/01 07:37
要らない音が鳴るようになりました

Object subclass: #Janken
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'My-Games'

Janken class>>play
"Janken play"
| table player computer result |
table _ #((TIE WIN LOSE) (LOSE TIE WIN) (WIN LOSE TIE)).
player _ (PopUpMenu labelArray: #(GU CHOKI PAR) lines: #())
startUpWithCaption: 'What is your choice?'.
computer _ 3 atRandom.
result _ (table at: player) at: computer.
"Transcript show: result; cr."
[:each ||sound|
sound _ (Dictionary new)
at: #TIE put: 'clink';
at: #LOSE put: 'peaks';
at: #WIN put: (AbstractSound stereoBachFugue);
at: each.
(each == #WIN)
ifTrue: [sound play]
ifFalse: [Smalltalk beep: sound]] value: result.
PopUpMenu inform: result, '.
computer''s choice is ', (#(GU CHOKI PAR) at: computer)
>>263
倉庫行きを食い止め アーンド 少しでも盛り上げるつもり だったり。
266デフォルトの名無しさん:01/11/01 11:15
>>264
> [:each ||sound| .... ] value: result.

のくだり、自分が書いたら #WIN と #LOOSE の処理を最初から分けちゃう気が
するのですが、Smalltalkではこういう書き方が定跡なんでしょうか?
267266:01/11/01 11:24
>>266
> #WIN と #LOOSE の処理を最初から分けちゃう気が
→ 「#WIN とそれ以外の処理を」に訂正。
268デフォルトの名無しさん:01/11/01 15:37
>>266
っつーか、俺なら
at: #TIE put: 'clink';
at: #LOSE put: 'peaks';
at: #WIN put: (AbstractSound stereoBachFugue);
のあたりを
at: #TIE put: [Smalltalk beep: 'clink'];
at: #LOSE put: [Smalltalk beep: 'peaks'];
at: #WIN put: [AbstractSound stereoBachFugue];
にして謎めいたifTrue:ifFalse:を避ける。
269266:01/11/01 16:00
コードをよ〜く眺めたら、
> [:each ||sound| .... ] value: result.

のブロック中の each を result に置き換えればブロックいらない
じゃないですか。お〜い、書いた人〜。
>>269
これは後でメソッドにする時に便利だよ。
俺もたまにやる。
271デフォルトの名無しさん:01/11/01 16:19
>>264
これって、クラスメソッドの定義ですよね。
これを利用するためには、

systembrowser を open

カテゴリに My-Games を add item
>>264 を上書き paste↓全て選択して accept ですよね。
何故か Janlen class>>play でエラーらしき
メッセージが表示されてしまうのですが。
272266:01/11/01 16:38
>>270
なるほど…。
「そのうち分割するつもりだけど最初は一箇所にまとめとこう。」
みたいな見通しでこういうコードを書くわけですね。

勉強になるなあ。
273デフォルトの名無しさん:01/11/01 16:46
>>271
``Janken class>>play'' から``Janken class>>''を除いた、
``play'' 以下をコードペインに貼りつけて下さい。

``クラス名>>メソッド名'' は「どのクラスのどのメソッドか」を
表現するための記法で、コードを記述する時は使いません。

それから accept するとき全選択の必要はないです。
じゃんけんゲームで勝つことは特別な出来事です (藁

>>268
そっか、遅延させるだけで良しなんだ。 ありがとね。
まだ ブロックがフツーの括弧に見える時がある 264より。

Object subclass: #Janken
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'My-Games'

Janken class>>play
"Janken play"
| table player computer result |
table _ #((TIE WIN LOSE) (LOSE TIE WIN) (WIN LOSE TIE)).
player _ (PopUpMenu labelArray: #(GU CHOKI PAR) lines: #())
startUpWithCaption: 'What is your choice?'.
computer _ 3 atRandom.
result _ (table at: player) at: computer.
"Transcript show: result; cr."
((Dictionary new)
   at: #TIE put: [Smalltalk beep: 'clink'];
   at: #LOSE put: [Smalltalk beep: 'peaks'];
   at: #WIN put: [AbstractSound stereoBachFugue play];
   at: result) value.
PopUpMenu inform: result, '.
computer''s choice is ', (#(GU CHOKI PAR) at: computer)
self halt
277276:01/11/02 23:12
ほんとに一日スレッドが止まっちゃってたよ。(w
そんなつもりじゃなかったのに〜。
278デフォルトの名無しさん:01/11/03 00:24
squeak でグラフィック描画ってどうすればできますか。

line: from #(0,0); to #(100,100).

みたいな感じですか。
279デフォルトの名無しさん:01/11/03 01:50
280dyna:01/11/03 05:19
電車とかでのSqueakの勉強用にPDA買いたいんですが、
Squeakが動くPDAのおすすめってなんですかね。
やっぱザウルス?(ポポペはちょっとはずい。)
281デフォルトの名無しさん:01/11/03 12:25
キーボードはあった方が良いです。ソフトキーボードや文字認識はストレスが溜まる上、狭い画面がさらに狭くなります。画面は横長の方が楽。
ざうちゅうは使えるヒープが少ないのが難点。初期イメージからクラスを削らないと動きません(これはポポペも同じ)。SH3もちょっと遅い。
コスト重視ならSigmarion 1,2、お金に余裕があれば、Jornada 710,720あたりでしょうか。ブラウズするだけなら、GFORTも良い感じ。あとメモリカードの予算も忘れずに(最低で32MB。できれば64MB以上で多いほどよい)。
いずれの場合も絶対的なパフォーマンスが不足しているので、サイズが我慢できるならサブノートも要検討。MVCには十分ですが、Morphicはあきらめです。日本語もちょっとつらい。
282デフォルトの名無しさん:01/11/03 17:37
>>88
最近アラン・ケイ来日してましたよ。
初めて彼の生プレゼンテーション見た。感動。
ちなみにプレゼンは間違ってもPowerPoint使うなんてことはなくて、
全部Squeakでやってました。スライドもそれで作って。
283デフォルトの名無しさん:01/11/03 17:59
>>282
さすがアラン・ケイ。
スライドを作るって結構めんどいだろうに。
284デフォルトの名無しさん:01/11/03 18:12
>>283
スライドといっても、Squeak上のお絵かきツールで絵を描いておいて、
それをプロジェクターで投影しているというものでした。PowerPoint
みたいな・・・って誤解されてないですよね。

もちろん音楽やアニメにその場でメソッドを追加して機能を増やしたり、
ネットワーク経由でやりとりしたりとかいうデモもありました。

プレゼンはやっぱり上手かったです。1時間半くらいだったけど、みん
な集中して聞いてました。

そういえば上でもどこに所属しているか話題になってましたけど、彼が
Non Profit Organizationを設立しているみたいです。
285デフォルトの名無しさん:01/11/03 18:56
>>284
Viewpoints Research Institute, Inc.
http://cacf.tripod.co.jp/vri.html
286デフォルトの名無しさん:01/11/03 23:52
>>284
Bob'sSuperSwikiあたりのプロジェクトリストを眺めれば
Squeakを使ったスライドがころがってるよね。
あんな感じ?
287デフォルトの名無しさん:01/11/04 19:37
ウィンストンのSmalltalk買った。
一応Smalltaker(笑)。記念あげ。
>>287
あ、takerになっちゃった。talkerね。
289デフォルトの名無しさん:01/11/05 01:35
【レポート】ウィンドウとパーソナル・コンピュータの父来日!
http://pcweb.mycom.co.jp/news/2001/10/31/17.html
http://pcweb.mycom.co.jp/news/2001/10/31/18.html
http://pcweb.mycom.co.jp/news/2001/10/31/19.html

オブジェクト指向の生みの親であるAlan Kay博士、教育を語る
http://www.watch.impress.co.jp/internet/www/article/2001/1031/kay.htm

「“ダイナブック”の香りは受け継いでいる」――“パソコンの父”アラン・ケ
イ氏が来日
http://ascii24.com/news/i/keyp/article/2001/10/26/630756-000.html

Alan Kay氏、東京で講演 「パーソナルコンピュータの革命は終わったのか?」
http://macfannet.mycom.co.jp/news/0110/25/1025alankay_seminar.html

お、お父さん…
Bobs SuperSWikiの開き方。(某所より)
1)Squeak を起動する

2)画面下の黄色いflap(カーソルを近づけるとポップアップする)のFINDボタンを押す

3)左ペインからBobs SuperSwikiをクリック

4)ここでインターネットからプロジェクト一覧を取得しに行く

5)右ペインから適当なプロジェクトを選んでOKボタンを押す

6)プログレスバーで出て、終るとプロジェクトが開く

※ダイアルアップではかなり重いです
292デフォルトの名無しさん:01/11/05 18:20
>>291
Making SpaceInvador ってロードしてみたけどよく分からなかった。
このとおりにすればインベーダーゲームが作れるってこと?
293デフォルトの名無しさん:01/11/05 23:28
>>292
今見てみた。
確かに eToy を使ってインベーダーゲームを作るチュートリアルって感じだね。

> Bring up viewer on the tank. Click on the tank flap and rename it
> acordingly by clicking on the word Sketch on the very top of the
> viewer flap and type in tank.

最初の "Bring up viewer" っていうのは、Morphのインスペクタみたいな奴。
Haloの中の目のアイコンボタンをクリックすると画面の右端に半透明なパネル
が出る。(Haloというのはオブジェクトの回りにでる丸い小アイコン)

タンクの絵の上で数回黄ボタンクリックしてみるとタンク用のHaloが出るので、
その中から目のアイコンを押して出すことができる。

あとは図と説明の通りにやってみてね。
294dyna:01/11/06 03:15
>>281
情報ありがとうございます。
SigmarionとかJornadaって機能は魅力的なんですが、パームサイズの
PDAでSqueakが動くというところに惹かれるんですよね、、、。
それと、(予算の関係で)購入は年末ぐらいを予定しているので、
現在の候補としては、NECのPocketGearかiPAQ、もしくはザウルス
あたりを考えています。
#iPAQの3800シリーズ日本語版のリリース予定ってあるんでしょうか。

もうひとつ質問ですみません。
基本的にPocketPC 2002マシンであってもSqueakは動作すると考えていて
よろしいのでしょうか。
295dyna:01/11/06 03:19
>>289
最初にAscii24の記事内の写真を見たとき、なんだか冴えない表情をして
いたように思ったので、アラン・ケイ本人が退屈していたのかなと
ちょっと心配だったのですが、プレゼンテーションも盛況だった様子で、
うれしく思います。
講演に実際に行かれた方、大変うらやましいです!
296デフォルトの名無しさん:01/11/07 00:46
>>294
PocketPC 2002ですが、たぶん大丈夫です。もし駄目だったとしても誰かが作るでしょう。
あと、JS Landscapeが使える機種の方が何かと都合が良いと思います。
http://www.jimmysoftware.com/Software/Landscape2/
297デフォルトの名無しさん:01/11/07 14:43
Webブラウザやメーラは日本語が使えるそうですが、
IRCクライアントは日本語化されてるんでしょうか?
298デフォルトの名無しさん:01/11/07 21:38
299デフォルトの名無しさん:01/11/07 22:13
>>298
ML? 過去ログどこで見れるの?
300デフォルトの名無しさん:01/11/07 22:59
>>295
舞台裏のアラン・ケイ見たんですが、さびしくたばこふかしながら、
「俺の財団に金だすとこはないんかよぉ」と愚痴垂れてました。
いいアイデアを出しながらも、いつも山師扱いされ、成果は持って
かれていくのに嫌気がさしていたみたいです。
私が「今からでも遅くないから、ダイナブックの名称の盗用で東京
浜松町電気訴えてみては? 第二の東○ノートPC事件っつって、
巨額の賠償金取れますよ。手伝いましょうか?」
と声をかけたところ、かなり乗り気の様子でしたよ
・・・という夢をみた。
301デフォルトの名無しさん:01/11/09 09:57
self age.
302デフォルトの名無しさん:01/11/10 03:10
[(programBBS indexOf: squeakThread) > 16] whileTrue: [squeakThread age]
303デフォルトの名無しさん:01/11/10 07:38
programBBS allThreadsDo: [:th |
    (th title = 'ΨΨΨ Smalltalk/ Squeak 教えろゴルァ ΨΨΨ')
        ifTrue: [self squeakThread: th]].
304デフォルトの名無しさん:01/11/11 13:13
GNU Smalltalkを使いたいのですが、
勉強になるページを知っていたら教えてください。
(ソースは入手いたしました。これからコンパイルしてみます)
>ダイナブックの名称の盗用で東京浜松町電気訴えてみては?

あれは当時許可を取ったということだったはずだが?

というか当時、よく「あんなもん」にケイが許可出したもんだ?っていうほうが
激しい驚きだったな。ノートpcというものの登場は確かに画期的だったが、
それをいきなりケイの理想の「ダイナブック」と関連付けるってのは
あまりにも馬鹿というかネタというか。出来るわけでもないのに。
頼む某社も某社なら受けるケイも…。

時は流れて、今のPCなどなら力技でなんとでもなるだろうな。
だからこそSqueakが出てきてPDAでも動くなんていう状況を
「彼は」作ってくれたわけだろうな。
力を正しい方向に使えば本物のダイナブックも夢じゃないということで。
306デフォルトの名無しさん:01/11/12 00:05
日本でダイナブックの商標を持っているのはアスキー。アスキーが東芝に許可したとか。
http://www2.ipdl.jpo.go.jp/beginner_tm/TM_DETAIL_FRAME.cgi?1&1&1005490354291090
アラン・ケイがどう思っているかは以下のページの2枚目の写真でも明らか。
http://www.watch.impress.co.jp/akiba/hotline/980718/alankay.html
307デフォルトの名無しさん:01/11/12 00:23
>>306
1 枚目の写真の方が気になる。肩に手が・・・。

GNU Smalltalk の Windows 版があるらしいんだけど、
どなたか知りませんか?
308デフォルトの名無しさん:01/11/12 00:49
>>308
Morphicには馴染めないけど、Consoleには馴染める、
そんな人にはGNU Smalltalk.
310デフォルトの名無しさん:01/11/12 03:14
>>306の go.jpの方、
>ただ今サーバが混み合っています。しばらくしてから接続して下さい。
としか出んzo!
311デフォルトの名無しさん:01/11/12 22:52
>>310
cgiの引数が毎回変るみたい。「ダイナブック」で検索してみて。
http://www2.ipdl.jpo.go.jp/beginner_tm/TM_AREA.cgi
312デフォルトの名無しさん:01/11/13 10:50
>>308
Morphicには馴染めないけど、Consoleには馴染める、
そんな人にはSmallScript.
http://www.smallscript.org/
313デフォルトの名無しさん:01/11/14 00:37
SmallScript より StepTalk で Smalltalk 使ってみたいよ。
http://www.gnustep.net/software.html
314デフォルトの名無しさん:01/11/15 00:51
315デフォルトの名無しさん:01/11/15 01:21
squeakを勉強し始めるのにお勧めの書籍はなんですか?
Squeak触ってみた。テキストを選択して do it が衝撃的だった。
やばい、カッコイイじゃないか。
318203:01/11/16 00:30
こういうのの Smalltalk 版できないかな。
もちろん日本語が通って GUI が出来るのが欲しいです。
コマンドライン万歳って事で、よろしくお頼み申します。

http://users.pandora.be/stes/compiler.html
319デフォルトの名無しさん:01/11/16 12:34
頭狂アンダーグラウンド(爆)ゴルァ
頭狂アンダーグラウンド(爆)ゴルァ
頭狂アンダーグラウンド(爆)ゴルァ
320デフォルトの名無しさん:01/11/17 03:44
Jun for SmalltalkをSqueakに移植するって話あんまり聞かない気がするけど
(おれだけ?)取り組んでいる人っているのかな。
青木さんがあんまりSqueakを(少なくともSmalltalk入門用としては)すすめて
ないみたいだから、ある意味タブーなんだろうか。
すごーく興味あるんだけど。
おれ、こそーりとrendering contextを実装してたりする。
named user primitive定義したりして。
Baloon3D使ってもできることだから、
まだ公開しようか悩んでるけど。
興味あったら思いあたる人にメイルしてみそ。

(一部の人には正体がバレるかな、こりゃ)
322デフォルトの名無しさん:01/11/17 07:53
Ruby >>>>>>>>>>>> smalltalk
323320:01/11/17 08:46
>>321
いいですねー。
でもおれ、まだまだSmalltalk歴浅いし、知合いとか思い当たる人いなんですよね、、、。
VisualWorksでJunのソース眺めながら勉強してたんですけど、
Squeakがすごーく楽しいから、不意にそう思っただけなんです。
でも、青木さんが折にふれて言っていることも正しいと思うし、
しばらくはVW環境で勉強を続けることにします。

といいつつ、

Squeakに移植したぜーとかいう人で公開してもいいと言う人、是非
アナウンスきぼんw)。
324デフォルトの名無しさん:01/11/17 09:09
>>322
反応するという意味ではないが、こういうのや、他すれでの下らん言語論争を見てたりすると、Smalltallerって唯我独尊って感じでいいなぁとかおもふよ。達観してるつーか。
(ちなみに漏れはSmalltalkerになりたいJava厨)
Squeakにもともとある3D系のライブラリって、筍とどのくらい被るんですか。
立方体が回ってるデモなんか、ウィンドウの周りにダイヤルがあったりして、
見た目は非常に影響を受けてるなーという気がするんですが。
326デフォルトの名無しさん:01/11/17 12:13
>>325
あのホイール(っていうのかな)は筍がオリジナルってんでもないんじゃない?
おれはSGIのInventorとかいうフレームワークライブラリで初めて見た
ような気がしてるんだけど。違ってたらスマソ。
327デフォルトの名無しさん:01/11/17 12:57
>>323
ご存知と思いますが、青木さんのgoodiesの一部をnishisさんが移植しています。
http://www.sra.co.jp/people/nishis/smalltalk/Squeak/goodies/index.html
http://www.sra.co.jp/people/nishis/smalltalk/Squeak/ppp/pppsqueakss.html
328デフォルトの名無しさん:01/11/17 19:53
<独り言>
SmallTalk + Lisp みたいなワケのわからないキモイ言語を
作成中です。いじょ。
</独り言>
329デフォルトの名無しさん:01/11/17 20:17
その言語に命名してやるよ。
Smalltalkに対抗して「ひとりごと」。これどうよ?
じゃあ、そのコードを書く事は「ひとりごつ」か。
331328:01/11/17 20:24
>>329,>>330
   / ̄ ̄ ̄ ̄ ̄ ミ
  /   ,――――-ミ
 /  /  /   \ |
 |  /   ,(・) (・) |
  (6       つ  |
  |      ___  |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  |      /__/ /  < それもらった!
/|         /\   \__________
332デフォルトの名無しさん:01/11/18 08:13
>>328
カッコの多い Smalltalk だったらイヤーン。
Dylan は Smalltalk + CLOS らしいけど。

Smalltalk って元々 Lisp の影響が濃いらしいね。
Lisp 知らないからどこら辺がそうなのやら。
333デフォルトの名無しさん:01/11/18 13:06
>>332
データとしての式を評価して実行するという考え方。および遅延評価機構。
LISPではクロージャ。
Smalltalkではブロック。
>>330 ひとりごっつ?
#俺すきだったよ(w
>334
君、古文苦手だったでしょ?
336デフォルトの名無しさん:01/11/19 13:06
Squeak の Morphic の左上の x を押すと
固まる。
OS solaris x86
squeak ver3.0
賛同者、求む。
337デフォルトの名無しさん:01/11/19 20:28
GNU SmalltalkをCygwin上で動かそうと格闘してます。
なんとかビルドできましたが、起動したとたんに
「セグメンテーションフォールト」とか言って、終了しちゃいます。
どなたか克服済みの方いませんか?
338デフォルトの名無しさん:01/11/19 21:13
>>337
素直に Squeak つかおうや、と、言ってみる。楽ですよ。
339デフォルトの名無しさん:01/11/19 23:16
うちのノートパソコンで Squeak 使おうとすると、キーンという甲高い音が
して困ってるんだけど、何か対処法はないですかね?

ちなみに Dell の Inspiron 4000 で、OS は Windows Me 。
グラフィック周りのバグかな。それともハードの所為なのか。
他のソフトではこんなにならないのに。
340337:01/11/20 00:45
>>338
そういってもらえて、なにか吹っ切れた気分だ。
341デフォルトの名無しさん:01/11/20 01:41
>>339
>うちのノートパソコンで Squeak 使おうとすると、キーンという甲高い音が
>して困ってるんだけど、
いや、そりゃSqueakっていうぐらいだから・・・ってもしかしてネタ?
>>341
いや、ノートによってはそういうことがある。
CPU負荷が高くなると何故か甲高い音が聞こえてくる。
>>339
そういうときは2・3回ノートを叩くとなおる。
いつもそれでなおしてるので、実証ずみ。

そうそう。
わたしたちが電気製品をこしらえると同時に
発見し、育んできた、愛情の裏返しの Bug fix 技術ですね。(w
345デフォルトの名無しさん:01/11/20 11:20
>>340
どうしてもconsoleで、ということなら、Embedded Squeakという手も。
http://www.kurtz-fernhout.com/squeak/
346デフォルトの名無しさん:01/11/20 15:54
Balloon3D の日本語の解説サイトお教え下さい。
ソース読んでも、ちんぷんかんぷんです。
検索しても英語のサイトしか見つかりません。
英語読めない私は、ダメですか?
347デフォルトの名無しさん:01/11/20 22:55
348デフォルトの名無しさん:01/11/21 09:52
>>347
もうすこし、つっこんだ解説サイトがあるとうれしいです。
適当な検索語などありましたらお教えください。
BlockContext>>whileTrue:aBlockの実装が
^ [self value] whileTrue: [aBlock value]
になってるけど、どうしてこれでうまくいくのか分からない
>>350
コンパイラがインライン展開していて
実際にはそのメソッドが実行されるわけじゃないから。
って、BlockContext>>whileTrue:のコメントにも書いてあるけど。
| aBlock |
aBlock _ [ | i |
   i _ 0.
   [ (i _ i + 1) < 10 ] whileTrue: [ Transcript show: i ; cr ]].
aBlock method symbolic

==> '29 <89> pushThisContext:
30 <75> pushConstant: 0
31 <C8> send: blockCopy:
32 <A4 16> jumpTo: 56
34 <75> pushConstant: 0
35 <69> popIntoTemp: 1
36 <11> pushTemp: 1
37 <76> pushConstant: 1
38 <B0> send: +
39 <81 41> storeIntoTemp: 1
41 <23> pushConstant: 10
42 <B2> send: <
43 <AC 09> jumpFalse: 54
45 <40> pushLit: Transcript
46 <88> dup
47 <11> pushTemp: 1
48 <E1> send: show:
49 <87> pop
50 <D2> send: cr
51 <87> pop
52 <A3 EE> jumpTo: 36
54 <73> pushConstant: nil
55 <7D> blockReturn
56 <68> popIntoTemp: 0
57 <10> pushTemp: 0
58 <D5> send: method
59 <D4> send: symbolic
60 <7C> returnTop
'
メッセージのカスケード ";"
ってコンパイルしてみるとスタックを dup してるだけだよもん。
353デフォルトの名無しさん:01/11/22 14:01
ファイル入出力関係ですが、いいですか?

1. ファイルlog.datに "test0, test1, test2" と書き出す("は書き出さない)。
2. ファイルlog.datの内容を読み込む。
3. カンマ(,)で区切られた文字列を両端の空白を削除して取得する。

"1"
strOut := 'test0, test1, test2'.
out := DataStream newFileNamed: 'log.dat'.
out nextPut: strOut.
out close.


"2と3"
in := FileStream readOnlyFileNamed: 'log.dat'.
strIn := in contentsOfEntireFile.
in close.
tx := TextDiffBuilder new.
cltn := tx split: strIn by:$,.
cltn do: [:str| Transcript show:(str trimBlanks); cr].


下の2と3の処理はうまく実行できました。

しかし、1で書き出すときにファイルの先頭に変な制御文字が出力されます。
代わりに FileStream print:strOut とすると、
(')がファイルの先頭と最後に追加されてしまいます。

みなさん、どうされていますか?
354デフォルトの名無しさん:01/11/22 16:50
>>353
"2と3"

in := FileStream readOnlyFileNamed: 'log.dat'.
lines := OrderedCollection new.
tx := TextDiffBuilder new.
[in atEnd] whileFalse: [lines add: (tx split: in nextLine by: $,)].
in close.
355デフォルトの名無しさん:01/11/23 00:04
>>353
"1"

strOut := 'test0, test1, test2'.
out := FileStream newFileNamed: 'log.dat'.
out nextPutAll: strOut.
out close
356349:01/11/23 02:55
やっぱ、わかんないや>whileTrue:
普通はインライン展開されるとはいえ、そういうことしなくても動くわけでしょ?
…なんか、根本的に勘違いしてそうだ、漏れ
357デフォルトの名無しさん:01/11/23 14:08
358デフォルトの名無しさん:01/11/23 14:35
>>356
BlockContext>>whileTrue: の中身のコードも
インライン展開されてるからってことで。
つまり、BlockContext>>whileTrue:は
見かけは再帰してるけど、実際には再帰してないから
ちゃんと動くわけさ。
359デフォルトの名無しさん:01/11/23 16:20
drawIndexedLine は実装されていないみたいですね。
360デフォルトの名無しさん:01/11/23 17:44
>>359
Squeak の Balloon3D を使って、
0@0@0 から 1@0@0 まで線をひきたいのですが、
どうしたらよいでしょうか?

いまは、下のように、細長い三角形で代用しています。


rend _ B3DRenderEngine defaultForPlatformOn: Display.

" set viewport "
rend viewport: (Rectangle origin: 10@10 extent: 200@200).
rend clearViewport: Color black.

" set camera "
cam _ B3DCamera new.
cam initialize.
cam position: 0@0@-1.
rend clearDepthBuffer.
rend loadIdentity.
cam renderOn: rend.

" draw triangle as line "
rend trackEmissionColor: true.
rend normal: 0@0@1.
rend color: Color white.
rend drawPolygonAfter: [
rend
vertex: 0@0@0;
vertex: [email protected]@0;
vertex: 1@0@0.
].

rend flush.

よろしくお願いします。
361デフォルトの名無しさん:01/11/25 16:58
age
>>358
TrueやFalseの中のifTrue:ifFalse:も通常、インライン展開されるけど
インライン展開されなくても動くでしょ?
で、whileTrue:もインライン展開されなかったとしたら
あのコードでどう動くのかがよく分からないんですよ
で、どう理解すればいいのかなぁと思ってね…

あと、
>見かけは再帰してるけど、実際には再帰してないから
とありますが、見かけと実際が乖離している理由がわかりません
っていうか、そもそも、インライン展開も分かってないですけどね、僕は
本当なら、コンパイラもライブラリにあるので読んでみるのが筋なんでしょうけど
僕には、ちょっとわからないんですよね
363358:01/11/26 08:23
>>362
358で書いたとおり、BlockContext>>whileTrue:の
[self value] whileTrue: [aBlock value]
がインライン展開されて
5 <70> self
6 <C9> send: value
7 <9C> jumpFalse: 13
8 <10> pushTemp: 0
9 <C9> send: value
10 <87> pop
11 <A3 F8> jumpTo: 5
13 <73> pushConstant: nil
14 <7C> returnTop
となってるから。

なんでこんな実装になってるかというと、
whileTrue:を使うと通常はインライン展開されるけど、
[ x > 0] perform: #whileTrue: with: [x _ x - 1]
みたく強制的にメッセージ送信を発生させてる場合についても
whileTrue:自体が上に書いたバイトコードにインライン展開されていて
効率よく実行できるから。

whileTrue: aBlock
self value ifTrue: [aBlock value. self whileTrue: aBlock]
って感じにしても動くけど、毎回メッセージ送信が発生して、遅くなっちゃうでしょ。
SmallTalk の開発環境がただで…。
いい時代だ。

関係ないが、

オブジェクト指向プログラミングって、
SmallTalkプログラミングっていった方が理解しやすいと思うが、

どうですか?
>>364
その質問の前にSmalltalkをSmallTalkと誤記するのをやめよう。
>>365
ドキュメントとかにも、SmallTalk って書いちゃってるよ。
やばいよ。でも、もう、時効ですよね。

こんなこと知らなくても、プログラミングできるってところがすごいと思った。
367デフォルトの名無しさん:01/11/26 19:52
>>365
御大は「けんかはやめて。"t"が正しいけど、どうでもよいよ」と仰せです。
http://groups.yahoo.com/group/squeak/message/31937
368デフォルトの名無しさん:01/11/26 20:04
>>366
しかし、知らないとまずいこともあります。例えば次の式は通りません。
SmallTalk at: #Object
369デフォルトの名無しさん:01/11/26 20:20
>>367 は英語が読めている。よって、嫉妬する。
>>363
よくよく考えてみると、僕が分かってないのは、BlockContext自体なような気がする
ブラウザの中の仮に作ったMyClassの中で
 [Transcript show: 'What?'] inspect
を実行してみると、
self: [] in MyClass class>>DoIt
sender: nil
pc: 26
stackp: 0
nargs: 0
startpc:26
home: MyClass class>>DoIt
中身ってどこいっちゃったんだろ…
371358:01/11/27 03:04
>>370
そのinspectorの中でhome method symbolicをinspectすべし。
startpc: 26なら、26からがそのBlockContextのバイトコードね。
ちなみにVisualWorksではBlockClosureが自分のバイトコードをちゃんと持ってる。
こういう造りはやっぱSqueakよりVisualWorksのほうがしっかりしてるね。
>>371
なるほど、確かにバイトコードが出てきました。
homeがMyClass class>>DoItとなっていて、
inspectするとMethodContextのインスタンスってことが分かり、
その中のmethodがa CompiledMethod (333)となっていて、
inspectするとinst varsが、バイトコードでした。

あと、超基本的なことかもしれないんですが、
BlockContext instVarNamesが#('nargs' 'startpc' 'home')だったので、
[Transcript show: 'What?'] instVarAt: 3を実行してみると0だったのです。
インスペクターの中では、homeはMyClass class>>DoItだったのに…。

Smalltalk自体、まだ、1週間ちょいしか触ってない超初心者な者で…⊂⌒~⊃。Д。)⊃
>>373
スーパークラスで定義されてるインスタンス変数を勘定してないから。
BlockContext allInstVarNamesを見てみてから
[Transcript show: 'What?'] instVarAt: 6してみそ。
375デフォルトの名無しさん:01/11/27 16:43
>>360
その前にBalloon3Dで点を打つ方法を教えて下さい。

C/OpenGL でいうと、

glBegin(GL_POINTS);
glVertex3f(0.0, 0.0, 0.0);
glEnd();

みたいな感じです。
とりあえず、Ballon3Dでできるか、できないかだけおしえて下さい。
376squeak習い始め:01/11/28 01:44
>>374
なるほど、できました

他に、オブジェクトをいろんな角度で調べるための
お勧めの基本的なメッセージってどんなのがありますか?
>>376
instVarAt:とか、デバッガとかの環境を作るんでない限り
お行儀のいい人はあんまり使うもんじゃないよ。
あとisKindOf:とかrespondsTo:とかも同様かな。
instVarAt:に比べれば、しょうがなく使う場合が比較的多いけどね。
この手のオブジェクトの化けの皮を剥ぐメッセージは多用しないほうがいいよ。

俺的にSmalltalkの学習で一番鮮烈だったのは、
OrderedCollectionがサイズを増やすためにbecome:してるのを見たときだったな。
Squeakでは違う実装になってるけど。
378squeak習い始め:01/11/29 03:01
なんか、簡単なプロジェクトの実際のコード(イメージ)を見てみたい
>>378
Bob's super swikiで適当なプロジェクトを探してみたら?
下にある橙色のタブのFIND...を押してみそ。
380名無しさん@XEmacs:01/11/30 20:40
>>378
プロジェクトのコード? イメージ?
SystemBrowserを立ち上げると、コードはイヤというほど詰まってます。

システムのコードとアプリケーションのコードが分かれていないっちゅうか、
一緒くたに入っているので。
381squeak習い始め:01/12/01 06:21
>>380
知ってるからこそ、微妙な聞き方になったんだよね
知りたいのは「簡単な」コードはどんなのがあるか?ってことだけど、
そもそも環境と開発コードが一緒なので、「(イメージ)」みたいな言い方になっちゃって…
380さんもかなり微妙な表現になってるしw

より正確には、もとのライブラリ(と呼んで良いのかどうか…)はいじられていなくて、
付け足されたコードは理解が容易なもの
…っていうか、なんか都合の良いこと言ってるなぁ
自分で何か作ってみるのが一番早いかもね

>>379
また、しらない機能だ…
ちなみに、「下にある橙色のタブのFIND...を押して」みるまで、
約1時間かかった(よく分からなくてw)
382デフォルトの名無しさん:01/12/02 13:31
>>381
なるべく古くて小さなイメージを使う(MiniSqueakなど)。
ftp://st.cs.uiuc.edu/Smalltalk/Squeak/SmallSqueaksForPDAs/MiniSqueak2.2/
単純なアプリから調べる(Workspace, FileListなど)。
383名無しさん@XEmacs:01/12/02 18:32
>>381
> また、しらない機能だ…
> ちなみに、「下にある橙色のタブのFIND...を押して」みるまで、
> 約1時間かかった(よく分からなくてw)

過去ログ >>291 に書いてあるYO!
384デフォルトの名無しさん:01/12/04 18:14
さみしいから age
385デフォルトの名無しさん:01/12/07 14:08
ageとくよー
386デフォルトの名無しさん:01/12/12 09:14
self:age.
387デフォルトの名無しさん:01/12/13 15:20
今日発売のMac Fan 2002年1月号でSqueak特集。EToyの使い方あり。
388デフォルトの名無しさん:01/12/14 01:33
>>386
シンタックスエラー
Nothing more expected ->self:age
389デフォルトの名無しさん:01/12/14 11:08
>387
それは非マカーでも買う価値あり?
390デフォルトの名無しさん:01/12/14 13:37
>>389
あり。特にMorphでスクリプトの書き方が分からなかった人におすすめ。
評判が良ければ連載の話もあるらしいので、その意味でも買い。
391デフォルトの名無しさん:01/12/14 13:47
なんかうれしいage
でもアメリカに住んでててに入らない。
内容アップきぼん。
392デフォルトの名無しさん:01/12/14 18:48
買う買うage
393デフォルトの名無しさん:01/12/14 23:11
Squeakland
http://www.squeakland.org/
のページにある、"Get squeak!"というリンクからインストールした
プラグインをインストールしてみたのですが、IEで使うことができ
ません(http://www.squeakland.org/author/etoys.htmlのプロジェ
クトを開いても何も起きない)。
ブラウザのセキュリティレベルを変えたりファイアウォールを使わ
なかったりしてもだめです。なぜなんでしょうか?

あとデスクトップに"SQUEAK"というアイコンが表示され、これで
Squeakを起動すると"Find"ボタンからプロジェクトが選択でき、
動くようなのですが、そういうもの(プラグインといってもブラウザ
じゃ使えないもの)なんでしょうか?

あと>>291のBobs SuperSWikiのプロジェクトを開いてもエラーに
なってしまうのですが、これも何が悪いのか良く分かりません。
教えてばかりで悪いけど、参考になるページとかありましたら、
教えてください、ゴルァ
394sage:01/12/14 23:21
>>387
誰が記事かいてるの?
395デフォルトの名無しさん:01/12/14 23:37
>>394
平井夏児。たぶん有名Squeakerのペンネーム。Googleでヒットせず。
396デフォルトの名無しさん:01/12/15 23:00
>>393
ブラウザの中で使えます(IE5.0SP2で確認)。NPSqueak.dllがIEのPluginsディレクトリにあるか、拡張子PRがMIMEタイプapplication/x-squeak-projectとしてプラグインと関連付けられているかなどを確認してください。あるいはアンインストールして入れ直すか。
通常であればsqueakland-BSSなどのプロジェクトをFINDで直接開いても問題ありません。
397デフォルトの名無しさん:01/12/16 00:56
>>396
お返事ありがとう。
アンインストール後、入れなおしではダメだったです。拡張子との関連を
みてみると、インストーラがデフォルトで指定するパスがCドライブを指す
ようになっていたので、これか!、と思って直してみたけど、これでもや
っぱりだめでした。MIMEタイプはレジストリを直接いじらないとダメなん
でしたっけ? こんどやってみます。
とりあえずはSqueakを単体で動かしていろいろ遊んでみることにします。
398 :01/12/16 06:52
SqueakってMacOS Xで動くのでしゅか?
アラン・ケイはPowerbookでいろいろデモってた様ですが・・・???
399デフォルトの名無しさん:01/12/16 08:19
>>398
動くっす。squeak.orgを参照。
400 :01/12/16 08:57
>>399
for Cocoa まであるじゃん!
for Classic or for Carbon or for Cocoa まじどれがええねん???
401デフォルトの名無しさん:01/12/16 13:48
>>400
全部落として試してみれば。違うのはVM(とプラグイン)だけだし。
http://minnow.cc.gatech.edu/squeak/306
パフォーマンスはあまり変らないみたい。
http://minnow.cc.gatech.edu/squeak/768
402ななしさん:01/12/16 16:07
>>402

VMのベンチマークと体感速度は随分違うっす。
403デフォルトの名無しさん:01/12/16 18:49
>>40
どっちがどうなのよ
404403:01/12/16 18:50
スマソ
>>40ではなく>>403
405デフォルトの名無しさん:01/12/16 22:47
>今日発売のMac Fan 2002年1月号でSqueak特集。EToyの使い方あり。
本屋で立ち読みしてみたけど、ちいっと分量が少ないなあ・・・。
もうちょっとページが欲しかった。連載とか(連載じゃないよね?)。
406デフォルトの名無しさん:01/12/17 03:25
好評であれば連載との噂 < SML
407デフォルトの名無しさん:01/12/19 00:37
アランケーって誰?
スモルトーク作った人?
408デフォルトの名無しさん:01/12/19 00:47
>407
ア・ランケという人です。
講演では、スモークとともに現れて、「コンピュータ革命はまだ始ま
ってさえいない!」とずっと言いつづけていて、参加者の注意を引き
ます。
409デフォルトの名無しさん:01/12/19 00:51
>406
あの記事やっぱ出来悪くないですか?
あれを元に興味を持った初心者は、画面の流れどおり、ちょっといじ
ってオシマイになってしまうと思う。ましてSmalltalkの奥深さに気付く
ことなんてないだろうに。

あ、でももしかして有名な人がペンネームで書いているんですか?
批判しない方が身のためですか? Smalltalk界は性格悪い人多いんでしょうか? 人物評希望。
410デフォルトの名無しさん:01/12/19 15:42
リアル厨房です。
一度聞いいてみたかったんですけど、SmalltalkつかうひとってMacづかいが
多い(気がする)のはなぜですか。
歴史関係に疎いものでなにか理由があるのかなぁとか思いまして。
(アランケイがアップルにいたんでしたよね、確か)
それともなんか精神的なものなのですか。
411デフォルトの名無しさん:01/12/19 22:23
>>409
Smalltalkの奥深さがどうこうよりも、Etoyで遊んでいたほうが楽しいと思う。
なにはともあれ、まずは起動して使ってもらうこと。
412デフォルトの名無しさん:01/12/20 00:53
Mac Power にアラン・ケイのインタビューが載っていたから買ってしまったよ。
俺、この人大好きだ。また Apple に戻って欲しい。
413デフォルトの名無しさん:01/12/20 01:03
>>410
DynaBook 構想とかコンピュータのユーザビリティの向上を唱え続けた人だからね。
Apple 社の製品コンセプトとかなり似通った位置にいる人である事は確か。
実際、Apple に在籍していた事もあるし、Macintosh の原型はアラン・ケイ等が
開発した Alto というワークステーションだよ。

Smalltalk とアラン・ケイを追いかけていたら Lisp という言語に辿り着いた。
シーモア・パパートの作った LOGO は Scheme の方言らしいね。
LOGO はアラン・ケイが Smalltalk / Alto を考え付くきっかけとなった言語。
まだあまり触ってないけれど、見かけよりはかなり良い感じ!
414デフォルトの名無しさん:01/12/20 01:23
Macintoshの前にLisa入れてくれろ。
Alto(でいいんだっけ?ちがうきもするが)からインスピレーションを得たのはビル・アトキンスンで
QuickDrawかそれだったんじゃ?
SmalltalkはSimuraを源流に考えるのがワシのワカイころは定説だったのぉ
LOGOとSchemeの関係ははじめて知ったよ。方言っていうには、津軽弁とフランス語くらい違う気もするけど、ま、いいや。
最近のアラン・ケイ、テッド・ネルソンが重なって見えてくるのはワシだけ、だろうな。
415747:01/12/20 01:50
>>414
分かるところだけレス。
Alto については、PARC に Jobs 自らが見学に行って、Alto を見て PARC の人材
を引き抜いて来て Macintosh が生まれた。
同じ頃にゲイツも PARC に見学に行ったらしいけど、ゲイツがそれについて語って
いる記録を読んだこと無いので、あまり感銘を受けなかったのかも。
Simura については Smalltalk は Simura 系列になっているのは知っているけど、
PARC の Lisp 系( MIT 出身?)の人材が Smalltalk の実装に深く関わったらしい
のでそっちを影響を強く見る人のほうが多いみたい。ブロックとクロージャ等。
LOGO は実装レベルでの話。インタープリタが Scheme の影響が濃ゆいみたい。
文法も結構似ていると思ってるんだけど、どっちも初心者なので何とも言えない。

長文連続カキコスマソ。
416415:01/12/20 02:07
>>415
何か変なハンドルになってるけど忘れて下さい。

>>414
テッド・ネルソンと言えば Xanadu プロジェクトは今どうなってるんだろう?
アラン・ケイも最近は伝道師というよりは殉教者みたいで悲しいです。

ビル・アトキンソンが Alto の影響で、っていうのは聞いたことがありませんでしたが
ありそうな話。その後のハイパーカードに活かされたとか。
アトキンソンも復活して欲しいな。

ここら辺の話はダグラス・エンゲルバードとか興味深い人が沢山いて凄い面白いですよね。
417414:01/12/20 02:09
>>415
ふむふむ、なるほど。
まぁ、言いかたと見かたによるってことね。

そう、Lispがどうなってるかはしらないけど、Smalltalkのブロックは、
定義されてるメソッド(っていう言い方も賛否あるけど)の環境を受け継ぐのに、
ブロック自身のバイトコードは、それを定義してるメソッドのバイトコードに
埋め込まれてるのが「!」だったなぁ。
Lispはどーなの?
418414:01/12/20 02:12
>>416
Xanaduは、慶応大学で似たようなプロジェクトがあって、そのために客員教授
として招かれたってうわさ聞いたけど、よくわからないです。
いまだに宣教中なんでしょう。
419デフォルトの名無しさん:01/12/20 02:49
>>410
パイレーツ・イン・シリコンバレー
という映画ミレ。 アラン・ケイは出てこんが、コンピュータの歴史の
勉強(の一助)にはなるよ。結構ドラマチックで面白かったし。
420デフォルトの名無しさん:01/12/20 02:56
>>419
うん、それ、漏れも面白かったと思います。
でも、一緒に見た奥さんが、それ以来Steve Jobs嫌いになって
しまいました。いつかMac買おうと思ってたけど障害発生。はは。
>>415
Windows1.0のネタになった的な話は読んだ記憶があるけど...後付けかな(笑)>ゲイツの訪問
>>419
ビデヲ屋逝ってきまーす。
423デフォルトの名無しさん:01/12/23 04:15
オレンジブックとかパープルブックとかブルーブックとか
グリーンだかイエローだか、

ってどんなもん???
訳本アリマス???
絶版???
424デフォルトの名無しさん:01/12/23 11:25
CDのデータ記録フォーマットなんかを定義してるんじゃなかったっけ?
ちがったっけ。
黄色い表紙だから通称イエローブックとか、いろいろ
425デフォルトの名無しさん:01/12/23 13:41
>424
話をヘンな方向に持っていくなよ(笑)。
426デフォルトの名無しさん:01/12/23 14:07
Blue Book Smalltalk-80: The Language and Its Implementation(絶版)
Orange Book Smalltalk-80: The Interactive Programming Environment(絶版)
Green Book Smalltalk-80: Bits of History, Words of Advice(絶版)
Yellow Book Smalltalk-80: Creating a User Interface and Graphical Applications(出版されず)
Purple Book Smalltalk-80: The Language(BlueからVMの実装方法を削ったもの)
パープルブック SMALLTALK-80 -言語詳細-(Blueの邦訳)
オレンジブック SMALLTALK-80 -対話形プログラミング環境-(Orangeの邦訳)

Purpleを除き、入手はやや難しいかも。特にBlueはeBayでも高値が付きます。また、日本版パープル、オレンジは歴史的価値以上のものはないかもしれません。なお、Purpleの削除部分は以下で読めます。
http://users.ipa.net/~dwighth/smalltalk/bluebook/bluebook_imp_toc.html
427423:01/12/23 14:16
>>426
 レスありがとーございます。


>歴史的価値以上のものはないかもしれません

 というのはどーゆーことでしょう。
 内容がイマイチ役立たずとゆーことでしょうか?

 それともプレミアがつかないだけ?
428デフォルトの名無しさん:01/12/23 14:51
まず、訂正。
>>426
>パープルブック SMALLTALK-80 -言語詳細-(Blueの邦訳)
Purpleの邦訳です。
>オレンジブック SMALLTALK-80 -対話形プログラミング環境-(Orangeの邦訳)
「対話型」です。すみません。

>>423
Squeakも含め、本の内容をそのまま適用できる環境が入手困難なこと、価格が高いこと(パープル6,800円、オレンジ5,500円)、訳にやや難があること、パープルに実装編が無いことなどです。あと、すごく重いので扱いが面倒。
429デフォルトの名無しさん:01/12/27 10:02
thisContext age
430デフォルトの名無しさん:01/12/28 03:52
この中でSirenっていうライブラリをSqueakに組み込んでる人っていますか?
http://www.create.ucsb.edu/Siren/index.html
面白そうなんで試してみたいんだけどSetUpできない。。
file inしてる途中でエラーが出てしまうのよ。
431デフォルトの名無しさん:01/12/28 07:15
Sueak面白そうなんですけど、日本のコミュニティの雰囲気ってど
うなんですか? 神がかった教祖様に偉そうな態度で洗脳されてし
まうことはないですか?
万物はオブジェクトである、とか曼荼羅なんとかとか・・・。
そーゆーのは苦手です。
432デフォルトの名無しさん:01/12/28 11:14
>>430
fileIn済みのイメージを使ってみるとか。
ftp://ftp.create.ucsb.edu/pub/Smalltalk/Music/Siren/3.0.image/
433デフォルトの名無しさん:01/12/28 13:16
a b:c d:e.って、どう解釈されるのですか?
(a (b:c)) d:e.
a (b:c d:e).
どちら?
434デフォルトの名無しさん:01/12/28 13:56
a に c,e を伴なって b:d: メッセージを送る
435デフォルトの名無しさん:01/12/28 13:59
前者にしたければ、 (a b:c) d:e. だ a b:c ; d:e. って書くと a b:c . a d:e. になるぞ。
436デフォルトの名無しさん:01/12/28 14:42
単項メッセージとか二項メッセージみたいに
連続してキーワードメッセージを送りたい場合は
a +b +c +d +e.
a Add:b Add:c Add:d Add:e.ではなくて
(((a Add:b) Add:c) Add:d) Add:e.となりますよね?
これをもっとスマートに書くには?
437デフォルトの名無しさん:01/12/28 15:22
add:add:add:add:メッセージを定義する
引数オブジェクトをイテレートするメッセージを定義する。
ってところでしょか。
438デフォルトの名無しさん:01/12/28 15:49
#(b c d e) do:[ :x | a add: x].
439デフォルトの名無しさん:01/12/28 16:02
>>432
おお、なるほど。
とりいそぎありがとうございます。
Squeakは音系の処理はどうなんでしょ。
MIDI系は一通り実装してるみたいすけど。
向こうだとSqueakAudioMLとかありますけど、
日本でそれ目的で使ってる人っていますか?
>>438
そりゃちがうだろ
441デフォルトの名無しさん:01/12/31 19:48
16進数16rFFのrって、どういう意味ですか?
radix
なるほど。。。
444デフォルトの名無しさん:02/01/04 04:39
三が日過ぎたage
445デフォルトの名無しさん:02/01/04 15:12

僕は、数値計算は sqkcakit を使っています。

みなさんは何を使っていますか?
reduce
447デフォルトの名無しさん:02/01/04 16:27
ループの中でcのようにcontinueとかbreakとかできますか?
448デフォルトの名無しさん:02/01/04 16:44
449デフォルトの名無しさん:02/01/06 00:46
Squeak for Zaurus って実用的なスピードで動くのでしょうか?
450デフォルトの名無しさん:02/01/06 08:08
>>449
MI-C1, EX1以降の機種でMVCならインタラクティブな操作でもストレスを感じない程度。むしろ問題はヒープ。
451デフォルトの名無しさん:02/01/06 12:41
>>450
どうもです。
ヒープは、本体のメモリを増やせば解決しますか?
452デフォルトの名無しさん:02/01/06 13:29
>>451
ザウルスでメモリ増設は難しいのでは。16MB RAMのE21でもイメージのシュリンクは必須。
453デフォルトの名無しさん:02/01/06 14:19
>>452
え? 16MBでも厳しいんですか?
Windows CE 機で動かした方がいいかなぁ。。。
454デフォルトの名無しさん:02/01/06 16:46
>>453
最近のSqueakは巨大化の一途で、最新の3.2alphaイメージは16MBを超えています。
古いイメージなら大丈夫ですが。いずれにしても、Morphicや要らない機能があるので、シュリンクはしたほうが良いでしょう。
ちなみに、iPAQ(StrongARM 206MHz)は、MI-EX1(SH3 120MHz)に比べ、slop-stones
ベンチマークで約4.4倍高速です。
455デフォルトの名無しさん:02/01/06 17:18
大きい本屋でもマニュアルが一冊しかなかったよ
456デフォルトの名無しさん:02/01/08 22:01
Smalltalkの問題点、Blockの評価系-閉包概念が未熟である
http://www.sra.co.jp/people/aoki/ST80Problems/page02.htm

どこが問題なのか、だ、誰か説明を。。。
青木 淳って、superASCII創刊のころSmaltalkの連載してたひと??
91年6月号から1年間「Smalltalkソフトウェア開発」っていうのを連載してたね。
459デフォルトの名無しさん:02/01/09 00:08
460デフォルトの名無しさん:02/01/09 00:11
461デフォルトの名無しさん:02/01/09 00:15
イメージのシュリンクって何ですか?
ぷれ〜り〜ちゃ〜ん
どっぐちゃ〜ん
463デフォルトの名無しさん:02/01/09 01:23
>>456
この青木さんがどこが問題だって言ってるのかわからんから、俺の意見だが、
Smalltalkのブロックは、ブロック内から、外の環境を参照できるから、副作用のあるコードが書ける
 (ってか、制御構造を実現するのもブロックの目的だからしょうがない)ってのと、
ブロック内のローカル変数が使えないってのは、弱点だと思った。
464デフォルトの名無しさん:02/01/09 05:06
>>463
同じく俺的問題点
1. ブロック内ローカル変数がメソッド内ローカル変数として実装されていた点
2. ブロック式とその実行コンテキストがごちゃ混ぜになってた点
3. ってゆーか、ブロック式がメソッドの一部として実装されていた点 ( >>370-371 参照)
この辺がClosureをしっかり実装している言語(関数型言語が多いね)と比べると
改善の余地があったと思う。
過去形で書いたのは、もうVisualWorksではほぼ解決しているから。
VisualWorksで俺的不満があるのはContinuationぐらいかな。
465デフォルトの名無しさん:02/01/09 11:05
>>464
継続はこの書き方ではいまいちということ?
http://www.sra.co.jp/people/aoki/SmalltalkTextbookJ/textbook27.html
466デフォルトの名無しさん:02/01/09 11:11
>>464
Squeakにも"Block Closures coming soon"だそうです。
http://groups.yahoo.com/group/squeak/message/37749
467464:02/01/09 12:37
>>465
いまいちっつーか、全然駄目でしょう。
schemeやSML/NJで実装されているcall/ccとthrowのパワーから見ると、
ダメダメもいいとこです。
http://www.cs.hmc.edu/courses/1999/fall/cs131/lectures/lecture15.html とか
http://www.ueda.info.waseda.ac.jp/~igarashi/ruby/api-ja/Kernel.html#callcc とか
http://www.ipa.go.jp/NBP/12nendo/12mito/mdata/12-2h/12-2h.pdf とかが
参考になるでしょう。
468デフォルトの名無しさん:02/01/09 16:06
「Smalltalk-80」と「Objectworks」と「VisualWorks」の違いは何ですか?
「今までのSmalltalk-80とは根本的に異なり、Smalltalk-90とも呼ぶべきものである」
って、青木さんは言ってますけど。
469デフォルトの名無しさん:02/01/10 00:56
>>468
 Smalltalk-80は、1981年にXEROXが対外的に公開した最初のバージョ
ン。80にも様々なバージョンがあり、2.5まで続いた。1988年からは
XEROXからスピンアウトしたParcPlace Systems(PPS)がライセンス元。
 ObjectworksはPPSの商標。Objectworks for C++、Objectworks
for Smalltalk-80があった。
 Objectworks?Smalltalkは、1990年にリリースされた初のメジャー
バージョンアップ版。イメージングモデルはBitBLTから、ホストウィン
ドウシステムとステンシル&ペイントを用いるSPIM(Smalltalk
Portable Imaging Model)へ移行した。これと前後して、オブジェクト
テーブルが廃止され、ダイナミックトランスレーション、ジェネレーシ
ョンスキャベンジ、ブロッククロージャが導入されている。バージョン
はRelease 4.0から4.1まで。
 VisualWorksは1992年に登場。1.0はRelease 4.1用のGUIビルダと
RDBインタフェースのための拡張クラスライブラリだった。2.0からは
ObjectWorksと統合され、これ以降はPPS版のSmalltalkを指して
VisualWorksと呼ぶことが多い。
 一方、PPSはParcPlace-Digitalk、ObjectShareと社名を変え、1999
年にVisualWorksの権利をCincomに売却している。その後も開発は続け
られており、最新版は2001年の5i.4である。5iからはネームスペース
の導入、XML化などが行なわれている。近日中に5i.5が出る予定だが、
7(?)の噂もある。
470デフォルトの名無しさん:02/01/10 01:06
471デフォルトの名無しさん:02/01/13 00:14
self display
472461:02/01/13 11:28
>>470
Thanks!
473デフォルトの名無しさん:02/01/18 11:39
self displayOn: programmingTech at: 1
474ドキュンユーザー:02/01/20 17:17
青木導師の「Smalltalkイディオム」買いましたが、やっぱこれ、逝ちゃって
ませんか?
さまざまな文献からの綺羅星のごとき引用も、変化自在な例え話も、「ために
する」感じがして読み手のこと考えているのかなと。
例えば城砦都市の話とかでセキュリティの話をしているかとおもうと、それが
Smalltalkのオブジェクト間の通信の自由さと比較されたり。
それってぜんぜん別の話じゃあ・・・?
引用も多すぎて、なんか引用が多すぎる文章をからかった、パロディみたいだ
と思いました。本気ならコワイ。
でも内容は高度で、Smalltalk関連情報に飢えている心の隙間を埋めてくれる
良書であるとは思います。
結論:自意識過剰
>>474
直接しゃべると楽しそうだよね>青木氏
Smalltalkerとしてもすごいんだけど、それ以上に雑学博士だ
476デフォルトの名無しさん:02/01/23 19:57
self class threadSunkException
  handle: [ :ex | self age ]
  do: [ self ROM ]
477よかいち:02/01/26 16:26
Morphで例えば、画面下のsuppliesから貼り付けたオブジェクト(楕円とか)
のスクリプトの使い方はわかってきたのですが、ほかのプログラムのコード
中からこれを扱うにはどうしたらよいのでしょうか?
www.squeag.orgのdocumentationセクションのチュートリアルを読んでも、
このあたりの説明が見当たらなくて、さっぱり先に進めません。
もう少し段階を追って理解ができるサンプルソースとかあればいいけど、
いきなりブラウザで探検するには自分にはちょっと荷が重い。
皆さんはどのように初学者から脱してきたのでしょうか?
478デフォルトの名無しさん:02/01/26 23:16
>>477
| morph |
morph _ World submorphNamed: 'Ellipse'.
morph scriptPerformer script1

とにかくブラウズ。片っ端からワークスペースで評価。なんでもインスペクト。
selfの気持ちになって考える。イメージが壊れても気にしない。可能なら師匠につく。
479デフォルトの名無しさん:02/01/27 08:20
ザウルスでftp(ごっこ)しようとしたらPasswordクラスが抜けててエラー
誰かPasswordクラスの定義おしえてくれー(>_<)/←ざうおんり
480デフォルトの名無しさん:02/01/27 14:28
>>479
とりあえずPasswordの代わりにStringを使っても行ける。MI-EX1のFile ListでUIUCArchiveに入って確認。
クラス変数Serversに入っている定義済サーバのパスワードはanObsoletePasswordなので作りなおすこと。
しかし、母艦を買ったほうが良いと思われ。

!ServerDirectory methodsFor: 'accessing' stamp: 'nanahsi 1/27/2002 14:25'!
password
passwordHolder
ifNil: [passwordHolder _ String new].
^ passwordHolder! !

!ServerDirectory methodsFor: 'accessing' stamp: 'nanashi 1/27/2002 14:25'!
password: pp
passwordHolder _ pp! !
481デフォルトの名無しさん:02/01/27 15:43
やっぱりそうですか(^-^;(→作り直せ)…これが気になって夜も寝られなかったんで(笑)だっPassworはcacheとsequenceもってるのにそこに直接代入?してるとこがあったんですもん(-_-;ありがとござm(__)m
482よかいち:02/01/27 16:07
483よかいち:02/01/27 16:09
↑間違えちゃった・・・。

>>478
Thanksです。精進してみます。
師匠はおろか、Squeak、ひどいとSmalltalkさえ知らないような奴
ばっかしなので、こういう場が貴重なのでした。
484デフォルトの名無しさん:02/01/27 19:59
ソケット解放できまそん(-_-;ってゆうかインスタンスあるのは見れるけどIDがわからんくてさわれません…誰か助けて(;_;)(笑)
485デフォルトの名無しさん:02/01/27 20:19
>>484
ソケットのインスタンスが見えるなら、close送ればいいじゃん。
そもそも、なにをどうしたのか分からん。
486デフォルトの名無しさん:02/01/27 21:01
arreyのかたちで見えるだけで実際にはさわれないんですよ(-_-;ソケットのインタンスにアクセスする方法ってほかにないんですかね(^-^;←今は

Socket allInstances

でかろうじてあるのがわかるだけで…
487デフォルトの名無しさん:02/01/27 21:32
>>486
だったら、Socket allIntancesをinspect itして、Inspectorでそのインスタンスの入っているインデックスを選択してから、イエローボタンメニューでinspectすれば。
488デフォルトの名無しさん:02/01/28 08:23
多分解決m(__)mしかしソケットインスタンスって一度できたらきえないんでそうか…まだまだ未熟(-_-;べんきょしよ
>>488
どっかに参照が残ってんじゃないの?
490デフォルトの名無しさん:02/01/28 14:44
参照ってなんね(・_・)?(笑)システムが終了しても残ってるもんなんでしょか(^-^;ちなみに別のイメージでは(ソケットの)インスタンスはなかったどす。SoapOperaいれたせいかな…
491デフォルトの名無しさん:02/01/29 10:42
>490
そうです。すみません。
492デフォルトの名無しさん:02/01/29 15:32
サタンのお出ましだーーーーー
493デフォルトの名無しさん:02/01/30 00:53
>>490
Smalltalkでソケットに限らずオブジェクトが消えない(ガーベジコレクトされない)のは参照が残っている
からです。
具体的には、何らかの変数にそのオブジェクトが束縛された状態になっているということです。
一般にグローバル変数やクラス変数など寿命の長い変数は要注意ですが、そのオブジェクトに対する
インスペクタやデバッガなどを開けたままにしておいても参照は残ります。
Squeakの場合、ワークスペースで一時変数を宣言せずに使った場合もワークスペースを閉じない限り
変数が残るので要注意です。
また、イメージを保存(スナップショット)すると、その時点で存在しているオブジェクトが永続化されます
から、再起動しても消えません。
494デフォルトの名無しさん:02/01/30 14:26
>>493
よくわかりましたm(__)mガベジコレクタ自分で動かすようにします(^-^;
495デフォルトの名無しさん:02/01/30 15:57
>>494
Smalltalk garbegeCollectを評価するなどして、手動でGCしたとしても、
原因となっている変数を特定して束縛を解かない限り、オブジェクトは回収
されません。
VisualWorksなどでは任意のオブジェクトにallOwnersを送れるので、まだ
楽ですが、Squeakでは地道な作業になります。
暴力的な方法としては、become:を使って強制的にポインタを張り替える手
がありますが、あまりおすすめできません。
496デフォルトの名無しさん:02/01/30 16:25
>>495
っつーか、何とスリ換えるかが問題ですな。
別のソケットとかじゃモトノモクアミだし。(藁
497デフォルトの名無しさん:02/01/30 21:31
>>495
私はVisualWorkerだから、Squeakには詳しくないけれど、
SqueakのInspectorにはObjects point to thisとかいう
メニューがあったと思う。だから、allOwnersと同じ様な
メソッドもある筈。

そうそう、参照されていなくとも、OSの資源を掴んだまま
なら、そのオブジェクトはゴミ扱いされないよね。
498デフォルトの名無しさん:02/01/30 22:15
>>497
SystemDictionary>>pointersTo:
でした。Smalltalkがやるとは。
逝ってきます。
499デフォルトの名無しさん:02/01/31 10:04
>>497
> そうそう、参照されていなくとも、OSの資源を掴んだまま
> なら、そのオブジェクトはゴミ扱いされないよね。

え、そうだっけ?
参照されなくて外部資源を掴んだままのオブジェクトがGCで処理されないとすると、
そのオブジェクトは永久に資源を掴んだままになっちゃうと思うけど。
しかも参照がないから開放することすらできない。

通常はweak referenceを使ってGCされる時に自動的に開放させるよね。
Visual WorksのPixmapもそうなってるし、
俺も外部資源を直接掴むオブジェクトを書く時は必ずそうしているが。
Squeakではそうはなってないの?
self get: 500
501497:02/01/31 23:43
> 通常はweak referenceを使ってGCされる時に自動的に開放させるよね。
> Visual WorksのPixmapもそうなってるし、

それは、普通にOSの資源を掴んでいたら、開放されないから、
ライブラリ側でそう実装しているんでしょ。言語仕様上では
開放されないで正しい。Squeakのライブラリがどう実装して
いるか知らないから、ちょっと書いておいたんだけれど。

> しかも参照がないから開放することすらできない。

Behavior>>allInstancesがあるでしょ。ObjectMemoryも触れるし。
Smalltalkの環境内にuntouchableな場所は無いじゃんか。
502499:02/02/01 02:08
>>501
じゃあ仮に、外部資源掴んでいるオブジェクトはGCで回収されないとするよ。
(1) そのオブジェクトをそのまま放置すると、どのみち外部資源は解放されないから、
そのオブジェクトを回収しようが回収しまいが、関係なし。
(2) Behavior>>allInstancesなりObjectMemoryなりですべてのオブジェクトを巡回して、
  外部資源を掴んだまま、他のオブジェクトからの参照のないオブジェクトを探して
  外部資源を解放してやるとすると、
  「それってGCの仕事そのものじゃん」

というわけで、GCで回収する対象から外す意味が全然わからんのですが。

実際、VisualWorksでは外部資源を掴んでようが掴んでなかろうがGCで回収されるし、
回収されるからこそWeakDictionaryなりで回収される時に外部資源を解放するんだけど。
そもそも、あるオブジェクトが外部資源を掴んでいるかどうかなんて、どうやって判定する?
VMが管理している資源ならともかく、OSから直接取ってきた資源なんて、どうしようもないと思うが。
503デフォルトの名無しさん:02/02/01 02:12
Palm 上で動く smalltalk インタープリタないですかねー。
Scheme や Forth は沢山あるのにな。
LispMe は GUI も作れるらしいです。
というぼやきは置いといて、、、

smalltalk ってインタープリタの実装が難しい言語なのでしょうか。
Lisp や Forth は比較的簡単だと聞きますが、如何でしょうか。
もし難しいとしたらどこら辺がそうなのか是非教えて下さい。
497さんと499さんのGC議論は非常に興味深い。
続けてくださいマシ。
>>503
Smalltalkって、大抵の実装はインタプリタなんだけど…
コマンドラインベースな実装の事を言いたいんだという仮定で話すと、
コマンドラインなもの(GNU Smalltalkとか)を作るのは別に難しくないと思う。
ただ、それじゃあSmalltalkのよさが活きてこないということでしょう。
506デフォルトの名無しさん:02/02/01 10:02
507デフォルトの名無しさん:02/02/02 00:46
GUIがらみの実装から、Browserをつくるまでがめんどくせぇからパスってことなんじゃあないの
508503:02/02/02 00:59
>>505
ごめんなさい。良く分かりません。
インタープリタ言語ならコマンドラインでもインタープリタを使用します。

それと、Smalltalk ってインタープリタというか VM でしたね。Squeak とか。
勘違いしていました。

>>506
それ・・・違・・・。
Palm 上で手軽に smalltalk プログラミングがしたい・・・。
509デフォルトの名無しさん:02/02/02 01:11
>>508
>Palm 上で手軽に smalltalk プログラミングがしたい・・・。

無理無理。Palmじゃ解像度が足りない。最低VGAないと、話にならない。
CPU、メモリはSmalltalk-80の頃を考えれば充分なんだけど。
510デフォルトの名無しさん:02/02/02 01:26
>>509
PalmOSの場合、ダイナミックヒープが最大でも256KBというのが問題かと。80の頃よりきつい。
>503
これでsmalltalk作りなさい
http://www.lispme.de/lispme/
512503:02/02/02 01:44
>>509
あのブラウザって必須なんですかね。
無ければ無いで何とかなりそうなのに。
要はメソッドやらクラスやらを検索する別の仕組みがあれば
良いんですよね。
513503:02/02/02 01:56
>>503
それ使っています。

それを元に Python インタープリタ作っている人もいますね。
http://www.endeavors.com/pippy/

Smalltalk が Small Device で動いたら嬉しい人は沢山いるはずなのに・・・。
514デフォルトの名無しさん:02/02/02 02:06
>>508
つーか、VMにバイトコードインタプリタが入ってるんですが。インタプリタであること、即ちインタラクティブじゃないです。
その意味で「インタプリタ言語」という呼び方は曖昧。
515デフォルトの名無しさん:02/02/02 02:26
>>512
それこそGNU Smalltalk。
516503:02/02/02 03:14
>>505
済みません。そうですね。理解しました。

>>510
Smalltalk 処理系ってメモリ喰いなんでしょうか。

>>511
LittleSmalltalk のソースコードは見た事があるのですが、
無理・・・。

>>513>>503>>511 の間違いでした。
517デフォルトの名無しさん:02/02/02 08:17
>>516
本来的には特別メモリ喰いってことはないけど
Smalltalkの開発環境のよさはGUIに負う所が多くて
GUIを持ち込むとやっぱどうしても…
518age:02/02/03 07:15
関連スレ
http://piza.2ch.net/tech/kako/982/982707274.html

ところで Squeak や VisualWorks 等の有名どころ以外の処理系って
どうなの? Little Smalltalk とか GNUSmalltalk とか、、、
使っている人いない?
「じゅん」ってどうなのよ? 使ったことある人。
すれ違いすかね?
520デフォルトの名無しさん:02/02/03 21:09
>>519
じゅんはねえ、有用なものがごちゃごちゃ入ってるのよ。
何でそれぞれ別々に配布してくれないのかと思うくらい、
そりゃーもう、色々と。でも、GPLなのがイヤーン。
521デフォルトの名無しさん:02/02/03 21:25
Squeak版じゅんは開発予定ないの?
522デフォルトの名無しさん:02/02/04 16:51
>>521
ないっしょ。じゅんの最重要コンテンツたる3Dグラフィクスには
Squeak/Aliceがあるから。
523デフォルトの名無しさん:02/02/04 22:07
>>523アンタエライヨ
525521:02/02/05 23:07
>>522、524
青木導師に睨まれるってこと?
もしかして、日本Linux界の生越みたいな存在?
526デフォルトの名無しさん:02/02/05 23:55
>>525
いや、そうじゃなくて、移植の必要性が薄いのよ。
ただでさえ、人的資源の足りてないSmalltalk界で、
動機づけが薄いとなったら、立ち上がりすらしない
のは自明かと。
タイトル見て ayu スレかと思った…
528デフォルトの名無しさん:02/02/06 23:22
+とか-がメッセージになってないのが、妥協していると思います。
だから純粋なオブジェクト指向言語ではないのです。
3 plus: 4とか3 +: 4にすればよいのれす。
アラン・ケイに電話しておきます。

よってあげ。
529デフォルトの名無しさん:02/02/06 23:30
>>528
「+」は2項メッセージセレクタで、「+ 4」はメッセージ、「3 + 4」はメッセージ式ですが。
>>529
いや、ひょっとしたら528は
SmallInteger同士の加算がprimitiveで実装されているのが気に入らない
といってるのかも。
がんばってSmalltalkで加算機を実装するか?1 bitずつ取り出して...
531デフォルトの名無しさん:02/02/07 08:08
Squeakで、自分の書いたコードをApplyする前に、
改行やインデントを標準的なものに(何が標準的かしらんけど)整形してくれる
コマンドってあります?(VisualWorksにあるみたいな)
#Smalltalkのコードの見た目を如何にきれいにするか、未だに
#自分のスタイルが見つけられません。もうこの際、スタンダードな
#書き方に従ってしまおうかと。
532デフォルトの名無しさん:02/02/07 09:54
>>531
あるよ。
acceptの代わりにmoreとか何とかいうのを選択すると、
それっぽい項目がある。
デフォルトではショートカットが設定されてなかったと思ったけど、
こういう頻繁に使う機能はデフォルトの状態から
ショートカットを設定して、できればacceptの近辺にしてほしかったな。
more...とかいちいち選んでらんないよな。
ま、自分でいじればいいからいいけど。
533デフォルトの名無しさん:02/02/07 10:52
ParagraphEditor class >> initializeCmdKeyShortcuts
ParagraphEditor >> prettyPrint

ParagraphEditor の menu massages以下
ParagraphEditor の editing keys以下

を見てがんばる




変更したら
ParagraphEditor initialize
534デフォルトの名無しさん:02/02/07 13:44
>>532

シフトキーを押しながらメニューを出す操作すれば、直接 more... に
いけるざます。
535デフォルトの名無しさん:02/02/07 13:50
>>530
Squeakの場合、プリミティブもSmalltalkで記述されているというのではだめ?
Interpreter>>primitiveAdd とか。
536デフォルトの名無しさん:02/02/07 15:02
>>535
いや、たぶん528は引数のあるメッセージセレクタには:をつけなきゃあかん
ということを言いたいのだろう。加減乗除の優先順位まで無視するならそこ
まで徹底しろよ、ゴルァと。
537デフォルトの名無しさん:02/02/07 15:02
初心者です。スマソ。
Squeakで、マウスの3つボタンの割当てを変更したいのですが、
どうすればいいでしょうか。
右クリックで do it したひ、、、。
538デフォルトの名無しさん:02/02/07 15:04
>>537
マウスボタンのリマップはいろいろ弊害あるよ。できなくはないけど。
それよか、alt + d じゃダメ?
539531:02/02/07 15:05
>>532 >>533 >>534
禿しくサンクス。
>>535
まあ、primitiveAddはいいんだけどさ、Smalltalkとしても読めるから。
結構、まんまCじゃん、ってプリミティブもあるけど(藁

ところで、以前Squeakでユーザ・プリミティブ書いたとき、
start to: end by: step do: [ :i | ... ]
みたいなSmalltalkのコードから
for (i = start; i <= end; i++) {...}
とか出力されちゃって、stepが負の時死んだ事があるよ。
ま、たしかに仕方ないことだとは思うのだが。
この件があってから、
「SqueakはプリミティブもSmalltalkなんだぜ!」
と強くいえなくなっちゃったよ。よわっちーな、俺。
541537:02/02/07 15:07
>>538
イイ!
なんでもと早く教えてくれなかったの。
542537:02/02/07 15:10
>>538
ついでにスマソ。
accept に対応するショートカットキーってあります?
っていうか、そういう一覧てどこかを見ればわかるのでしょうか、、、。
543537:02/02/07 15:12
>>542
つーか、メニューにかっこ付きでかいてあるやん。
逝って来ます。

よってさげ。
544デフォルトの名無しさん:02/02/07 15:13
>>541
(藁
メニュー項目の最後に括弧でくくって書いてあるアルファベットは
そのだぐいなのさ。大文字はシフトキー併用だから気を付けてね。
あと、メニューにないのもhelp...→command-key helpにいっぱい
あるから参照されたし。使い方がややこしいのもあるので分からな
かったら訊いてミソ。
545デフォルトの名無しさん:02/02/07 17:20
>>536
優先順位をなくすなら、単項メッセージセレクタも廃止ですな。3 odd: nilとか。
つーか、528はキーワードメッセージだけがメッセージだと思っていたとか。
546デフォルトの名無しさん:02/02/07 17:32
>>545
流れから、そのフシつよし。(w
547デフォルトの名無しさん:02/02/07 23:01
3.2以後のMVCどーなってんのじゃ
Esc押しただけでノーティファイアがあがりやがるぜ
もー使うなってことか?
548デフォルトの名無しさん:02/02/07 23:37
>>547
ホントだ。これはひどいですね。とりあえずこれで逃げました。

!ParagraphEditor methodsFor: 'menu messages' stamp: 'nanashi 2/7/2002 23:35'!
offerMenuFromEsc: characterStream
^ true! !
549デフォルトの名無しさん:02/02/07 23:56
>>547
すみません。ミスりました。548は入れないで以下の式をdo itしてください。

(ParagraphEditor classPool at: #CmdActions) at: 28 put: #selectCurrentTypeIn:

ちゃんと直すなら、ParagraphEditor class>>initializeCmdKeyShortcuts
550デフォルトの名無しさん:02/02/08 00:28
Morphだけで使ってる分にはEscでメニューがあいて便利
551デフォルトの名無しさん:02/02/08 00:44
>>548 はこんなふうにしたかったんじゃない?
!ParagraphEditor methodsFor: 'nonediting/nontyping keys' stamp: '2ch 2/8/2002 00:29'!
offerMenuFromEsc: characterStream
^ self selectCurrentTypeIn: characterStream! !

>>547
>もー使うなってことか?
この程度のノーティファイアでビビる程度のスキルなら答えは
“YES”だろうて(w。MVCフレームワークは死にゆく運命だから
逆にダン・インガルスは「殺したくなければ皆でフィックスして!」
ってボランティアを募っている。 >>550 も言っているけどMVCに
変な郷愁に駆られているのでもないかぎり、Morphicを使うが吉。
Morphicはここのところ急激に洗練されてきていると思うけど。
どうよ。
552550:02/02/08 01:07
FileContentsBrowserまで壊れたまま放置(3.2gamma,3.3)されてるのを見て、これからのMVCは荒らされるだけだと思いましたね。

いちいち修正入れるのめんどくせーし、アプリのユーザーインターフェースはMophしか対応しねーし、もーいらないさね。
553デフォルトの名無しさん:02/02/08 14:17
…と、言いつつ>>552はMVCに愛があると見た(w。
Browser>>systemCategoryListIndex:のself changed: #relabel.を
コメントアウトしてみそ。まあこれも最新ウプでFileListの
主要なメソッドがあぼーんされちまえば無駄なあがきだが……
554デフォルトの名無しさん:02/02/10 10:40
>>553
552じゃないが、
まあSmalltalkに限らずOOやってればMVC的な美しさに憧れる時期はあるし、
けっこう引きずるもんだよな。
俺もMorph的なインスタンスベースの良さは認めつつも
やっぱりMVCのコードが動かなくなっていくのは寂しいよ。蔚。
555デフォルトの名無しさん:02/02/11 09:33
AgeMorph openInWorld
>>555

いや、それを言うなら AgeMorph new openInWorld だってば(w
557デフォルトの名無しさん:02/02/11 21:37
VC++のドキュメント・ビューアーキテクチャーってMVCのマネなんですか?
やっぱし。
558デフォルトの名無しさん:02/02/12 17:22
突然ですが、
コネクト4(立体4目並べ?)をSqueakで作りたいんです。
で、「穴が空いていて背景が透けて見えるようなMorph」を作りたいんですが、
どうしたらいいのでしょうか。
教えていただけますでしょうか。よろしくお願い致します。
559デフォルトの名無しさん:02/02/12 22:34
>>558

穴が空いて透けて見えるっちゅうのはこんなの鐘?

| form dot |
form _ Form extent: 100 @ 100 depth: Display depth.
form fillColor: Color red.
smallRect _ Form extent: 10 @ 10.
50 timesRepeat: [form
copy: (0 @ 0 extent: smallRect extent)
from: smallRect
to: 100 atRandom @ 100 atRandom
rule: Form erase1bitShape].
(SketchMorph withForm: form) openInWorld

あと、手作業がいいんだったら、穴を開けたい部分を白で描いたgifを
FileListでopen in a windowする。もしくは読み込んだ後、穴の色を
赤ハロ→painting...→erase pixels of color...で指定などなど。
>>559

スマソ。穴を開けたい部分を白で描いたgif…は嘘。鬱。gif作成時に
透明にしておかなければダメ。お詫びにクラス定義&黒塗り図形で
穴部分指定→黒部分を透明化版を下に。

SketchMorph subclass: #SuketeruMorph
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'Morphic-Basic'!

!SuketeruMorph methodsFor: 'initialization'!
initialize
| form dotSize side |
form _ Form extent: (side _ 100) @ side depth: Display depth.
form fillColor: Color yellow.
self initializeWith: form.
dotSize _ 20 @ 20.
20 timesRepeat: [originalForm getCanvas
fillOval: (side atRandom @ side atRandom
- (dotSize // 2) extent: dotSize)
fillStyle: Color black].
originalForm mapColor: Color black to: Color transparent

"SuketeruMorph new openInWorld"! !
561デフォルトの名無しさん:02/02/14 02:04
>>559 >>560

(返事が遅くなってすまそ)

すごい、、、。ありがとうございます。
まさにそんな感じを期待していました。

漏れ、Smalltalkに憧れて、夜か週末だけSqueakいぢってるんですけど、まだまだクラスの海をさまよっているだけなんですよね。
パープルブックを読み進めていて、基本的なクラスの使い方ぐらいは
やっと分かって来たような気がしているんですが、Morphicなんかになると
もう全然、、、。Smalltalkって環境が優れているから参考書の類は必要無い、
って言い方をする方もいますけど、何か問題に当たったときに体系的に
解答にたどり着く術を見出せないでいます。(たとえば今回の問題もそう。)
Morphic関連だけでも何かいい参考書みたいなものないですかねぇ、、、。
もしくは問題解決(必要な機能に効率的にたどり着く)のための定石、みたいな
ものがあったら教えて頂きたいです。

、、、そんなもの無いのかも知れませんね。修行あるのみ、かな?
何にしてもSqueak(Smalltalk)ってすごく楽しいです!
これからもよろしくおながいします。
>>561

やっぱりソースを読むのが一番役にたちます。もっとも Morphic の基本的なところは John Maloney(オリジナルの開発者のひとり)がいくつかチュートリアル
っぽいドキュメントを書いているので目を通しておいて損はないと…。

Smalltalk はソースの読みやすさ、リソースブラウズのためのツール
の充実に古くから心を砕いているところがあるので、こうしたものを
駆使して歩き回ること、そして自分でもコードを書いてみることが一番の
近道でしょう。下手でもいいから書いてみる。それを終えてから、また
ブラウズするとそれまで見えなかったパターンが見えてきて、次は
もっとうまい方法を思いついたり、便利なメソッド、オブジェクト
を見つけて利用できるようになる…はず(w。

563デフォルトの名無しさん:02/02/14 02:37
>>561
漏れも週末 Smalltaker だよ。
普段は C, C++, JAVA とか PHP, Perl とかを使うんだけど、
そんなんと違って、Smalltalk (Squeak)、無茶苦茶刺激的で面白いよ。
プログラミング行為そのものが楽しいのなんて、久しぶり。
もっと早くやっとくべきだった、後悔。。。
564デフォルトの名無しさん:02/02/14 02:41
>>562

私もSqueak勉強中のものです。
World.WolrdSate.Hands[1].boundsをインスペクトして
カーソルの座標がリアルタイムに変わるのを見て
にあにあしています。
アドバイスありがとうございます。
「下手でもいいから書いてみる」、これ基本ですよねやっぱり。

元ネタからはズレますが。
”受験生症候群”とかいうって聞いたことありますけど、
仕事でプログラミングしているときも、
「どこかに綺麗な正解があるんじゃないか」
「もっとうまい書き方(パターン)があるんじゃないか」
とばかり考えてなかなかコーディングが始まらない、という罠に
はまっている自分に気が付くことが多くて。
残念ながら仕事じゃSmalltalkなんて使わないですけど、こういった
袋小路に風穴をあけてくれるダイナミックな雰囲気を期待して
Smalltalkをいぢりはじめたんです。

でも、ほんと、まだまだなんだなぁ。頑張ります。
>>564

そんなおちゃめさんには、これなんかどうYO?

World primaryHand assuredPlayer tearOffWatcherFor: #getX
567ちょっと偉そう:02/02/14 21:59
たけのこ、あげ。
日本のプログラマもがんばってください。
568デフォルトの名無しさん:02/02/15 00:32
Squeky Clean!
569デフォルトの名無しさん:02/02/15 02:01
>567 ちょっと偉そう
クセ有るけど、あの人特有の励まし方でしょ。

そもそもあの人には、ああいうセリフ言う権利あるだろう。
実際偉業成してるんだから偉そうにしてもいいだろう。

>568 Squeky Clean!
ベタなネタだなあ。ここは英語板じゃないからウケないんでは。
(それともつづり間違ってるというところがネタなのかな。)
multiplying like Squeak.
>568 Squeky Clean!
ベタなネタだなあ。ここは英語板じゃないからウケないんでは。
(それともつづり間違ってるというところがネタなのかな。)

意味おしへて。
572お馬さん@名無しで人生アウト:02/02/15 05:57
>>571
568じゃないけれど、清潔な、とか、完璧な、とかいった意味の
熟語だった筈。!が憑いている事を見ると、完璧だ!という感じ
だろうか。
573デフォルトの名無しさん:02/02/15 14:53
>566
3.2gammaじゃないと動かないっス
574デフォルトの名無しさん:02/02/15 15:48
>>573
3.0finalならこれだYO
World primaryHand assuredPlayer tearOffWatcherFor: #x
575東京Y嬢:02/02/15 17:33
すみません。質問です。
「pcx」という拡張子がついた画像ファイルがフォトショップなどで
開かないのですが、開け方を知っているかたいらっしゃいますか?
調べたところでは「zsoft」というところが開発したファイルらしいのですが...。
(´−`).。oO(誤爆でとまってるし・・・)
577kill -9 MVC:02/02/19 13:57
入れて出すだけのものをなんで3つに分けやがるんだ!? さっさとなくなれ > MVC
>>577
入れる、出す、もの…ちゃんと3つあるじゃん。
>>577
冷蔵庫にキリンを入れるには、ドアを開けて象を出す人が必要です。
580デフォルトの名無しさん:02/02/23 11:15
'Squeak' asUpperThread
581デフォルトの名無しさん:02/02/24 00:25
スレ盛り上げようじゃないか。
「自分で調べろよ!」
非難覚悟で、超面倒くさがりの俺が問う。

CとBasic,CとPascalの文法対比表ってのは良く見かけるんだけど、
CとSmalltalk って見たことない。


…オシエテクダサイ
比較じゃなくて、両言語の解説になるから、見たこと無いのはしょうがないよ。
583デフォルトの名無しさん:02/02/24 02:06
>>581
http://www.njk.co.jp/otg/Study/comp-language/smalltalk-cplus/
「C++ vs Smalltalk」でござる。かたじけない。
584デフォルトの名無しさん:02/02/24 02:08
585 :02/02/25 05:41
クラスブラウザで、とりあえず良く見とけ!みたいな重要なカテゴリってどれですか?
KernelとCollectionsは必須?
586デフォルトの名無しさん:02/02/25 10:26
>>585
こういう読み方をするとはまる。
アプリ側からsendersとimplementorsで攻める。
システムクラスはウィンストンやサクサクで。
下回りはどの処理系もほぼ同じ。
587age:02/02/27 21:18
Lisp と Smalltalk の比較を見てみたい。
何かと濃ゆいファンの多いこの 2 言語、実は親戚同士だって言うし。
588デフォルトの名無しさん:02/03/02 12:58
ProgrammingTechBBS at: 1 put: self
589デフォルトの名無しさん:02/03/05 10:27
self become: ProgrammingTechBBS first
590デフォルトの名無しさん:02/03/08 16:12
純粋なオブジェクト指向言語ってのはどんなもんかと思ってSquekいじってみたけど
おもろいねコレ。
演算子も文の制御構造も全部メソッドなのね。
基本データ型、演算子、制御構造も自分で拡張できるって事か。
趣味でやる分には、かなり面白そう。
ところで実行速度はどうなんでしょう? Javaと同じ位?
591デフォルトの名無しさん:02/03/08 22:52
>>590
Squeakは遅いよ。まともな最適化してないからね。
VisualWorksだと、Javaなんかより速いような気が
するけれど。
そのぶんあっちゃこっちゃで動く
593デフォルトの名無しさん:02/03/13 23:36
>>590
起動以外、へたなネィティブプログラムより早い。

早く、VisualWorks7Bでないかな。
594デフォルトの名無しさん:02/03/14 13:26
質問。
Smalltalkではメソッドのoverloadはできないんでしょうか?
また、overloadができるSmalltalkの処理系がありましたら教えてください。
595デフォルトの名無しさん:02/03/14 13:35
メソッドのoverloadって、
引数の型に応じて実行されるメソッドを切り替えたい
って事だよね?

だとしたらまず、
動的型付のSmalltalkでどうやってメソッドの引数の型を指定するか
考えてみよ〜!
596594:02/03/14 14:30
ん〜、考えてみましたが引数の型に応じてメソッドを切り替えるには
action: anObject
(anObject class = Food) ifTrue: [self eat: anObject].
(anObject class = Drink) ifTrue: [self drink: anObject].
の様にやれば良いのかな?

しかし、Foodから派生した全てのクラス(例えばApple、Banana)に対してもeat:を呼ぶには、どうしたら良いんだろう??
597595:02/03/14 15:13
isKindOf:

とはいえ、それってmulti-methodというよりtype discriminationのような。
どちらかというと、block closureのArrayを持っておいて、
各blockが引数の型に応じて処理するかどうかを決めて
処理されない場合は次のblockを試すってほうがmulti-methodっぽくていいかも。

action: anObject
  ^self performMulti: #action with: anObject

performMulti: selector with: anObject
 | methods |
 methods _ self class methodsAt: selector ifAbsent: [ ^self doesNotUnderstand: selector]
 methods do: [:assoc |
  (anObject isKindOf: assoc key) ifTrue: [ ^assoc value value: anObject ]].
 ^self doesNotUnderstand: selector

とか、どう?
598595:02/03/14 15:19
あ、methodsAt:ifAbsent:を定義するの忘れてた。
とりあえずクラス変数MultiMethodDictionaryを定義してやって、
クラスメソッド

methodsAt: selector ifAbsent: errorBlock
 ^ MultiMethodDictionary isNil
  ifTrue:
  [errorBlock value]
  ifFalse:
  [MultiMethoddictionary at: selector ifAbsent: errorBlock]

とかで、どう?
599594:02/03/14 17:08
頑張ってみましたが、正直よく分かりませんでした。
smalltalkいじり始めて1週間、クラス変数を使った事も無し、
Dictionaryもまだ、block closureもまだよく分かってないです。
type discriminationって言葉も初めて訊きました。
わからん事づくしです。低レベルでスマソ。

Dictionary(IDとデータを組みにしたものの集合?)ってのを使ってswitch文のような処理をしてるんだろうか?

もっと勉強してから出直してきます。
>>594
素朴な疑問ですが、メソッドのoverloadってどんなときに使うのでしょうか?
C++やJavaでプログラムを組んだこと無いのでよく分かりません。

逆にoverloadなしだと困るケースというのでもいいです。
601594:02/03/14 20:59
無いと困るって事もないですが、
SmalltalkでもInteger>>+とかで以下のように
 1 + 1 -> 2
 1 + 1.0 ->2.0
 1 + (1/2) -> (3/2)
引数の型に応じて違う処理をしてますよね。
そんな時あると便利です。

602デフォルトの名無しさん:02/03/14 23:54
>>596
こんなときはダブルディスパッチを使ったほうがきれいでは。
action: aFood
aFood doAction: self
にしておいて、FoodのサブクラスでdoAction:を再定義して、eat:なりdrink:なりを呼ぶ。
if文もisKindOf:も使わないに越したことはないし。>>601の実装もこれ。
603595:02/03/15 01:07
>>602
ダブルディスパッチは切り替え対象になる型が増えると
組み合わせが爆発的に増えちゃうよね。
メッセージ名を変えるのも美しくない。

そもそも、
5つの引数の型に応じて切り替えたい時とか、
どうするよ?
604595:02/03/15 01:16
>>599
type discriminationとは、ユーザプログラムが実行時に型情報を使った処理をすること。
それに対してmulti-methodはあくまで処理系の仕事ね。

>>597-598 のプログラムは、
methodsが(型情報 x ブロック)の組を持っていて
do:ループの中で適切なブロックを選択しているところが肝。

で、1つのメッセージ名に対応するメソッド候補の集合を
管理しているのがMultiMethodDictionary。
MultiMethodDictionaryはデータ構造的に、例えば
key value
+    { (SmallInteger, [:x | ... ]), (Float, [:x | ...]), ... }
-    { (SmallInteger, [:x | ... ]), (Float, [:x | ...]), ... }
action: { (Animal, [:a | ... ]), (Drink, [:d | ...]), ...}

って具合。これが各クラスにあると思っといて。
605594:02/03/15 06:55
>>602
そうですね。Integerクラスをブラウザで眺めてて、そのほうがすっきりするなと思いました。ダブルディスパッチって用語が既についてるんですね。

actionに対応してないオブジェクトを引数にした時に例外処理をしたい場合は、ObjectクラスにdoActionを追加して、そこに例外処理を書いてしまって良いんでしょうか? Objectクラスをいじるってのに何か抵抗を感じますが。


>>604
ふむふむ、ご丁寧な解説ありがとうございます。
こういうブロック式自体をデータとして扱えるって何か新鮮です。
SmalltalkがLISPから影響を受けているって話を聞いた事がありますが、
この辺がそうなのかなぁ。


このスレって盛り上がりはイマイチですが、
私のような低レベルな質問にも丁寧に答えていただけるし、荒れることもないし、
なんかイイですね。
606595:02/03/15 08:18
>>605
> actionに対応してないオブジェクトを引数にした時に
handle:do:で例外処理するか、あるいはあらかじめrespondsTo:でチェックしておく。

> SmalltalkがLISPから影響を受けているって話を聞いた事がありますが、
> この辺がそうなのかなぁ。
うん。BlockClosureはLISP系言語から持ってきた概念の代表例だね。
あとはリフレクションとかメタプログラミング関係もLISP系から。
もうじきこれに継続(call/cc)も加わるよ。
BlockClosureが「これから実行する処理」を表わすのに対して
call/ccは「過去、これから実行しようとしていた処理」を表わす。
おもしろいよ。
607デフォルトの名無しさん:02/03/15 10:20
608594:02/03/15 12:08
>>607
なるほど、Double Dispatchingって、ごく基礎的なテクニックなんですね。
プログラミングするのはX68000でCをやって以来数年ぶり、
最近になってDelphiで3ヶ月ほど、Smalltalkはまだ1週間やっただけのしろうとプログラマーなんで、オブジェクト指向に関する基本的な知識が全く無いっす。
やはりWebで調べるだけでなく、少しは本でも買って読んでみたほうが良いかな。
たしか「憂鬱なプログラマーのオブジェクト指向」だったかな?って本がよく薦められてたんで、
とりあえず買ってみようとおもいます。


ほとんど意味は無いが、ジャンケンをDoubleDispatching(とは言いがたいか?)を使って書くとこんな感じだろうか?
JyankenChoiceクラスからGoo Choki Paaクラスを派生。
Goo>>judge: enemyChoice
^enemyChoise judgeWithGoo.

Goo>>judgeWithGoo
^#draw
Goo>>judgeWithPaa
^#lose
Goo>>judgeWithChoki
^#win
609デフォルトの名無しさん:02/03/16 01:52
>>608
Smalltalkerといえばオブジェクト思考を極めた人たちばかりと思ったいたので
まだ勉強中の私のお仲間がいたということはうれしい限り。

あとDoubleDispatchingは、あまり使わないほうがいいかも。本の受け売りですが

まだ読書中だけどいい本です。
でも入門書じゃないよなこの本

Java言語で学ぶデザインパターン入門
http://www.amazon.co.jp/exec/obidos/ASIN/4797316462/
プログラムデザインのためのパターン言語
http://www.amazon.co.jp/exec/obidos/ASIN/4797314397/
リファクタリング―プログラムの体質改善テクニック
http://www.amazon.co.jp/exec/obidos/ASIN/4894712288/
XPエクストリーム・プログラミング導入編
http://www.amazon.co.jp/exec/obidos/ASIN/4894714914/

>>606
Squeakでは継続が使えなかったかな?
ここの過去ログにあるような・・・・
610デフォルトの名無しさん:02/03/17 14:41
>>609

>>465 のページで書かれている "Continuation" は、
「これから実行する処理」を BlockClosure で渡すという
コーディングスタイル。

call/cc で扱う「過去、これから実行しようとしていた処理」とは別物。
611606:02/03/17 15:30
>>610
ついでにいうと、call/ccが実装されつつあるのがSqueak。
最近ちゃんと追っかけてないんだけど、もう正式リリースVMに入ったのかな?
612610:02/03/17 22:34
>>611
もしかして Squeak の BlockContext も BlockClosure に進化するんですか?
‥‥‥それとも、もうしてる?

♯最新は追っかけてないからなー。
613デフォルトの名無しさん:02/03/17 23:15
614610:02/03/18 20:28
BlockClosure キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
615デフォルトの名無しさん:02/03/19 05:55
>>610
継続もクロージャも遅延評価という意味ではまったく一緒なのでは?
616デフォルトの名無しさん:02/03/19 14:00
継続は遅延評価というよりも、
実行コンテキストを保存しておいて実行するものです。

過去の実行コンテキストを保存しておいて、
その保存されたコンテキストから現在までのコンテキストを破棄して
保存されたコンテキストを再実行することも含まれます。
例えば以下のようなコンテキストの時
MySender>>doPrivateJob
MyServer>>doSomeService
MyServer>>doSomething →ここで継続として保存
MyClient>>doSomething
ここでMySender>>doPrimitiveJobで継続を評価すると、
MyServer>>doSomethingの時点に遡って実行を再開します。

また、保存された実行コンテキストの評価が終了しても破棄せずに
あとでその保存された時点までコンテキストを復元して
再実行することも含まれます。
上記のコンテキストが評価が進んで
MyServer>>doSomethingまで返ってくると、
通常はMyServer>>doSomethingなどのコンテキストは破棄されるのですが、
継続はMyServer>>doSomethingとそのsenderのコンテキストを保存しておいて
コンテキストのスタックを
MyServer>>doSomething
MyClient>>doSomething
のように復元してMyServer>>doSomethingの評価を再開します。

これらの芸当はクロージャでは無理です。
617615:02/03/20 00:54
>>614
詳しい解説有難うございます。
継続ってマルチタスクに似てますね。
もちろん意味的には全然違いますが、継続という機能とマルチタスクを
実現する機能を実現する実装がという意味です。
618616:02/03/20 03:44
>>618
その通りです。
実際、関数型言語SMLではマルチプロセスは継続(call/cc)を使って実装されています。
簡単に言うと、SmalltalkでいうProcessor yieldはスケジューラに継続を登録してから
制御をスケジューラに戻します。
そしてスケジューラは継続を1つ取り出して、その継続を評価します。
Visual Works NC版でも日本語使えるんだ。知らんかった。
www5.plala.or.jp/tsakworks/smalltalkFrame/dst.html
620デフォルトの名無しさん:02/03/22 00:10
621デフォルトの名無しさん:02/03/22 00:40
>>620
それ、VWNC5i3 でも使えるみたいだね。
ttp://www.geocities.co.jp/SiliconValley-Cupertino/6957/smalltalk.ja.html

同じ所の Smalltalk への感想にも同感。
622デフォルトの名無しさん:02/03/22 17:51
JpLocaleは5i.4だと、CharacterEncoder>>encoderNamed:を
おかしくしてしまうんだよね。入れた後にちょっといじれば
大丈夫なんだけれど。
そろそろ出て来るとかいう7だと、どうなのかねえ。
623デフォルトの名無しさん:02/03/22 20:25
>>622
パーセルのロードでこけるので、いじるのは入れる前です。
http://www.sra.co.jp/smalltalk/SML/5001-6000/mails/5301-5400/5333.txt
7はまだ分かりません。
624デフォルトの名無しさん:02/03/22 21:51
>>623
いや、JpLocaleがCharacterEncoder>>encoderNamed:を5i.4のものと
互換性の無い形に上書きしてしまうのがまずいの。そのやり方より、
パーセルロード中のノーティファイアで、ChacacterEncoder>>encoderNamed:
の中の適切な場所に、asLowercaseを突っ込んだ方が良いと思う。
5i.4をJpLocaleに合わせるより、JpLocaleを5i.4に合わせる方が
健全でしょ。
625デフォルトの名無しさん:02/03/26 00:13
スレが出来たのが8月下旬。いまは年明け3月下旬。
7ヶ月で620レスですか。
この調子だと、1周年も初代スレで迎えられそう。

盛り上がれよゴルァ(゚Д゚)
>625
ネタ出せや
UMEJAVA さんのサイトにこのスレへのリンク発見。
あの人、色々知ってて凄いですよね。

全然関係ないけど、JVM 上で動く Smalltalk 環境って無かったっけ?
前に見たような気がするんだけど、今探したら見つからなかった。
628デフォルトの名無しさん:02/03/28 10:28
>>627
そこのリンクにあるよ。Smalltalk/JVMとか。
ttp://www.mars.dti.ne.jp/~umejava/smalltalk/stNews/
629名無しさん@Emacs:02/03/28 19:09

手元にSmalltalkイディオムって本があるのですが、
これで教わるにはやっぱりVisualWorksの方がいいんでしょうか?
630デフォルトの名無しさん:02/03/28 19:21
>>629
いい。VWNC3.0がおすすめ。
http://wiki.cs.uiuc.edu/VisualWorks/DOWNLOAD/
>>630
どうもです。
ありがたく参考にさせていただきます。
(なるべく事後報告しマース。)

一番一般的な環境を構築するためには
VWNC30-a.ZIP
VWNC30-b.ZIP
VWNC30-c.ZIP
VWNC30-d.ZIP
をダウンロードすればよいみたい。

ちなみに、それぞれ、
「解答するときにファイル名と同じ名前のフォルダを作らない」
設定で解凍すると、vwnc30というフォルダが出来ます。
同じフォルダになるように解凍ソフトを設定したり、
エクスプローラでコピってあげてください。
634デフォルトの名無しさん:02/03/28 23:30
ttp://www.sra.co.jp/people/h-asaoka/study/VisualWorksInstall/VisualWorksInstall.html
VisualWorksのインストール手順はここが一番わかりやすいぞー
635名無しさん@Workspace:02/03/29 01:24
>634
あなたそれどうやって見つけてきたのよ...
636デフォルトの名無しさん:02/03/29 23:52
>>635
じゅんforSmalltalkの公式ページ
  >> インストール方法はマニュアル......
    >> Jun for Smalltalk インストール


ついでにGoogleでも一発だなー
ttp://www.google.co.jp/search?q=VisualWorks+%83C%83%93%83X%83g%81%5B%83%8B&hl=ja&btnG=Google+%8C%9F%8D%F5

いー仕事すると人目につくのなー
637名無しさん@Workspace:02/03/30 01:04
>635
見返すと、割れながら、何かいちゃもんつけてるみたい。そゆ意図ないよ。

VisualWorksの話ならSMLを追ってればだいたいわかるつもりでたけど、
なんか知らないHP出てきたからアレどっからそういう情報をとってくるのと思ったんだよ。

これからVisualWorksのインストールをしてみようというときに、じゅんの公式ページに行くことは思いつかないよ?
インストールしてじゅんとかいろんなライブラリを使ってみた後だったら思いつくこともあるだろうけど。

Smalltalkイディオムの本読んでて、まず最初に行きそうなページは、
ttp://www.sra.co.jp/people/aoki/SmalltalkIdioms/
あたりというのはいいでしょ?ここからインストール方法を探すつもりでリンクをたどると、
ごく普通に
ttp://www.sra.co.jp/people/aoki/SmalltalkIdiomsForVWNC30/index.html#P011
につながって、別に634や636のようなこと必要なく終わっちゃうよ。
これ経験談(爆)
ちなみにこの青木さんのページでもインストール方法問題なかったよ。

ちょっとさ。マッタリしたいナ。
639デフォルトの名無しさん:02/04/04 22:19
お父さん、土曜8時はテレビの前に座っちゃうぞー
640デフォルトの名無しさん:02/04/06 02:09
Little Smalltalk って微妙にバージョン上がってる?

http://www.smalltalk.org/versions/LittleSmalltalk.html
641デフォルトの名無しさん:02/04/06 19:04
642仕様書無しさん:02/04/06 20:21
BSでアラン・ケイが子供たちにスクィークを教えてる
643デフォルトの名無しさん:02/04/06 20:42
アラン・ケイ、堪能しました。
644デフォルトの名無しさん:02/04/06 20:43
しまった! 番組見忘れたあ。
・・・再放送見よっと。

こんどは青木氏の偉そうなソフトウェア文化論放映してください。
>NHK
645デフォルトの名無しさん:02/04/06 20:44
すごく楽しそう...
すげ−よかった。SquaekっていいながらeToysばっかだったけど。

日本でも子どもにもっと普及して欲しいね。
SCEあたりでSqueakマシンでも作らないかな−。

最初の方見逃したから、再放送もみようかな。

>>639
その書き方で、見逃したひともたくさんいると思われ ;-)
647デフォルトの名無しさん:02/04/06 23:22
今日教育テレビで見て初めて知った
やってみよう
648日本語:02/04/07 01:50
すんません。
http://www.kk.iij4u.or.jp/~y-kamite/squeak/multilingual_squeak.html
見てSqueakを日本語化しようとしたのですが、
install3_0.st
をfileInしても、数分待たされず、すぐ終ってしましいました。
"(FileStream oldFileNamed: 'RomeJiToKana.9.cs') fileIn."!
"(FileStream oldFileNamed: 'Taro.2.cs') fileIn."!
って出てるのがなんかまずいのかと思うのですが、
うまく日本語化できた人いますかー?

バージョンは、
Squeak3.0 of 4 February 2001
latest update: #3552
です。あうー。
くそ、squeakland.comでダウンロードしようとしたら、
ブラウザのUser-Agent見てOS判断してやんの
ほかのOS用のがダウンロードできないぞ、くそ
ほんと、オブジェクト指向馬鹿だな
650デフォルトの名無しさん:02/04/07 10:20
>>649
飛ばされた先に他OS用ダウンロードページへのリンクがあるけど?
651デフォルトの名無しさん:02/04/07 11:32
>>648
たぶんfileInしてないんじゃないかな?
ファイルダイアログ見たなウィンドウからfileInしてる?
652648:02/04/07 11:43
>>651
あーーーーー、そうなのかもしれないです!
あれって、表示されただけなのか。ハズカシイ・・・
もいっかいやってみますです。
653648:02/04/07 11:49
>>651
すびばせん。その通りでした。
ファイルダイアログみたいなところから、fileIn選んだらできました。
ありがとうございました。
654デフォルトの名無しさん:02/04/12 00:24
再放送は4/13(土) 11:00-11:45 NHK教育
http://www.nhk.or.jp/future/yoteihyo.htm
画面上のオブジェクトをいじってスクリプトが組めるようになってたけど、
かなり昔のマックにもあったよね、こんなの。あほらし。
こんなので教育されたら、たまらんな。
むしろ教育用なら、基本となるロジックをオブジェクトとして用意して
おくべきだし、階層やアクセス制限といった概念もあっていいはず。
こどもたちにVB厨の轍を踏ませるつもりか。
なんかアラン・ケイは実は何も進歩的でないような気がしてきたぞ。
656デフォルトの名無しさん:02/04/12 04:55
>>655
あんたが無知なだけ。
657648:02/04/12 07:16
>>654
わーい。情報どうもです。
研究室のみんなに布教したいと思います。
>>656
無知っつーか、
>>655を教育するためには何が必要なのか、アランケイに聞いてみたい (藁
マターリマターリ。
こことか読んでみるといいかも。>>655
ttp://sumim.no-ip.com:8080/morphiclesson

660デフォルトの名無しさん:02/04/12 21:05
>>655
>画面上のオブジェクトをいじってスクリプトが組めるようになってたけど、
>かなり昔のマックにもあったよね、こんなの。あほらし。
HyperCardのことかな?
Toysは昔、教育用言語として流行ったLogoの高級版だと思えば良いのでは?
見える物が、プログラムどおり動くというのが、プログラミングという
物を理解するのに一番の近道では無いでしょうか?

>むしろ教育用なら、基本となるロジックをオブジェクトとして用意して
>おくべきだし、階層やアクセス制限といった概念もあっていいはず。
Toys(Morphic)の裏にはSmalltalkという立派なロジックがあります。
階層はMorphicにもあるし、アクセス制限もロジックできます。
(でも655さんてSpueak使ったこと無い人なんだろーな。C++やJavaの人かな?)

>なんかアラン・ケイは実は何も進歩的でないような気がしてきたぞ。
でしょうねー。アラン・ケイさんがSmalltalkという環境を考えたのは20年も
前のことですから。

655さん、きっとあなたなら素晴らしい物を作っているのでしょう。
どんなものですか?教えてー。
661デフォルトの名無しさん:02/04/12 23:03
>>655 美味しすぎ...
662655:02/04/12 23:19
Smalltalkの応用としてはおもしろくても、教育用としてはどんなもんかな
と思っただけ
プログラミング(コーディング)の教育としては出来がいいと思えないし
(あらかじめそういう方面の思考ができる子供を対象としているのはあきらか)
それ以外の教育目的には使えないし
664デフォルトの名無しさん:02/04/12 23:34
元祖を亜流と比較しているから、美味しすぎ
665デフォルトの名無しさん:02/04/12 23:39
煽るつもりはないけど、アラン・ケイに進歩がないのは確かだと思う。
あの教材、教え方でどんどん自分で考え、プログラムを作れるのは
よっぽど頭が良くて創造的な、ごくごく一部の上澄み生徒だけだと
思う。
メンサに入るようなエリートのためのもの、とかいうならまだいいけ
ど、いつまでも頭がフラワーチルドレン世代みたいな、万人のための
コンピュータだ、教育だといわれると、さすがに時代が違うんじゃ、
といいたくなる。

本国でもあんな番組やるほど認められている人なの? 今の時点で。

とたまにはアンチの視点もよいのではないかと思って、低レベルな
あおりを書いてみました。
666デフォルトの名無しさん:02/04/12 23:42
>>665
煽るつもりはないけど、最後で煽りだというのは矛盾ではないか?
667デフォルトの名無しさん:02/04/12 23:45
>>663
この元ネタって
>>364-368
だよね。
668デフォルトの名無しさん:02/04/13 00:14
>>662
>(あらかじめそういう方面の思考ができる子供を対象としているのはあきらか)
>それ以外の教育目的には使えないし
どんな子供やねん。
だいたい、そんな子供にプログラミングの教育が必要だと思えない。
へんなこと言う人だなー。
670デフォルトの名無しさん:02/04/13 00:23
>>665
> あの教材、教え方でどんどん自分で考え、プログラムを作れるのは
> よっぽど頭が良くて創造的な、ごくごく一部の上澄み生徒だけだと
> 思う。

その考えは「正解を導かなければならない」というドグマに汚染されてはいないか?
あと、教育には
1. 教師が子供を導くという方法と、
2. 子供が自分で何を学ぶかを模索するという方法と、
3. 教師と子供が互いに教え学びあうという方法
があるが、squeakは1だけでなく2や3にも有効な教材であることにも注意。

> 本国でもあんな番組やるほど認められている人なの? 今の時点で。

計算機環境を個人の手に移した人物として非常に高い評価を受けています。
現在の個人向け計算機環境の構築に貢献した人を3人挙げろと問えば
多くの研究者がアランケイをそのうちの1人に挙げるでしょう。
671デフォルトの名無しさん:02/04/13 00:27
>>665
子供の知識の吸収力や思考の柔軟性を甘く見すぎです。
子供の頃に創造力や想像力を置いてきてしまったようですね。
もしくは自分自身の教育する力が不足しているのでは無いでしょうか?
672665:02/04/13 00:29
>2. 子供が自分で何を学ぶかを模索するという方法と、
>3. 教師と子供が互いに教え学びあうという方法
>があるが、squeakは1だけでなく2や3にも有効な教材であることにも注意。
うんうん、この辺りにですね、なんか理想主義でちょっと胡散臭い
感じがするわけですよ。
特に3なんて実に稀な幸福な出会いというか、ほんとにそんなことあるの?
という感じさえする。
ああいう番組みて学校へのコンピュータの導入はすばらしい、とか勘違い
するやつがいるなら、現実の小・中に導入された「パソコン教室」というの
が如何に不毛な時間を子供に強制しているのか知ってほしい。
結局楽器や画材の劣化した代用品でしかないんだよな。本物の感動は得られ
ない。で、SqueakやLOGOみたいなものは絶対上手くいかない。上手くいくのは
テレビスペシャルでケイみたいな理想の教師が来たときだけ。
もう論旨あれまくりだなあ(笑)。酔っ払ってるんでスマソ。
673665:02/04/13 00:34
>現在の個人向け計算機環境の構築に貢献した人を3人挙げろと問えば
>多くの研究者がアランケイをそのうちの1人に挙げるでしょう。
これはそうだろうね。俺もその恩恵を受けている。
でも、あのNHKの番組が取り上げるような位置をアメリカでもしめてるの?
もう「シリコンバレー物語」みたいなお話にでてくる白黒写真のような過
去の人ではない? 現実にSqueakを授業に取り入れる意味などあるのかな?
674デフォルトの名無しさん:02/04/13 00:35
Squeakとは関係ないネタでゴメソ

>>670
>1. 教師が子供を導くという方法と、
>2. 子供が自分で何を学ぶかを模索するという方法と、
>3. 教師と子供が互いに教え学びあうという方法
良い教育は、この3つの方法をミックスしているのではないでしょうか?
2の方法で学習を始め、3のように学習を発展させている様に見せかける。
そして一定の方向に導いてあげれる先生が良い先生。

まあ、ここまで出来る先生は、そうそう居ないでしょうがね。
675665:02/04/13 00:38
>そして一定の方向に導いてあげれる先生が良い先生。
これは賛否両論ありそうだな。
>>672 >>673 >>655
貴方が言いたいことが良くわかりません。
「現実、現状は常に良くないということ」は当たり前のことじゃないですか?
それを修正していくことがプロとして求めれていることじゃないですか。

>>2. 子供が自分で何を学ぶかを模索するという方法と、
>>3. 教師と子供が互いに教え学びあうという方法
>>があるが、squeakは1だけでなく2や3にも有効な教材であることにも注意。
>うんうん、この辺りにですね、なんか理想主義でちょっと胡散臭い
>感じがするわけですよ。
理想に走りすぎているという点は判りますが
現実問題として不可能なことではないですよね?
先生によってはね。(←馬鹿。この点が665さんが非難していることじゃないか)

今、そういう環境で教わってる子供の中から、将来、いい先生が出てくるんだよ。
結論は、20年後に。
>>675 >>665
>>そして一定の方向に導いてあげれる先生が良い先生。
>これは賛否両論ありそうだな。
自分の思想を感染させると言う点では教育と洗脳は似ている。
679デフォルトの名無しさん:02/04/13 01:11
age
今まで、極小数の先生がSmalltalkがさもスバラシイもののように
語っていたのを聞いて、「なにそんな古い言語の話してんだ?
時代はJavaだろう」と思っていましたが、

NHK見て、初めてSmalltalk(というかSqueak)触った直後の感想は、
「Javaなんてうんこ」でした。
682デフォルトの名無しさん:02/04/13 08:23
>>673
> でも、あのNHKの番組が取り上げるような位置をアメリカでもしめてるの?
> もう「シリコンバレー物語」みたいなお話にでてくる白黒写真のような過
> 去の人ではない? 現実にSqueakを授業に取り入れる意味などあるのかな?

アメリカにいるからそのNHKの番組は見てないから
「NHKで取り上げた位置」ってのはよくわからないけど、

コテコテのコンパイラ屋さんとかがどう見ているのかは知らないが、
認知科学や教育学などと計算機科学の学際的な研究をしている人達から見れば
アランケイは全然過去の人ではないよ。

彼はアップルからディズニーに移って、現在はディズニーから離れているんだけど、
ディズニーが彼を招いたのは計算機と子供の関係の未来像を捉えている第一人者だからだと思うし、
アランケイがディズニーに移ったのはディズニーのアニメーションやテーマパークが
「現在の計算機環境が持っていない何か」を持っていると思ったからだと思う。
683デフォルトの名無しさん:02/04/13 21:00
>1つ言いたいのは、教養のある、教育のある人とは、どういう人かということだ。
>本当に教養が身につけば、「私は教養がある」とは言わなくなる。ある点を過ぎると、
>本当に世界のことを何も知らない、これから学ぶことが多すぎると、分かってくる。
>そして、その一点を過ぎると、教育のある人は生涯学習者になる。ここまできたら
>教育終わり、はい教養人というわけではない。教育とは1つの旅のようなものだ
>
>アラン・ケイ氏

プログラミング言語(環境)も同じようなことが言えますよね、ケイ先生。
684デフォルトの名無しさん:02/04/13 21:27
これは、2002年の賞を与えられる会社である。
世界中の最も大きいリクルーターはまだこれについて知らない。
あなたがこれから数日ですることは永久にあなたの生活を
変えることができる。
世界的にスタートする。300以上の国が参加。
どうかこの機会を逃さないでください。
西暦2002年に私に合流して、そしてネットワークマーケティングの
歴史だけではなく世界的なビジネス歴史を作りなさい。
5億以上のコミッション。他の人は頭がおかしいと思うでしょう。
今あなたの最初のステップはサイトに行って、
そして登録することである。
そして、無料のポジション。
あなたは1350ドルの即刻の現金収入を得るであろう。
1日であなたが4500ドルの収入を得ることができたときから、
あなたは疑わない。
★以下登録方法です。=下記をクリック
http://dehio.oneqwest.com
@ページが開き音楽が鳴りだして光がでたら光をクリック。
A画面が変わり一番上の右端のSignUpの字の下にマウス矢印の先端を合わせクリック
BPre-Registration の横のClik here to pre-reqisterをクリック
C First Nameは 名前
D Middle Nameは 空白、エラーが出る場合はn/a
ELast Nameは、 みょうじ
F Company Name(会社名)は任意 (Optional)
G E-mail Addressは メールアドレス
H Confirm Email もう一度同じメールアドレス
I 次は下の赤の文字(mm/dd/yy)は誕生日= 月/日/年(例:7/20/1960)
J次も下の赤い文字 (US citizens only)は空白(または n/a)
K Country of Residencyは Japanを選択
L次も下の赤い文字 (name only, no spaces)は
ユーザー名(ハンドルネーム)を入力:必ず書き込む
M次も下の赤い文字(name only,no spaces)は
マウスの矢印を「書き込み欄」に合わせてクリックすると
上下の「書き込み欄」にユーザー名が自動で入る。
NPasswordはパスワード(自分の好きなもの半角4〜8文字)を記載
OConfirm Passwordは、もう一度同じパスワードを記載
P下の Continue to next step をクリック
Q次に画面が変わる Address Typeは Homeをクリック
R Address 住所 11-111 ●●●-cho ●●●-gun
SCityは都道府県(例=Totigi-ken) 
21  State / Provinceはそのまま
22  Postal Codeは郵便番号(例:111-1111)
23  Countryは Japan 選択
24  Continue to next step をクリック
25  Phone Typeは Homeをクリック
26  Phone NumberはTEL番号:(例:0111-11-1111)
27  Continue to next step をクリック
28  確認画面が出る
29  Continue to next step をクリック
30  長い文章の一番下の I Agree をクリックで登録完了。
貴方のホームページアドレスが直ぐ送られてきます。
685デフォルトの名無しさん:02/04/13 23:30
>>683
呼びかけてもアラン・ケイはここ読んでないと思います。
686デフォルトの名無しさん:02/04/13 23:36
がちょ〜ん


      谷啓
じっ  けんっ  くんっ


         清水(以下略)
688デフォルトの名無しさん:02/04/15 01:05
689デフォルトの名無しさん:02/04/16 07:42
誰かケイ氏に日本人のための日本語版Squeakの開発を提案して下さい。
690デフォルトの名無しさん:02/04/16 10:48
691名無しちゃん:02/04/16 17:21
>>673
Viewpoints Research Instituteを見たら今でも彼が支持されてるのが
わかるでしょう。

>>681
いいこと言った! ほんものの楽しいプログラミングってのはこれだよ。
最近 NHK で特集があったらしいね。クソスレ 2つほど立ったけど。
見たかったなぁ。再放送とかある?
693トットコハム子 ◆olJZZGWw :02/04/17 09:58
1)自動車を走らせる 2)風船を飛ばす

この二つしかできないんですけど、ほかに何かできますか?
694デフォルトの名無しさん:02/04/17 11:09
>>693
3)タイコをたたく
4)Wikiを立ち上げる
5)Smalltalkのプログラムを書く
695ハム子 ◆olJZZGWw :02/04/17 11:41
>>694 頭良いね。Wiki ってどこにあるの?
696デフォルトの名無しさん:02/04/17 15:05
>>695
ちょっと(っつか、だいぶ)古いバージョンでよければデフォルトではいってるよ。
697デフォルトの名無しさん:02/04/17 18:49
>695
ttp://minnow.cc.gatech.edu/swiki/15
ここから落とせ

ちゅうか自分でまず調べるクセをつけろ
698ハム子 ◆olJZZGWw :02/04/17 20:44
>>697 ありがと。ダウンロードした。確かにデスクトップに「ComSwiki.2」
と言うファイルが有る。さて、これをどうしたものか???クリックしても
なんともならないようだ。ダブルクリックしてもダメみたい。不思議な物体だ。
逝ってきます。sage
699デフォルトの名無しさん:02/04/17 23:02
>698
squeak.imageをVM(Win系ならSqueak.exe)にドロップするんだよ

したら、Swikiの説明書きが出てるからよ
そいつ読め
700デフォルトの名無しさん:02/04/17 23:19
>>699
つーか、ハム子はSwikiがなにをするものか知らないような。
NHK見たなら、このあたりから読むのが吉(既出だけど)。
http://sumim.no-ip.com:8080/morphiclesson
701デフォルトの名無しさん:02/04/18 01:39
>>692
ハイビジョンなら4月22日に再放送があるよ。
http://www.nhk.or.jp/future/room/alan.htm
702デフォルトの名無しさん:02/04/18 01:43
704デフォルトの名無しさん:02/04/19 22:18
age
705a:02/04/21 01:58
age
706デフォルトの名無しさん:02/05/01 20:28
あげておこう
707デフォルトの名無しさん:02/05/04 20:46
SMLより
--------------------------------------------------
青木@江東筍寺です。

「じゅん for Smalltalk」のテキストブックを連載したいと思いま
す。もちろん、Smalltalk(VisualWorks 5i.x および 3.x)の解説
を含みます。Smalltalk のインタラクティブ性を前面に押し出して
書き表わします。本当のオブジェクト指向プログラミングのマジカ
ルワールド(秘密の庫)の扉を開いてみましょう。

バッタもんじゃないオブジェクト指向プログラミングに触れてみた
い、これから Smalltalk の勉強を始めたい、もしくは Smalltalk
をやり直したい、3次元グラフィックスを学んでみたい、ムービー
やサウンドなどのマルチメディアの取り扱い方法をマスターしたい
と思う方々は、どうぞおつき合いくださいませ。

モチーフを「論よりコード」と「百の偽物よりも一つの本物」とし
ます。Smalltalk のインタラクティブ性を、インタラクションデザ
インに応用したり、エクトリームプログラミングの中心にすえたり
することを念頭に置きます。

テキストとプログラムを私がドンドン書き進めて、じゅんチームの
新鋭さんがビジュアルを付加し、もっとわかりやすいウェブページ
に仕立て上げて公開してゆきます。
----------------------------------------------------------

ばったもんとは、ひどい言い方.
SMLに入っていると,どんどん青木さんが嫌いになるんですけど.
708デフォルトの名無しさん:02/05/04 22:52
Smalltalkもじゅんもいつまでたっても超マイナーな存在なので
鬱憤が溜まってるんでしょう.
709デフォルトの名無しさん:02/05/04 22:53
そうそう,嫌味をいいたくなる人間はろくなものじゃないそうです
710デフォルトの名無しさん:02/05/04 23:41
ばったもんの方が、使われやすいのかも。
人間も不純なものだから
711デフォルトの名無しさん:02/05/05 01:36
「じゅん」もさ,CADを憂うんだったら現場で使えるものを
作ってみて欲しいものだ.
だだ飯喰って研究している身でいうことが偉そうなんだよね.
712デフォルトの名無しさん:02/05/05 01:46
確かに青木導師はかなりいやみったらしい感じはする。
衒学趣味な感じはする。
どうでもいい引用が多くて読みづらい気はする>書籍

と書くと擁護派が現れるはず。
713デフォルトの名無しさん:02/05/05 03:08
VisualWorks7のPre-Release版がようやくリリースされたですよー
ttp://www.cincom.com/scripts/smalltalk.dll//downloads/index.ssp?content=visualworks

198MBって嫌がらせ
連休明けにでも太い回線で落とすかな
>>713
今落としてるちう。 1.5M ADSLだけど、16kbpsで残り3時間だって…
715デフォルトの名無しさん:02/05/05 04:01
>713
落としました。
Cygwin、SqueakのDecompressで展開できないです。


ついさっき、vwncにこんなのがポストされてました。

I've just download - three different times to different computers - the
new 7 beta iso image from the web site. When I decompress it I get an
'unexpected end of file' error. Anyone else?


しばらく様子見です。
716714:02/05/05 04:32
あらら…
717714:02/05/05 09:12
やっぱ、だめぽ…
718デフォルトの名無しさん:02/05/05 12:37
ですから、プログラマになれる人は、プログラムを読むことができ
る人の中のほんのひとにぎりの人たちなんですね。誰でもプログラ
ムが作れるとか、サルでもできるプログラミングとか、奇妙なこと
が世の中で言われていますが、どうか戯言に惑わされないようにお
願いしたいと思います。
>>718 嘘つけ。
720デフォルトの名無しさん:02/05/05 19:22
>>719 そんなこと言っていいのかな?○木さんにいってやろ!
>>718
これらの文書が裏づけになるな。
ただ、誰でもプログラムは作れるようにはなれる。
プログラマにはなれなくとも。

ソフトウェア職人気
http://www.pearsoned.co.jp/washo/software/wa_soft09-j.html
プログラミングを独習するには10年かかる
http://www1.neweb.ne.jp/wa/yamdas/column/technique/21-daysj.html
話は変わるけれど、VisualWorksで、xorとかandとかの、特殊な
描画をするには、RasterOp使うしかないの?GraphicsContextに
直描き出来ないのがかなり嫌なんだけれど。
723デフォルトの名無しさん:02/05/07 10:16
Smalltalk インタープリタの作成を解説している Web サイトはありませんか?
724デフォルトの名無しさん:02/05/07 12:20
725デフォルトの名無しさん:02/05/07 21:07
>ですから、プログラマになれる人は、プログラムを読むことができ
>る人の中のほんのひとにぎりの人たちなんですね。
そういうのが対象なら俺は興味ないな。
自分の息のかかったまな弟子たちがいっぱい増えるといいね。
なんか家元制みたいでヤなんだよな。
>>725
そういったイヤーなところは生温い目で見つめることにして、興味のあるところだけ見ればいいさ。
GCCやemacsはRichard M. Stallmanが嫌いな人も使ってるよん。
727デフォルトの名無しさん:02/05/08 10:02
>>725
Smalltalkを子供でも使えるものひしようとしているアランケイのことを
批判しているのかなと思われ.
>727
視点が違うのでは?
批判も賞賛もしていないと思われ
729デフォルトの名無しさん:02/05/08 15:22
いや、いい線だと思う。
ところで復刊ドットコムでこういうの見つけたんですが、
投票しません?
http://www.fukkan.com/vote.php3?no=7979
http://www.fukkan.com/vote.php3?no=7980
731デフォルトの名無しさん:02/05/08 21:16
>730
コレクションにするならかまわないが、実用的かというと、そうではないと思うぞ
特にオレンジブックのほう

ベテランな方々、もっと役立つ、復刊したら嬉しい本はないですか?
>>731
昔ASCIIから出ていた本持ってる。
高校生の時に小遣いで買った記憶が(苦笑)
>732
してその価値はどーなのよ
>>731
なにをもって「実用的」とするかによるけど(たとえば、VisualWorks
でばりばりやりたい…とかね)、Squeakで遊んだり、昔はこうだった
んだなぁ…って思うくらいならかなり役立つと思うぞ。特にオレンジ
ブックのほうw いや、個人的にはこれナシにはSqueakの使い方は
理解できなかったかな。

SqueakはSmalltalk-80 v1(オレンジやブルーブックが対象にしてい
るv2の一つ前のバージョン)の仮想イメージをベースにしているから
かえって、まだ実装されていない機能とかあったりして笑える。「古い」
どころかむしろ「新しい」記述としてね。


ちなみにこれはmvcがまともに動いた頃(v2.x)の話で、v3.1以降事実
上標準になったmorphicの足しにしたければ、とりあえず言語として
のSmalltalkを勉強してからSelfでひととおりMorphicを学ぶとよいかも。

http://research.sun.com/self/release/Self-4.0/Tutorial/
735732:02/05/10 17:16
>>733
積極的に探す意味は無いかと。
なんせオブジェクト指向って言葉が殆ど知られていない時代の本なので、概念の解説に拡張Pascal使ったり、
GUI志向のプログラミング(マウスの使い方など)を解説するといったレベルのものに紙面のかなりを割いている。
736デフォルトの名無しさん:02/05/11 14:08
>Smalltalkを子供でも使えるものひしようとしているアランケイのことを
>批判しているのかなと思われ.
アラン・ケイのスタンスに完全に同意するわけじゃないけど、これは
かなり当たっている気がする。
上の書き込みの引用部分からも分かるように彼はプログラミングの楽
しさを広く知って貰いたいというより、選ばれた人だけができる、秘
儀のようなものにしたいという指向が強いのでは?
そもそも「弟子」呼ばわりするとこが、もうどうにも、イヤーな感じ。
良く冗談ですぐ「師匠」とか呼ぶ奴いるけど、そういう冗談とも違っ
てかなり本気でしょ?

>視点が違うのでは?
>批判も賞賛もしていないと思われ
そんなことはないでしょう。
737デフォルトの名無しさん:02/05/11 15:00
>>736
選ばれた人だけができる秘儀のようなものにしたいのなら、
なぜTextbookのようなものを公開するんだと思う?

青木氏とアラン・ケイのスタンスの違いは、「銀の弾丸」でいうところの
ソフトウェア開発の「本質的困難(essential difficulty)」と「過失的困難(accidental difficulty)」について
アラン・ケイが過失的困難を小さくしようとしているのに対して
青木氏は本質的困難を多くの人が理解することで克服しようとしているのでは?
Squeak/Smalltalkの入門サイトもさ、「ほうら、こんなに簡単にできちゃうよー」
じゃなくて、「こんなのも作れるぜ」「俺はこんなの作って見た」
というところ、見せてほしいよ。
使い物にならない、しょーもないサンプルばかりじゃん
739デフォルトの名無しさん:02/05/11 16:07
VisualWorksの話ね.

ttp://smalltalk.iwarp.com/
ここのサイトにあるFreebieCodeを色々ためしてるんだけど,
ArborFreebiesのGUIExtensionsとWidgetExtensionsで
コードに色つけれた人いる?
検索や置換(replace)とexplainはpopupmenuに追加されるんだけど.
コードに色つけるダイアログが出なくて困ってる.
IntellimouseSupportとwarpspaceってのはすごく便利なので,
こっちのほうも是非使いたいんだけど.

VisualWorksの3.1NC版使ってます.
上のArborFreebiesのパーセル読むときに警告がでるんだけど
それかな.
>738
探し方がまずいんじゃない
741デフォルトの名無しさん:02/05/11 22:40
>>740
なるほど、探し方に問題があるわけじゃないんですね。
「探しかたまずいんじゃない!」
742739:02/05/12 03:45
explainとreplaceってもとからあるな… (鬱
Amazon見たけど今流通してないSmalltalk本はどれも古いね
これなら洋書買ったほうがよさそうだね
744739:02/05/14 02:29
>739
VisualWorks5i4で試して見たところ
warpspaceで特に問題なくemphasisメニューがでてきてテキストに色つけできた.
3.1用のはバージョンが古いのか,warpspaceの形も少し違ってた.
3.1では無理なのかな.

まださわり始めたばかりで全然わからないんで,勉強して出直してくる.
"5i4は雰囲気がちがったので3.1で我慢します."
Smalltalk に興味のあるオマエら、こんにちは。興味ないキサマら、もっとこんにちは。
この場をお借りして Smalltalkers' Salon Mailing List の紹介をいたします。

Smalltalkers' Salon Mailing List(内輪での略称は SML)は、日本語で
Smalltalk やオブジェクト指向技術を含めたソフトウェア一般について
おしゃべり(smalltalk)をするための mailing list です。現在 500 名弱の
参加者を得て、日々お気楽な放言やら真面目な考察やらが飛び交っています。

参加方法など、詳しいことは以下のページをご参照あれ:
http://www.sra.co.jp/smalltalk/SML/

過去のおしゃべりのアーカイブも公開されております。subscribe するほどでは
ねんだども内容をチと覗いてみっぺか?という方はぜひご参照ください:
http://www.sra.co.jp/smalltalk/SML/archives/

SML に関して質問があれば強く歓迎します。
この「スレ」に投稿するか、私 <[email protected]> にメールを下さいまし。
>>745
こんな所に、突然何を……。
……ひょっとして、偽者?
747渡邊克宏:02/05/14 18:27
>745
2ちゃんねる内でSmalltalkers' Salon Mailing Listの広報活動に適当な場所があるかどうか
よくわからないでいたのですが、案ずるより来てみるほうが早かったようです。
そのものずばりのSmalltalk/Squeak用スレがあって、しかも結構濃い話がバンバン出てますね。
件のSMLも、ご紹介申し上げるまでもなく頻出のようで、もしかしてオヨビじゃなかったのかも。

それにしても、知人がいそうで怖いっちゃ〜。
748渡邊克宏:02/05/14 18:36
>746
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

本人です。この投稿(shift jis)を
http://www.sra.co.jp/people/katsu/pgp.txt
とご照合ください。

アーカイブを整備したのを契機に、宣伝して回ろうかと思ったんです。
文章はネットニュースに流したのの使いまわし...いえいえ、そんなことは決して。
2ちゃんねるのためにこころを込めて打った文章をネットニュースにも
流しておきました。
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.4 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQE84NnjjLiRVj+RmEcRAsNTAJ4yHeIRAOVP/0TlGbTTwSpHCD23GgCfVpXY
XtPiCUXc2HBDan4EwtZfark=
=GjGD
-----END PGP SIGNATURE-----
749導師万歳:02/05/15 23:04
>ですから、プログラマになれる人は、プログラムを読むことができ
>る人の中のほんのひとにぎりの人たちなんですね。誰でもプログラ
>ムが作れるとか、サルでもできるプログラミングとか、奇妙なこと
>が世の中で言われていますが、どうか戯言に惑わされないようにお
>願いしたいと思います。
そのとおりだよ。プログラマになれるのはほんの一握りの上澄みだけ
なんだ。本当のプログラマは2ちゃんで質問なんかしないんだよ。
Smalltalkもお前らみたいなサルが触ると穢れるからもうやめろ。
VBでもやっとけ。
750デフォルトの名無しさん:02/05/15 23:46
多くの人は、世界最高のテキストエディタはゼロックスのパロアルト研究所が
Alto と Dorado コンピュータで使うよう書いたもの[3]だと考えている。残念な
がら、本物のプログラマならば誰も SmallTalk などという名前のオペレーティン
グシステムはけっして使わないし、コンピュータとマウスで対話したりすること
もけっしてないだろう。
http://www.genpaku.org/realprogrammerj.html
751デフォルトの名無しさん:02/05/15 23:48
1980年台後半、一人の smalltalk プログラマがいた。
彼は僕の知っている唯一の smalltalk プログラマであるが、当時、その生産性には驚いた。
「こんなツールがあったら便利なのにね」
「ここにこう線が引けて図がかければいいね」
「このデータ解析、調査だけでもどれだけ時間があっても足りないよ」
口にして、一晩明けると、前の日に話題にのぼったプログラムが目の前で動いていた。
(中略)
彼こそが職人であった。彼こそやはり、「本物のプログラマ」だった。
だだ、smalltalk に魅せらせた彼が、smalltalk で身を立てていけているかどうか、実のとこ
ろ僕にはわからない。
http://member.nifty.ne.jp/samidare/pgmr/m008.html
752デフォルトの名無しさん:02/05/16 00:05
>>750
Smalltalkの開発当時の状況や歴史を書いた本を探していたのですが、
最近良い本を古本屋で見つけました。(昔流行った本だけど、当時読んでなかった)
 「ワークステーション原論」アスキー刊
この本で、XEROX PARCの技術的中心人物の一人、バトラー・ランプソンが、
似たような事を説明していました。(今手元に本がないから要約すると)
 ・Alto上のOSとしては、Alto OSの他、Smalltalk、Cedar、Lisp用のOSが開発された。
  これらのOSは、ワールド・チェンジとかいう機構で、2秒程でSWAP切り替えできた。
  ただし、プログラム間の連携はほとんどファイル・ベースでしか行えない上、
  研究所のニーズもなかったので、(予想外の事だが)データベースの研究は行われなかった。

 ・Altoのソフトウェア開発では、対話処理の可能性に目を奪われたため、
  もうひとつの可能性 - UNIXのshellのようなプログラミング能力のあるバッチ処理 -
  の追求はあまりなされなかった。
753752:02/05/16 00:56
自宅に戻って確認したら、少々間違いがあったんで訂正しまーす

1.「ワークステーション原論」  → 「ワークステーション原典」
  http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=utf8&oe=utf8&querytime=pM&q=%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%B9%E3%83%86%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E5%8E%9F%E5%85%B8
2. Ceder...用のOS → (Cederは次の世代だから関係なし)
3. UNIXのshellのようなプログラミング能力のあるバッチ処理
  → UNIXシェルやEmacs Lispのような体系的なプログラミング機能

>>750
 プログラミング機能のないWYSIWYGって、
 拡大率1の拡大鏡みたく、あんまり知的能力の拡張として役立たない
 ってニュアンスなら、同意
754デフォルトの名無しさん:02/05/19 14:48
日本語版(但電子遊具限定)登場記念 age
>>750
そりゃそうだ。SmallTalkなんて言語はないからなあ。
(正しくはSmalltalk)
757デフォルトの名無しさん:02/05/19 18:00
>>756>>753を買って嫁
>>756
そして読み終わったらオレにくれ。
探してるが見つからん、て言うか有っても法外な値段だったり。
神田明倫館で定価の半値位で買えたけど。
結構在庫もあるんじゃないかな、古い本だし
DECから、MSに逝ったLampson. 鬱だ...
762752-753:02/05/19 22:23
>>760 THX! 38-AltoSoftware/Acrobat.pdf の 3ページ目後半ですね、私が引用したのは。

#しかし、ファイル名 "Acrobat.pdf"って(藁
#バトラー・ランプソンって、Adobeの祖先だよね(藁
763デフォルトの名無しさん:02/05/22 20:27
age
764デフォルトの名無しさん:02/05/24 07:52
thisContext って何?
765デフォルトの名無しさん:02/05/24 11:25
疑似変数。現在実行中のコンテキストが入る。
とても便利。thisContext sender recieverとか(Squeakの場合)。
766デフォルトの名無しさん:02/05/24 11:43
もう少し詳しく。
767デフォルトの名無しさん:02/05/24 11:46
一時変数の値も参照できたりする。
768デフォルトの名無しさん:02/05/24 11:51
実際に試してみて、それでも分からなかったら、使う必要なし。
769デフォルトの名無しさん:02/05/25 21:50
Emacsライクなエディタ操作をサポートするものを見つけました。

http://www.ops.dti.ne.jp/~cake-smd/wiki/EmacsLikeKeysForSqueak.html
770デフォルトの名無しさん:02/05/25 22:35
そう良かったね。
がいしゅつだけど。
771746:02/05/25 23:51
>>747(亀レスだ、ごめんなさい)
そうでしたか。MLの管理、お疲れ様です。
>>750
それ、この時代に見るとギャグさながらだね。
772デフォルトの名無しさん:02/05/27 16:27
>>387
Webでこの記事ハケーン。

Squeakを知りたいっ!
ttp://squeak.hoops.ne.jp/1213SqHirai/
773デフォルトの名無しさん:02/06/02 02:11
「Server容量が一杯です」などとケチなこと言ってないで
はやくVWNC7アップしてくれんかのう
775デフォルトの名無しさん:02/06/07 01:44
yourself ってな〜に?
ブロックを受信したオブジェクト自身
>>776
正しくはyourselfメッセージを受信したオブジェクト自身
>>777
を帰す事が期待されるメソッド。
>>778
が提供するメッセージ名
780デフォルトの名無しさん:02/06/07 10:46
>>779
つーか、単項メッセージセレクタ。
781デフォルトの名無しさん:02/06/07 12:17
>>775
Object>>yourselfの定義をみれ
782博之馬〜鹿死ね:02/06/07 12:26
                         / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
      /\ /\           < ×クズ粕 博之×← 死んで人の為になりなさい お前にとって人生初めてのな 環境保護の意味でも死ね ! 博之よ。
      \_/  \  ∧_∧   // \_________
      /◯)//  \(´∀` )//
     /=// (⌒  ○=  )//
    /⌒//   VV /__ ノノ⌒
    (( // )   ⊆/〓〓(  ○ )
     \\_/          \_/
東京都北区 赤羽北2-31-16-1311 西村博之 ←これが社会の害虫 "糞ひろゆき"
783デフォルトの名無しさん:02/06/08 00:37
>>776-781
Thanks.
メソッドだったのね(藁)
784デフォルトの名無しさん:02/06/08 00:43
FileListとかって、みんなMorphicみたいだけど Morph のサブクラスじゃないですよね。
どういう仕組みで実装してるのかな? 教えて!
785デフォルトの名無しさん:02/06/08 02:19
>784
見れ
FileList class >> opneAsMorph

ついでに『MVC』の『M』と『V』と『C』ってなんのことか調べれ
786デフォルトの名無しさん:02/06/08 14:30
>785
納得。美しい。Thanks.
787デフォルトの名無しさん:02/06/14 01:14
world のメニューから、'send contents to printer' としても、プリンタから出るのは白紙ばかりなの(泣き)。
'save contens to file..'では、HTMLフォーマットで出力されるんだけど。
どうしたらいいの?? 教えて!!
788デフォルトの名無しさん:02/06/14 01:17
>787 worldじゃなくて、browserでmethodを表示してる時です。
>>787, 789
環境。バージョン。
790デフォルトの名無しさん:02/06/22 12:18
791デフォルトの名無しさん:02/06/23 16:48
>790 すごい!!
Morphic方面は芸達者がそろってきたな。
本でも出せば売れそう。
792デフォルトの名無しさん:02/06/23 23:04
アラン・ケイの番組放映したりすると、しばらくはMLやこの掲示板とかが活発に
なるけど、すぐ収まっちゃうよね。
やっぱ長続きする人がすくないのかな?
793名無しさん@Emacs:02/06/23 23:08
異論もあるだろうけど、もうちっとましな GUI にならんかね。
794デフォルトの名無しさん:02/06/23 23:27
>>793
Zurgleとかどう。3.2gamma-4881からはテーマも使えるし。
http://minnow.cc.gatech.edu/squeak/2469
795デフォルトの名無しさん:02/06/25 00:30
>793
長続きする方がおかしいよ。
全部英語だし。
正式には日本語を使えないし。
英語に強い人がシコシコやるっきゃないよ。
796デフォルトの名無しさん:02/06/26 02:00
SMLの管理人が変わったみたいだけど、
近藤さん(だっけ)って、どんなキャリアの人かな。
えらい若い人みたいな記憶があるけど(@いいかげん)。
797become::02/06/28 03:29
>796 近藤さん
Googleで検索したら一番最初に出てきたYo。
ttp://www.sra.co.jp/public/sra/personnel/people/question/wakate/00_04.html
顔写真つき(・∀・)だ。ちょっとかわイイ。かモナー?ちょっとな。ちょっとだぞ。
798sage:02/06/28 16:29
smalltalkモナー

略して

SMモナ
799デフォルトの名無しさん:02/06/28 21:24
VisualWorks5i.4 ports化記念age
800!
801!
てかvwnc7は出んのかおらぁ
>>802
The Cincom Smalltalk Summer 2002 release will be available this month. We will be releasing ObjectStudioR 6.7 and VisualWorksR 7.0.
ttp://www.cincom.com/scripts/smalltalk.dll//Community/Digest/June/index.ssp?content=summer
805sage:02/07/06 02:27
Strongtalk ?

www.cs.ucsb.edu/projects/strongtalk
806デフォルトの名無しさん:02/07/14 14:29
ageBlock value
.
808デフォルトの名無しさん:02/07/17 13:13
Squeak 3.2正式版登場記念age
ただしchangesからLFをストリップする要あり。
http://groups.yahoo.com/group/squeak/message/46998
809デフォルトの名無しさん:02/07/17 21:17
810いつでもどこでも名無しさん:02/07/20 10:07
Squeakよりも、アスキーのツクールシリーズの方が子供に良いクセー。
811デフォルトの名無しさん:02/07/25 04:06
来月、再来月のSoftwareDesignにSqueak入門なる記事が掲載される予定らしいね
812デフォルトの名無しさん:02/07/25 06:52
駄目駄目Rubysaikou 1!!!!
突然ですが、Squeakって、日本語訳すると「厨、厨」ですか
>>813
Squeakerは厨房ケテーイ
815 :02/08/15 00:40
たまにはage
816デフォルトの名無しさん:02/08/15 04:35
Smalltalkerって日本語訳すると「雑談野郎」ですが何か?
>>816
小噺野郎という説もあるけどな
818零亭ピーコ、パーコ:02/08/15 20:35
Smalltalker=落語家ケテーイ
819デフォルトの名無しさん:02/08/15 22:24
>>818 なぜか小野寛顕センセ思い出しちまったーよ
820デフォルトの名無しさん:02/08/15 22:27
◎晰
×顕
821デフォルトの名無しさん:02/08/16 02:40
>816 >817
野郎かよっ!Politically Incorrectじゃん。女はどうすんだ?
822デフォルトの名無しさん:02/08/16 02:48
ゴメン、プログラムやてるクレバじゃない女は、
俺の中では「野郎」の一種なんだ…
823デフォルトの名無しさん:02/08/17 03:41
Morph,もうだめぽ.っつ〜か,ちゃんと,まともに書いてくれよ>di, tk, sw, raa, etc
824デフォルトの名無しさん:02/08/17 14:18
>>823
この人たちですか。
ttp://minnow.cc.gatech.edu/squeak/8
825渡邊克宏:02/08/17 23:23
>817
多分日本人にしかわからない感覚のような気がします。
small talkという名詞(句)にsuffixのerをつけたのだから、英語圏の人はこれと
落語あるいは噺(story telling)を結び付けて考えられないんじゃないでしょう。
というわけで Politically incorrectです。

>821
P.C.についてツッコむなら、>814の時点で既にツッコむ余地が存在します。
厨房は中坊(中学生坊主)からderiveされたので男性を指す気がします。
(実のところ私は厨房という単語の女性形を知りません。)

って、2chって、まじレスするときって断らないと失礼にあたるんでしょうか?
面倒なので、実はこのレスは冗談ネタということにしておきます(←この言明は
このレス全般すなわちこの行自身までを含んだ言明である)。
826渡邊克宏:02/08/17 23:26
>797 ちょっとかわイイ。かモナー?ちょっとな。ちょっとだぞ。

ちょっとかよ!
あの写真は「ちょっと」映りが悪いと思うな。「ちょっと」な :-)
827デフォルトの名無しさん:02/08/19 23:28
SDにSqueakの連載記事
http://www.gihyo.co.jp/SD/abstruct.html
828デフォルトの名無しさん:02/08/21 02:40
>>823
自分で直して公開しる!
smalltalk=「小言」というのを以前bitの悪魔の辞典で読んだ気が。
C=「恣意」
fortran=「歩、王取らん」
cobol=「こぼ(れ)る」
他は忘れた。
830Aoki:02/08/27 16:06
実行速度が速いSmalltalkを実装するための技法をいろいろ教えて下さい。
831デフォルトの名無しさん:02/08/28 01:20
>830
普通に組んでから、MessageTallyとかMessageSpyを使ってプロファイルとるのがよいと。
あとはアルゴリズム再検討するなり、カプセル化崩すなりしてくれと。
832become::02/08/28 05:14
>831
たぶんSmalltalk codeの話じゃなくて、Smalltalk VMの実装の話なんじゃない?

といいつつ、まず遅いところを同定して、それからそこを速くするという点はまったく831のいう通りだな。
830はSmalltalkのどこが遅いと思ってるのかな?

俺はnumber crunchingとりわけ整数演算が遅いと思ってる。
でもここをいまより早くしようとしたら、多分言語仕様をいじりたくなってSmalltalkじゃない言語になっちゃうもんな。
833isMeta:02/08/28 06:06
>>832
で、遅いところを同定するためには、
どんなテストデータ(この場合Smalltalkプログラム)を使うか、
ちゃんと適切に選定しないとね。

整数演算が遅いのはその通りなんだけど、
それが>>830が適用したいドメインでどれぐらい占有しているか
その辺が問題だね。
>830
例えばSqueakならVMのソース吐き出して176(加算)あたりのcaseブロック見てみれ,
あとはSPJ読むなりして好きにしてくれ.をれはVWNCのスピードで満足.
835デフォルトの名無しさん:02/09/03 15:38
むずかしいはなしをしてるときにすみません。
VisualWorksで動くテキストエディタってありますか?

まずはSmalltalkで改造できるエディタとして
仕事に使っていこうとおもったのですが、
こういう使い方っておかしいのでしょうか?
836私自身も編集機能よく知らないんですが:02/09/04 02:51
専用のエディターはあまり見ないけど、コントロールキーにいろんな機能を割り当てるという話は聞きます。
こうすればEmacsのような雰囲気になるYo!なんていう説明もどこかで見た気がします。
VisualWorksだと、どのクラスを見ればコントロールキーの一覧が出るんでしたっけ?
>836
ParagraphEditorってVIsualWorksにあったっけ?

>835
それって,lispをsmalltalkと置き換えたEmacsみたいなの? 聞いたことないな〜.面白いかもしんないけど,実用性はあんまし期待できなさそう.でも,作ってて楽しければベストだよね.
とりあえず,WorkSpaceとCodePane自信と,それがrefしてるクラス群の中を歩き回って見れば.

できたら教えてね.
838デフォルトの名無しさん:02/09/04 15:54
839835:02/09/04 17:47
レスどうもです。

>>837さんのおっしゃるSmalltalk版Emacsみたいなものが
欲しかったのですが、ないっすか・・・

勉強のためにも、少しずつ作ってみようと思います。
ありがとうございました。
840836:02/09/04 22:10
>836 Emacsのような雰囲気になるYo!
これは、単にCtrl-Aで行頭に行くとか、Ctrl-Pで前の行にいくとか、Ctrl-Sで文字列検索のdialogが出るとか、
そういうキー割り当てだけのセコイ話だったんです。
プログラミング言語と環境を提供するとかいう、そーいうスゴイ(でもSmalltalk使いにはそれが普通か)話じゃないです。
841デフォルトの名無しさん:02/09/05 04:48
>>839
Workspace自体が簡易エディタだからね。
がんがれ!
>841
あ,そういやVisualWorks, Squeak, GNU-Smalltalkならlisp動くやん.それをEmacs-lisp相当にまで拡張するってぇのは? Smalltalkとlisp両方身についてウマ〜ってならんかな.
>>842
がんがれ!
844名無しさん@Emacs:02/09/08 06:00
GNU Smalltalk をインストールしたら普通にコマンドライン編集や
TAB 補完が出来て驚きました。さすが FSF 謹製。
EUC がそのまま通るのも良いです。

Smalltalk は詳しくないので、まずはチュートリアルを読んで色々
といじっとります。
ファーストインプレッションは、SQL で DBMS を操作しているみた
いだなという感じ。

ちょっと疑問なんですけど、Smalltalk printNl ! しても何も表示
されないのはなんででしょう?
チュートリアルによると飽きる程ずらずら辞書の中味が表示される
はずなんですが。

st> Smalltalk printNl !

Execution begins...
Smalltalk
returned value is nil
1343 byte codes executed
which took 0.001 seconds, giving 1343000 bytecodes/sec
81 primitives, percent 6.03
self returns 21, inst var returns 0, literal returns 3
43 method cache lookups since last cleanup, percent 3.20
17 method cache hits, 26 misses, 39.53 percent hits
845デフォルトの名無しさん:02/09/08 07:22
>>844
Smalltalkらしさを味わうのであれば、GNU Smalltalkよりはsqueakのほうがお勧め。
http://www.squeak.org/
846デフォルトの名無しさん:02/09/08 11:46
>>844
奇遇ですね、丁度同じ疑問を持っていました。
どなたか解説きぼんぬ。
847デフォルトの名無しさん:02/09/14 18:32
VW 7 NC and ObjectStudio 6.7 NC are now available for download
ttp://www.cincom.com/smalltalk
8483.0 → 5i → 7:02/09/16 19:10
(´-`).oO(なんで VisualWorks って2つずつバージョンが上がるんだろう…)
>>848
1.0, 2.0, 2.5は? (小数点2桁以下は省略)
850デフォルトの名無しさん:02/09/19 23:23
>>827
10月号には載ってないような。
Smalltalk76→78→80 の間をいつか埋めたいから。
どうでもいいけどVWNCのCDKEY入らないの送るのはどうかと小一時間(鬱
>>851

それを言うなら、72→76→80だす。
これだと4おきになって851の主旨をくめないけどねw。
78は76の、ついでに74は72の途上版の別名。
72、76、80はそれぞれ別系列、終盤はオーバーラップも。

ttp://www.metaobject.com/papers/Smallhistory.pdf
イメージファイルをSqueakに読みこませたときに、最初に実行される
メソッドってなんなんでしょうか?
もし調べる方法がありましたら教えてください
855デフォルトの名無しさん:02/09/26 13:37
アラン来日age
14:30から講演
856デフォルトの名無しさん:02/09/26 15:39
Etoyは見たことあるからなあ…
857デフォルトの名無しさん:02/09/26 20:13
>>856
今回はt-Time
858デフォルトの名無しさん:02/09/26 20:14
>>854
なんでそれを知りたいの
859   :02/09/26 20:16
なんで
860デフォルトの名無しさん:02/09/27 19:48
>>854

読みこむイメージファイルは、以前に保存したもの。
保存はその瞬間のスナップショット。
ということは、イメージを保存するメソッド中のファイルに書き出した直後からインタプリタが
回り始めると考えてみたら。
861デフォルトの名無しさん:02/09/29 01:00
VWNC7.0落としたけど、Aqua L&Fがない...
せっかくMacOSXVMが安定して動くのに!!
>>861
パーセルにも入ってないの?
863861:02/09/29 11:38
>> 862
ない。
864デフォルトの名無しさん:02/09/29 14:20
>>863
Goodies.tar.gz
>>861
GHMacOSXLookFeel.pclをロードしたら大丈夫だよ?
866861:02/09/29 20:11
862,864,865
すみません、ありました。Goodiesをいれるの忘れていました。
867デフォルトの名無しさん:02/10/01 20:58
User Interruptのコマンドは、Squeakなら Alt + ピリオド ですよね

で、知りたいのは他の環境ならどんなコマンドを叩くのかということなのですね
VisualWorksとか、Dolphinとか、Smalltalk/Xとかとかとかですね

Squeak以外の環境をいじっていて、無限ループに入るたびに
タスクマネージャから無理やり落として一からやりなおすのは堪えがたいものでして

ご存知のかた、教えていただけませんか?
>>867
それって、PARC直系/傍系 smalltalkで共通でないの?
Smalltalk/Xのユーザ割り込みは、した事ないから忘れたけどぉー。
869デフォルトの名無しさん:02/10/01 21:46
>>867
ブラウザ開けて自力で調べれ。
870デフォルトの名無しさん:02/10/01 22:41
↑何で判りもしないでレス付けるのさー。
 勘違いしてない?
このくらい自力で調べられないとSmalltalkでは生きていけない罠
>>868
works系は3以降から違う.
copyのショートカットと衝突することを嫌った。弱気。
874デフォルトの名無しさん:02/10/02 00:50
>>867
VWNC3 で勉強中の素人ですが、
Ctrl+y で User Interrupt 発生しましたよ。

>>871
どの辺で定義してるのかヒントくださいー
UIFeelPolicyにはなかったよー
875874 (自己レス):02/10/02 01:32
InputState にあった・・・
スレ汚しスマソ
DolphinはCtrl+ScrollLockで効いたですよ
smalltalkはじめようとおもって、
VisualWorksを落とそうとしているのですが、、

ここ
ttp://www.cincom.com/scripts/smalltalk.dll//downloads/index.ssp
から
こう
ttp://www.cincom.com/scripts/smalltalk.dll/downloads/index.ssp?content=smalltalk
きて
こう
ttp://www.cincomsmalltalk.com/scripts/ProductRegistration.ssp
きて
先に、進めません。why?
レジストすりゃいいじゃないの
何に困ってんのかよく分らん
>>878
あ、舌足らずでした。
レジスト画面で[submit]しても、
また同じ画面に戻る、の巻きです。
>>879
> >>878
> あ、舌足らずでした。
> レジスト画面で[submit]しても、
> また同じ画面に戻る、の巻きです。

今、もう一度やったら、レジスト出来ました。

産休。
>>880
、、、でもダウンロードはできない。
ふぅ。
・JavaScriptをON
・パスワードに記号を含めない

俺はこの2つにハマったかな。
883渡邊克宏:02/10/07 22:32
>879 レジスト画面で[submit]しても、 また同じ画面に戻る
レジストしたら、いったんそこまでのWeb上での作業は忘れてください。
レジストのページから継続してSmalltalkをGetする形にはなっていないんです。

レジストが完了すれば、登録したアドレスにメールが送られてくると思います。
それにCincom SmalltalkをGetするための本当のページのURLが記載されているはずです。



>>883
フムフム。なるほど、なるほど。

で、
Thank you for requesting Cincom Smalltalk Non-Commercial. Please visit this page:
というメールが到着しました。

そこに記載されているアドレスにアクセス。

(ダウンロードページが表示される)
Use these links to download the product(s)

リンクをクリックしてダウンロードしようとすると、
パスワードの入力を求められる。
ので、メールアドレスに記載されているパスワードでアクセス。

パスワードが違うらしい。。。。
885デフォルトの名無しさん:02/10/08 13:19
メールに記載されているのはCD KEYですよ。

パスワードは登録の際に >>884 さんが
ご自身で入力されたものを使えば、ログイン可能なはずです。
>>877
「Smalltalk始めよう」ってだけなら,VWNC3(.1)で十分なんじゃないの? 軽いし早いし,ダウンロードも手間要らず.
>>886
Smalltalk始めようでVW3.1動かしたいとおもったらOSXじゃ動かない罠(死。
Classic入れる余裕はないしOSXじゃないと不味いとVW7しか選択肢がないという。
888886:02/10/16 01:37
>>887
うげげげ.そ〜ゆ〜オチがあったとわ…… ペケだと3.0使えんのか.これは痛いぞ.ポリタンク新調するのやめよかな……
889887:02/10/17 03:18
>>888
Classicが動く環境なら問題はなし。OSX純粋環境だとVWNC7で、いくしか。
でもOpenGLサポートないんでJunはまともには動かず(鬱
890887:02/10/17 03:24
↑あ、あくまでもウチの環境ではです>OpenGLサポートない(要するにソフトレンダリングになっちゃうんでOSXではOpenGLないのと同じ)。
ポリタンクとか持ってる人はじゃんじゃか遊んでやってください(ノートじゃビデオカードすげ替えるわけにもいかん)。
SD age
892888:02/10/19 04:22
でもまぁ,もうなんでもエエわ.もうMacに拘る必要もないわ.最近買ったVaio C1にJunとSqueak入れて遊んでますわ.
しかし,モバイル・マシンでMorph/Junが遊べるなんて,エエ時代になったのぉ〜.
Objective-C サイコー
894デフォルトの名無しさん:02/10/28 15:03
ヲレのG-FORTでSqueak動いた記念age
お、お父さん…
896デフォルトの名無しさん:02/10/31 22:57
897デフォルトの名無しさん:02/11/02 03:01
Squeakいいね。こんな速いとは思わなかった。
WikiWorksが動かしたくて
今日やっとこさに3から7に移行しますた!
使ってる人いますか?

やっぱ皆SWiki?
899あいよ:02/11/05 01:26
900デフォルトの名無しさん:02/11/07 07:51
このスレまだ生きてるの?
>>900
久しぶりに来て、漏れもそう思った、
902デフォルトの名無しさん:02/11/07 14:29
Self on Linuxって使ってる方います?
サンプル画面だとIDEらしきものがあるようですが、
どうやって起動するんですか?
# ./Self
だと、インタプリタのプロンプトが出てくるだけなんですが。
903898:02/11/07 16:21
>>899
レスありがdです。日記も読んでみますた。
JpLocaleも含めて色々問題あるみたいっすね…

今はWikiWorksの前に俺コードを移植しとります。
Namespace対応ついでに
Controllerをevent-drivenにしたりとか

とりあえずSmalltalkマンセー!
>>902
./Self -f Demo.snap
905デフォルトの名無しさん:02/11/08 15:55
OOPSLAに来ています。camp.smalltalkの人たちは毎日々々朝から晩まで会場の一角に陣取ってコーディングしています。怖くて輪に入れません。
906デフォルトの名無しさん:02/11/08 16:39
もっと実況してー。
907902:02/11/09 09:15
>>904
サンクス。
しかし-fじゃなくて-sだった。
908デフォルトの名無しさん:02/11/09 10:03
>>906
英語ですが。
http://www.smalltalkconsulting.com/html/OOPSLA2002d1.html
ビル・ゲイツの招待講演にもSmalltalkということばが出てきました(たぶんSmallScriptのこと)。
デモではXPのペアパートなにAiboをつかうというのが面白かったです(Dolphinで実装。しょぼいコードを書くと突っ込まれる。リファクタリングに成功するとハイタッチ)。
SqueakBOFではStableやModuleの連中がCentralに対する怒りをぶちまけていました(誇張あり)。彼らのSqueakMapで少しはイメージがクリーンになりそうです。
いま話題のSelf絡みでは、そのVM実装技術を応用し、強い型付けを導入したStrongTalkのデモもありました。VisualWorksの3倍速いとか。ただしこれにはCincom陣営の反論もあるようです。
910デフォルトの名無しさん:02/11/11 23:49
Squeak面白い。
でもこれってワークスペースみたいなGUIから抜けれないのかな。
単体EXEみたいなの(別にランタイム+イメージでも良い)
作りたいんだけど。
911デフォルトの名無しさん:02/11/12 17:12
New ザウルスもえあげ。
http://www.zdnet.co.jp/news/0211/12/njbt_01.html
これでSqueak動かして遊びてー。(つうか、動く?)
>>910
ObjC へいらっしゃい。
あるいは C へのトランスレータがあるらしいので使ってみるとか。
Pocket Smalltalk とかそんな感じなのかな?

>>911
前に調べたら、リナザウで動くのは X 版と FB 版があるみたい。
Qt/E 版は無いと思われ。
913デフォルトの名無しさん:02/11/13 01:18
現実の窓もオブジェクトとみなしてハロとか付けたり、
回転拡大縮小できたらいいね。
リージョン区切るの重そうだけど。
>>908
Selfが今話題になっちゃってるんですかぁー。はぁー
915デフォルトの名無しさん:02/11/14 16:06
916デフォルトの名無しさん:02/11/14 22:24
>>912
Pocket SmalltalkってDolphinで作ったんじゃなかったけ?

Dolphin日本語の情報はあまりないけど
海外では結構メジャーなんだよね確か
917デフォルトの名無しさん:02/11/15 14:07
>>916
Squeak に移行したとか、してないとか・・・。
919デフォルトの名無しさん:02/11/16 14:51
>>918
Squeak版は2.0aでずっと止まってます。最新版はDolphinで1.6a4。
http://www.pocketsmalltalk.com/pst-download.html
920デフォルトの名無しさん:02/11/17 02:31
これエディタ日本語つかえるの?
関数名補完とかできたら最強じゃん
久し振りに Smalltalk 関連の Web を漁っていたら日本語イメージが
公開されていてびっくり。

VGA Zaurus をゲットしたら以下を試してみようと思ってるんだけど、
フレームバッファ版は難しいかな・・・。

http://minnow.cc.gatech.edu/squeak/2437
http://minnow.cc.gatech.edu/squeak/2688
http://lists.squeakfoundation.org/pipermail/squeak-dev/2002-September/thread.html#44531
922デフォルトの名無しさん:02/11/18 08:27
Squeakって全部Smalltalkで書かれてるの?
描画やけに速くない?
923名無しさん@Emacs:02/11/18 23:36
この絵はちょっと萌えた。OS のフォントも使えるのね?
使える環境だぜって面構えだ。

ttp://www5.ocn.ne.jp/~shigerus/sq_web/sqsq.jpg

>>922
確か Smalltalk で書いて C のソースコードを生成していたと聞いた。
そこまでするんかい! と思たよ。。。

Squeak, UNICODE 化されたら手軽で良いのに・・・。まぁ色んな意見が
あるでしょうが。
昔に比べたら現実的な速度になってるのに
やっぱ言語がSmalltalk ということで敷居が高いのか。
動的言語の老舗なのにね。日本語の資料がもっと欲しい気はする。
>>924
このスレから盛り上げてイコーヨ
MLはなんか苦手だし
そういえば日本語Squeak本の話はどうなった?
>>926 頓挫しますた
捨てる神あれば拾う神あり。
929名無しさん@Meadow:02/11/19 12:44
>>923
フォントはたぶんラスタ系のものを用意する必要があったと思う。
k14とかkanameとか?

TrueTypeと名のつくクラスはあったと思うけれど、描画エンジンも自前なので
OS のフォント系APIを借りることはしてないような。
923 で挙げた画面のフォントってヒラギノかと思ったんだけど、
違うのかな? フォントあまり詳しくなくって。
そろそろ次スレですね。

ところで、Smalltalk で1つ残念な点がある。それは $ マークと
#() 。記号に、(元の意味とは異なる)特定の意味を持たせるのは
ダサイと思います。
932926:02/11/19 23:05
>>927
おお、Squeak本よ。しんでしまうとはなさけない。
便乗で聞きたいんだけど
Squeakの文字をアンチエリアスにするやつ動かした人いる?
あの画面カッコイイから一度動かしてみたかったんだけどな。
>>931
それは他の言語でも似たり寄ったりのような。
記号を厳密に使ってるのはAPLくらいじゃない?
>>934
程度問題ですが、Lisp, Python, Java なんかは、キーワードを冗長に
記述する事で変な記号を少なくしていると思ってます。
$ を見ると、Perl や sh を思い浮かべるので、拒否反応が出ただけかも。
ちょろっと書く時は便利なツールだけど・・・、みたいな。
936デフォルトの名無しさん:02/11/20 06:15
リテラルを使いたくなければ等価なメッセージ式でも書けるよ。
演算子でもないのに + * とか2項メソッドで定義されてるよね。
まあ慣れだけど。
>>933
これね。
http://minnow.cc.gatech.edu/squeak/1225
3.0の頃に試したけどファイルインしただけで動いたよ。
squeakでhttpsサーバやってる人いますか?
>>936
申し訳ないんだけど、メソッド名を教えて下さい。
一応、ググッてみたんだけど、検索語が悪いのか
ヒットしなくて。
>>938
3.0で動いたよアリガト! 3.2だとダメみたいだ。
かなりカッコイイ・・・
>>940
「本物の」ブラウザを調べたほうが良いかも。
Array class>>with:...with:とか、Character class>>value:とか。毛色が違いますが、String>>asCharacterなんてのも。
リテラルの場合、通常はコンパイル時にオブジェクトがアロケートされるのに対して、メッセージ式は評価時なので注意。
943デフォルトの名無しさん:02/11/21 22:27
なんかすごいものをハケーンしてしまいますた。
O島さん、2chよんでるの?
http://www.is.titech.ac.jp/~ohshima/squeak/M17nCroquet.JPG
>>943
カコイイ!!
光臨キボン
>>942
修業します・・・。

st> $A value printNl!
65

とする代わりに、

st> (A foo) value printNl!

みたいなメソッドがあるのかなと思ったんですが、大抵は
こんなエラーが出ます。

stdin:94: Undefined variable A referenced

undefined variable だからメッセージを受け取れないと
言うのは分かります。
define するには SystemDictionary に登録する必要が
あるみたいですが(意味無いですが・・・)、

st> Smalltalk at: #A put: $A!

$B とか 数字とかは登録せずに使えるのは何ででしょう?
既に登録されてるからかな。
>>945
そうです。それは即値です。

でも、変数名と束縛される文字の表記を一致させたいという気持ちが、やっぱり
よく分かりませんです。グローバルにそんなもん切られたら困りまっせ。
とはいえ、もし本気でやりたいのなら、doesNotUnderstand:で引っ掛けたり、も
っと言えば、パーサから変えてしまえば、好きなようになります。

# 使ってる処理系くらいは書いて欲しい.…。GNUやん。
>>946
でも、変数名とリテラル定数の違いってのは
教育言語としてのSmalltalkにとっては大きな問題かもしれない。
948名無しさん@Meadow:02/11/22 12:56
Squeakにて

'Abone' at:1
=> $A

('Abone' at:1) class
=> Character

('Abone' at:1) asciiValue
=> 65

文字列クラスのインスタンス 'Abone' の一文字目 $A の
クラスは文字, アスキーコードは 65。

リテラル定数で初期に教える必要があるのは数字と文字列くらいでしょ。
配列は Array>>with:with:with:... で。
949デフォルトの名無しさん:02/11/22 16:49
Smalltalk、いいんだけど、
配列のインデクスが1から始まるのがチョトね。。。
CとかJavaで書いたプログラムを移植して遊びたいんだけど。
950デフォルトの名無しさん:02/11/22 16:50
>>943
詳細きぼん!
>>943
なんかこれ、凄いことしてるの?
Look at this!と書いてあるだけで、よくわからん。
>>946
いやぁ、別に絶対に一致させたいという訳ではなくて、何か違和感があっただけです。
最初はネタ振りのつもりで書き込んだんですが、もう少し良いネタ振りが出来るよう
研鑚する所存です。

>>948
あぁ、確かにそれで行けますね。
thanx!

>>951
font
>>949
1 足せばいいだけ Jan!
954951:02/11/22 22:29
なるほど。
良くみるとMSGothicを選択してるみたいね。
手前のウィンドウ、なんか日本語フォントだけ奥行き感が無い
みたいだけど、これは今後の課題なのかな?気のせい?
「子供だぞ」の部分のはちゃんとなってるっぽいけど。
>>949
> Smalltalk、いいんだけど、
> 配列のインデクスが1から始まるのがチョトね。。。

0から始まるほうが違和感あるなあ。オフセットじゃあるまいし。
>>954
他にも、オリジナルの英語版でもTrueTypeは専用モーフでリードオンリなのに、
なぜか編集できているところとか、そもそも、先日フライングリリースされたば
かりの次世代環境Croquet(クロッケー)で日本語が出ているところとか。
文字は全部アフィン変換かかっていると思います。
そろそろ次スレだと思いますが、
次スレのタイトル「Smalltalk総合スレ Part2」みたいのでいいですか?
あと3,40レス後ぐらいにスレ(立てれたら)立てますんで、
以下、テンプレートや関連リンク貼りつけお願いします。
(最近始めた厨なのであんまり知らないです)
----仮テンプレ----
前スレ
ΨΨΨ Smalltalk/ Squeak 教えろゴルァ ΨΨΨ
http://pc3.2ch.net/test/read.cgi/tech/998444037/
----仮テンプレ----
958デフォルトの名無しさん:02/11/25 23:33
! 日本語で読めるチュートリアル !

Smalltalk Idioms | SRA の青木さん VisualWorks |
  ttp://www.sra.co.jp/people/aoki/SmalltalkIdioms/index.htm
Happy Squeaking | OGIS の梅澤さん Squeak |
  ttp://www.ogis-ri.co.jp/otc/hiroba/technical/Squeak/squeak.html
CINCOM VisualWorks Tutorial VW7.0 & VW5i.4 | VisualWorks |
  ttp://www.cincom.co.jp/products/CincomSmalltalk/tutorials/index.htm
Smalltalk 演習 | 青山さん VisualWorks |
  ttp://www.msel.t.u-tokyo.ac.jp/class/old/smalltalk/2000/textbook.htm
Smalltalk Hichhikers Guide | Cake さん Squeak |
  ttp://www.ops.dti.ne.jp/~cake-smd/wiki/SmalltalkHichhikersGuide.html
Smalltalk/X についての文書 | Smalltalk/X |
  ttp://www.sel.cs.hiroshima-cu.ac.jp/~sato/stx/TOP.html
Smalltalk でフラクタルを描画しよう! | VisualWorks |
  ttp://www.max.hi-ho.ne.jp/kn-ichi/programming/
Smalltalk 入門コース | 中京大学 VisualWorks |
  ttp://yoshio.sccs.chukyo-u.ac.jp/courses/smalltalk-intro/
Smalltalk-80 の説明
  ttp://www.kimura.is.uec.ac.jp/faculties/int-mach-design/02/st80-lang.html
A Study of Smalltalk
  ttp://www2.odn.ne.jp/~cap97700/smalltalk/smalltalk.html
Squeakを知りたいっ! | 平井夏児さん Squeak |
  http://squeak.hp.infoseek.co.jp/1213SqHirai/
Squeak Tour | Squeak |
  ttp://hw001.gate01.com/~thoru/squeak/squeak.html

なんとはなしに直リンは避けました。言語の入門と環境の入門がごっちゃになってますが、
ご勘弁下さい。中途半端に Smalltalk 風だし・・・。他にもあったらお願いします。
959958:02/11/25 23:40
う、何か可読性低いな。スマソ。貼り付ける時は適当に整形して下さい。

! 関連スレ !
Smalltalk相談室
http://piza.2ch.net/tech/kako/982/982707274.html
チャンク風 (・∀・)イイ!!
961デフォルトの名無しさん:02/11/26 03:40
CoWebについて興味を持ちました。
日本語で運用しているCoWebサイトがあれば教えて下さい。
HP研究所、Alan Kay氏を起用
ttp://www.zdnet.co.jp/news/0211/26/xert_kay.html
963958:02/11/26 22:27
>>958 にこれも追加。

VisualWorks のページ 処理系: VisualWorks
  ttp://www.sra.co.jp/people/kondo/business/VW/

SRA うらやましい・・・。皆が Smalltalk で食っている訳では
ないでしょうけど。

>>962
iPAQ がらみで何かやってくれると面白そうだね。
SoftwareDesignにSqueak連載してるのね。
オブジェクト指向言語・環境という視点からSmalltalkに何か不満点はありませんか?
966デフォルトの名無しさん:02/11/27 11:24
>>965
名前空間がひとつしかないところ

なんでもかんでもオブジェクトスペースにつっこんてしまうところ
(OSがワンレベルストアになっていればいいのか?)

プラガブルといいつつ、入れたものを安全に外す(元に戻す)という仕組みが用意されているわけではないところ
Solaris 8 x86でソースからmakeして/opt/squeakにmake installしたところ

% /opt/squeak/bin/squeak
強制終了

と言われてしまいます。lddも駄目です。

% ldd /opt/squeak/bin/squeak
ldd: /opt/squeak/bin/squeak: 実行に失敗しました。シグナル 9 のため

ところがビルドしたカレントディレクトリから立ち上げようとすると
% ./squeak
Could not open the Squeak image file `squeak.image'.

There are three ways to open a Squeak image file. You can:
1. Put copies of the default image and changes files in this directory.
2. Put the name of the image file on the command line when you
run squeak (use the `-help' option for more information).
3. Set the environment variable SQUEAK_IMAGE to the name of the image
that you want to use by default.

For more information, type: `man squeak' (without the quote aracters).
何とか動きそうな雰囲気なんです。

どなたか同じような現象に合われた方、解決策を教えてください。
よろしくお願いします。
>>967
イメージファイルがないんじゃないの?
969デフォルトの名無しさん:02/12/02 18:50
>>961
CoWeb というのは "The Wiki Way" で言及されている SWiki の別名ですね。
Googleで SWiki & Squeak で日本のサイトを検索するとぽろぽろ出てきます。

個人的には sumim さんの "Squab Squeaker's Swiki" がおすすめです。
>>970
ちょっとスレ名がひどすぎないか?
>>970
VisualWorksとか他のSmalltalkはどーするの?
>>972 当然、排除でつ
それはテンプレの内容と矛盾するような
>>970
スレ立て荒らしと見なします。
Smalltalk総合の次スレ立てました。

Smalltalk(Squeak/VisualWorks/etc.)総合スレ
http://pc3.2ch.net/test/read.cgi/tech/1039017724/
>>976
今更遅いが、>>963 もテンプレに追加しておいてよ。

>>975
禿同
JavaスレやC++スレみたいに複数あってもイイんじゃ?
Pythonも複数スレで存在感出てきたし、ただでさえsqueakって
知名度低いんだから。
>>978
禿同(ハズカシイ

使ってもらう為には、まず知ってもらわなきゃイカンし、
間口は広い方が良い。
需要が無ければ本もだせん、っうかSqueak本出せ!

本スレは中上級とSmalltalkスレ
荒井スレはSqueak初心者とネタスレで、良いのでは?
hosyu
981たまちゃん:02/12/15 01:31
ドキドキ・・・
982たまちゃん:02/12/15 01:31
ドキドキ・・・
983たまちゃん:02/12/15 01:32
ドキドキ・・・
984たまちゃん:02/12/15 01:32
ドキドキ・・・ドキドキ・・・
985たまちゃん:02/12/15 01:33
ドキドキ・・・ドキドキ・・・ドキドキ・・・
986たまちゃん:02/12/15 01:33
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
987たまちゃん:02/12/15 01:33
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
988たまちゃん:02/12/15 01:33
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
989たまちゃん:02/12/15 01:33
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
990たまちゃん:02/12/15 01:34
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
991たまちゃん:02/12/15 01:34
かちゅうしゃとかじゃないから時間かかるな・・・
992たまちゃん:02/12/15 01:34
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
993たまちゃん:02/12/15 01:35
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
994たまちゃん:02/12/15 01:35
ドキドキ・・・ドキドキ・・・ドキドキ・・・
ドキドキ・・・
995たまちゃん:02/12/15 01:35
ドキドキ・・・ドキドキ・・・ドキドキ・・・
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
996たまちゃん:02/12/15 01:35
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・
997たまちゃん:02/12/15 01:35
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・
ドキドキ・・・ドキドキ・・・ドキドキ・・・ドキドキ・・・・・
998たまちゃん:02/12/15 01:36
ドキドキ・・・ドキドキ・・・
999たまちゃん:02/12/15 01:36
ドキドキ・・・ドキドキ・・・
1000たまちゃん:02/12/15 01:36
やった!!!
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。