Smalltalk総合 Squeak Pharo

2013/02/16(土) 14:10:29.12
Squeak
http://www.squeak.org/
Pharo
http://www.pharo-project.org/home

商用
Cincom VisualWorks
http://smalltalk.cincom.jp/main/products/visualworks/
2015/02/14(土) 10:34:04.63ID:0dco6ark
(…補完も名前変更も一発なのにこの人は一体何を言っているのだろう…)
2015/02/14(土) 10:34:59.29ID:0dco6ark
(…そもそもこの人が言うSmalltalkのIDEとは何を指しているのだろう…)
2015/02/14(土) 10:38:06.59ID:KJLqYxlY
無関係な候補が補完されたり、無関係な名前まで変更されてしまうゴミじゃん
2015/02/14(土) 10:54:34.66ID:+jQ5RdmI
粘着アンチ君、まだいたのか。
他言語で幸せになれなかったのかな…。かわいそうに。
2015/02/14(土) 11:01:59.33ID:+jQ5RdmI
>>244
この人は補完の精度のことを言っているんですよ。
動的型言語である以上、どうやったって精度はだせない。
よって、補完がないとコード書けないユーザーにはウンコで使えない、と。
2015/02/14(土) 11:34:10.14ID:Z9ZmRxLI
>>241
> 他言語では同様のものを(Smalltalkほどには)簡単には作りにくい
Smalltalkは最初からGUIのことまで考えて言語が設計されてるからかな

>>242
まだ一般人が使えるようにはなってないのかな

>>245
ちなみにおれが言ってるほうのIDEはSqueakね
2015/02/14(土) 12:11:34.81ID:Z9ZmRxLI
まあ静的型付けほどの精度はないし
多機能さとか総合力でスコアつけたら
VSとかメジャーなIDEのほうが上だろうよ

でも主観的な使い心地はすごい良く感じる
純粋OOPLとか動的とかイメージベースとか
いろんな仕様がかみ合ってるから使いやすい

逆にVSっつーかC++は
かみ合ってないから疲れる

そもそもIDEよりエディタで気軽に書くほうが
好きだったりするんだけど
Smalltalkに関してはIDEじゃないと魅力半減
2015/02/14(土) 12:46:41.71ID:+jQ5RdmI
>>249
> Smalltalkは最初からGUIのことまで考えて言語が設計されてるからか

たしかに GUI の扱いやすいさもひとつにありそうですが、個人的にはそれに加えて
Smalltalk(というかアラン・ケイが)重要視して、他言語では良くない余計なものとされる
オブジェクトの全能性(というと語弊があるので「訊けば答えてくれる感」?)も重要だと思っています。

たとえば、ブラウザ機能を実現するのに必要なクラスに定義されたメソッドの一覧や
メソッドのソースは、それぞれクラスやメソッド自身に尋ねればこんなふうにして
簡単に得られます。(後者は Squeak の場合)

Integer selectors
(Integer >> #factorial) getSource

リフレクションの API が充実しているだけと言われればそれまでですが、
(先だってのコードの短さともからめて)そういう切り口ではない、環境内のオブジェクト間の連携を
しやすくする工夫の結果としての IDE の使い勝手であるような気がします。
2015/02/14(土) 15:51:07.10ID:0dco6ark
「無関係」の定義もなく「変更されてしまうじゃん」とか断言する人って、技術的な議論には全く向かないよね。
2015/02/14(土) 17:50:52.21ID:pFrYpbo4
彼はSmalltalkをコケにすることができれば満足で
そういう次元の議論は1ミリも望んでいないでしょう。

それはさておき本気を出せばSmalltalkでも
補完くらいなら、そこそこの精度は出せるでしょうね。
2015/02/14(土) 19:17:17.93ID:KJLqYxlY
明日から本気出すw
2015/02/14(土) 19:18:06.07ID:Hs1Wk7so
Smalltalkを覚えたいのだが本業のドカタ仕事に忙殺されてなかなか出来ぬ。
人生は短すぎる。

で、Smalltalkerさん達の本業は何よ?
2015/02/14(土) 19:27:03.92ID:RVo+uu2J
SqueakのCトランスレータが結構使える
2015/02/14(土) 20:45:36.71ID:+jQ5RdmI
>>253
ID:KJLqYxlY の心の平安のために精度は今のままの方がよさそう。w
2015/02/14(土) 20:58:37.42ID:lMIjbsUk
>>255
C with Smalltalk
2015/02/14(土) 21:01:50.07ID:0dco6ark
>>255
受託開発サラリーマン
2015/02/14(土) 21:20:15.48ID:Z9ZmRxLI
>>251
> オブジェクトの全能性
たしかにC++のクラスが抽象データ型の延長なのに対して
Smalltalkではより能動性とか主体性を持たせようとしてますね

C++だとメモリ管理とかとあわせてクラスの管理をいろいろ
プログラマが抱え込まないといけないからストレスになる

Smalltalkはブラウザ関係もふくめて
メッセージングに任せられる部分が多いので
ストレスが軽減されていると感じます

C++(とVS)は多機能で高性能なんだけど
それだけプログラマの負担も大きくて
Smalltalkはそれよりさらに高性能というよりかは
使用者が使いやすい方向を目指してる感じ
2015/02/15(日) 08:22:59.86ID:n2M7TY52
>>259
土方のお仲間じゃないですか。
Smalltalkの受託やってるの?
2015/02/15(日) 13:19:29.87ID:Qwk5nQv8
>>255
ビル管理業
263デフォルトの名無しさん
垢版 |
2015/02/15(日) 15:56:50.97ID:6aDKSPw5
>>255
マイケルジャクソンの物真似
2015/02/16(月) 01:03:07.94ID:HauqtKo6
>>238
GNU Smalltalkだと定数の演算とかは糞真面目に計算せずに、
翻訳時にすませてるっぽいよ。
この辺も最適化の過程でMessage送信が必要かどうか判断してるんじゃない?

>>239
原則Message送信であってif文の構文糖じゃないからね。
最適化はあくまでもオマケ。
最適化し辛い構文があってもMessage送信の原則は守る必要があるんでしょ。
2015/02/16(月) 01:10:51.90ID:HauqtKo6
>>251
Squeak以外は使わないの?
VisualWorksとかPharoとかは、補完するSelectorを結構絞り込んでくれるから便利よ。
VisualWorksはCincom本社の海外サイトで個人情報入れなきゃなんないのが面倒だけど。
2015/02/16(月) 03:14:31.37ID:5Z6+mH61
マイケル・ジャクソンの著書
http://www.kyoritsu-pub.co.jp/bookdetail/9784320025004

その息子の著書
http://shop.ohmsha.co.jp/shop/shopbrand.html?search=978-4-274-06858-4
2015/02/16(月) 11:16:01.67ID:XP4TAyIw
>>264
> GNU Smalltalkだと定数の演算とかは糞真面目に計算せずに、
> 翻訳時にすませてるっぽいよ。

それは分かりましたが、それを踏まえてもなお

>> 237
> 自作ClassのObjectに対してはMessage送信省略しないお陰で、
> 数値計算に自作ClassのObjectをツッコむことができるんだよね。

が出てきた理由がまだよくわかりません。

なぜあえてこの例が必要だったのか(Squeak の話をしているときになぜあえて GNU Smalltalk か?
非リテラルオブジェクトではなくなぜあえて自作クラスなのか? さらになぜあえて nil を継承したのか?)、
それぞれによって、どんな理解が進むのかについて少々かみ砕いての解説をお願いできますか?
2015/02/17(火) 13:36:20.64ID:+V2W9A9L
64bit VMがlinux版しかないのはどういうわけ
2015/02/17(火) 22:00:01.91ID:qlRtFPhT
>>267

1. SqueakではなくGNU Smalltalkを例に出した理由
 Squeak限定じゃなくSmalltalk一般の話かと思いまして
 処理系について意識してませんでした。すみません。

2. 数値計算の最適化を上げた理由
 Message送信が最適化で省略されない場合の利点を
 説明するつもりで書きました。
 #ifTrue:ifFalse:で有用な例を示さなかったのは
 すぐ有用な用途が浮かばなかったからです。

3. なぜ既存のClassではなく自作Classを例に使ったか
 最適化が適用されない既存のClassが
 思いつかなかったからです。
 SqueakやPharo基準で考えれば、
 自作じゃなくてもCollection系で良かったですね。
 レスを書いた時は思いつきませんでした。

4. なぜnilを継承したか
 Objectを継承すると、ObjectがMethodを実装しているMessageを
 #doesNotUnderstand:で委譲できなくなるためです。
 SqueakではProtoObjectを使いますが、
 GNU SmalltalkやVisualWorksではnilを使います。

5. 何について理解が深まるか
 最適化はオマケなので、最適化されるMessageだからと言って
 必ず最適化される訳ではないし、
 最適化によって自作ClassのObjectを渡すと
 動かなかったりするわけではない
 という事が理解いただければと考えています。
 
2015/02/17(火) 23:17:58.58ID:1fkLZx/i
>>269
なるほど、よくわかりました。
丁寧な説明をありがとうございます。

1. の早合点はさておき、
はじめから 5. のような簡易な説明を添えていただけていたなら
私ども読み手も視野を広げやすくなるので、今後もご助言を
いただけるのでしたら、ご一考いただければさいわいです。
2015/02/17(火) 23:46:16.16ID:28IwrLId
Smalltalkの新しい書籍
出る予定ないのかな
2015/02/17(火) 23:53:37.06ID:WE2OvojJ
一般人が触れる実装がSqueakしかないしな…
2015/02/18(水) 00:28:25.04ID:UZdA10Ut
fileURLは使ったことあるけどまさかのhttpもstreamで取れるとは思わなかった
読み込めなかった時のSignalの扱いはわからんがちょっと考えてみるか・・

| aURL aStream aList aLine |

aURL := URL fromString:'http://anago.2ch.net/moeplus/'.
aStream := aURL readStream lineEndAuto. "withEncoding:#shiftjisは通らない"
aList := OrderedCollection new.

[ aStream atEnd] whileFalse:[ aLine := aStream upTo:(Character cr ).
aList add:( aLine asByteArray asStringEncoding:#shiftjis ) ].

aList inspect.
2015/02/18(水) 01:47:28.06ID:QTgMdBtY
GNU SmalltalkにSmalltalkのVM上で
Javaを動かすPackage、その名もJavaがあった。
.jarを読み込んでくれず.classを取り出さないとダメだったり、
Java7には対応してなかったりと微妙な出来だけど、
JavaのClassが完全にSmalltalkのClassとして取り込まれてる所が面白い。
他にも誰が使ったことある人いる?
2015/02/18(水) 05:10:09.93ID:IoP2n0dH
>>270
端からは、あなたがもうちょっと謙虚に聞けばよかった、と見えますよ。
2015/02/18(水) 09:22:33.83ID:wdCl3CCW
>>264
興味があって調べてみたのですが、GNU Smalltalk で定数同士演算(たとえば + 演算)で
メッセージ送信が省略されているのかが ideone.com の処理系では確認できませんでした。
「翻訳時」を「コンパイル時」、つまり「バイトコード変換時」と読み取ったのですが
バイトコードレベルで省略されているという話ではないのでしょうか?
メッセージ送信が省略されていることの確認の方法を教えていただければさいわいです。

UndefinedObject extend [
 plusLit [^3+4]
 plusNonLit [^3 + OrderedCollection new]
]

(UndefinedObject >> #plusLit) inspect printNl
"=>
[1] source code line number 2
[3] push 3
[5] push 4
send 1 args message #+
[7] return stack top "

(UndefinedObject >> #plusNonLit) inspect printNl
"=>
[1] source code line number 3
[3] push 3
[5] push Global Variable {Smalltalk.OrderedCollection}
[7] send 0 args message #new
[9] send 1 args message #+
[11] return stack top "

http://ideone.com/zWMggc
2015/02/18(水) 12:10:47.30ID:IoP2n0dH
>>276
For some pairs of receiver classes and special selectors, the interpreter never looks up the method in the class; instead it swiftly executes the same code which is tied to a particular primitive.
https://www.gnu.org/software/smalltalk/manual/html_node/Performance.html
2015/02/18(水) 12:57:09.98ID:wdCl3CCW
>>277
ありがとうございます。

>>264 の「翻訳時にすませてる」を、3+4 を 7 にする!? と勘違いしていました。
#+ などは特殊なバイトコードを使用し、そうした特殊なバイトコードでは引数の組み合わせ次第で
レシーバー(この場合 3)へのメッセージ送信は行なわない、ということですね。

別件ですが、メソッドにコードされたプリミティブが #perfom: 等でコールされたときのためとは
知りませんでした。

そうすると、3 + 4 時は VM 内の + 関数で処理され、
3 + OrderedCollection new 時は + 〜 (バイトコード的には + )が 3 に送られて
そこでプリミティブ記述により改めて VM 内の + 関数がコールされ
それが失敗してフォールバックコード(たとえば ^super + aNumber)が実行される、
という理解で合っていますか?
2015/02/18(水) 18:55:49.75ID:wdCl3CCW
>>278
> 3 + 4 時は…

自己レスです。(Squeak で、かつ旧 VM でですが)どうなっているか調べてみたら、
VM 内でプリミティブとしてコールされる + 関数(Squeak の場合 primitiveAdd )と
バイトコード実行時にコールされる + 関数(同、bytecodePrimAdd )は別物なんですね。

通常は bytecodePrimAdd がコールされ、整数/整数とかでなければメッセージを送信、
#perform: などで呼んだ場合は primitiveAdd がコールされ、それが失敗すると
プリミティブに続いて記述してあるフォールバックコードが実行されるというカラクリでした。
2015/02/19(木) 11:17:57.25ID:H2Raaanq
似たようなことに興味を持つ人もいるかもしれないので参考まで。

http://askoh.com/mwiki/images/b/be/InterpreterSimulator.zip

>>279 を調べるときに使った Squeak の処理系です。
インタープリターシミュレーターが同梱されているので解凍、Squeak 3.9 仮想イメージ向けの VM を
用意して起動(Simulator.image の方)後、ワークスペースの式を評価することで動かせてお手軽です。

http://vm-dev.squeakfoundation.narkive.com/vxckeGXt/simulate-3-4-with-interpretersimulator

にもありますが、bytecodePrimAdd ではなく primitiveAdd のほうに self halt を仕掛けるのが
ミソのようです。(bytecodePrimAdd は当然ですがしょっちゅう呼ばれるので…)
2015/03/05(木) 15:38:55.74ID:8pGleBPt
お題スレの人お疲れ様です
2015/03/21(土) 21:33:43.04ID:UWDIX5zE
>>184
>SqueakだとWindowsの.exe作る方法もあったと思うけど
ちょっと前の話だけど
これをずっと探してて見つけられなかった

Visual Worksならできるっていうのは分かったけど
SqueakでWindowsの実行ファイル作る方法は見つけられなかった

いや実際にSqueakでexeを吐いてるけどって人いる?
Think different? by 2ch.net/bbspink.com
283デフォルトの名無しさん
垢版 |
2015/03/21(土) 22:21:51.58ID:Xtizjndc
今Windowsの環境ないから確認できないけど
http://d.hatena.ne.jp/propella/20050925/p1
こことか、リンクのとことか。やったのだいぶ前だけど。
2015/03/21(土) 22:32:55.41ID:UWDIX5zE
>>283
できた! サンクス!

エントリ自体は前に見たことあるけど
ウゴモーフとか興味なかったから
流し読みしてしまって見落としてた
2015/03/21(土) 23:32:01.16ID:UWDIX5zE
exe化はできたけど
もうひとつやりたいことがあるんだ

リリースしたアプリをユーザがいじっておかしくしないように
ハローとか開発環境の部分を隠蔽することってできる?
286283=184
垢版 |
2015/03/22(日) 01:37:55.28ID:VhQjMmyl
http://wiki.squeak.org/squeak/518
ここのcs.gzをDLして、解凍してできたcsをinstall。
Workspaceで
Preferences disableProgrammerFacilities
をdo it したら、警告ウィンドウ出るのでYes、保存する新しいimage名を指定。
保存したimageを起動すると、望みの動作になってるはず。
2015/03/22(日) 02:18:58.81ID:G0/vVT9E
>>286
おおすばらしい! ありがとう!

まだメニューが残ってたりするけど
これでだいぶ普通のアプリっぽくなった


できないと勝手に思いこんでたけど
同じところでつまづいた人多そう

Smalltalkそのものは大変すばらしいので
日本語情報さえあればもっと広まるのに
2015/03/22(日) 02:57:43.39ID:G0/vVT9E
ああ試してたらメニューバーも消せたわ
ワールドメニューがちょっと残るけど
ほとんど普通のアプリと変わらない
289286
垢版 |
2015/03/22(日) 07:07:35.62ID:VhQjMmyl
>288
>ワールドメニューがちょっと残るけど
中ボタンで出るyellowButtonMenuのことかなぁ
PreferenceのSearch preferences forでgeneralizedYellowButtonMenuを検索して表示して
enableをオフにしたら出なくなるけど
2015/03/22(日) 08:47:01.02ID:G0/vVT9E
>>289
できた! 何度も世話を焼かせてしまってすまない

これでタイトルバーにねずみのアイコンがある以外は
普通のWinアプリと同じ何もないところまで来たんだけど……

だけどメニューバーも黄ボタンメニューも
ほかのワークスペースとかもなくした状態で
どうやってイメージ保存してexe書き出しすればいいんだろう?

なんか一休さんのびょうぶから虎を追い出せ
みたいなとんち状態になってきた
291286
垢版 |
2015/03/22(日) 11:20:56.62ID:VhQjMmyl
>>290
>>これでタイトルバーにねずみのアイコンがある以外は
>>普通のWinアプリと同じ何もないところまで来たんだけど……
Preferenceの Show world main docking bar のenable のオフでバーごと非表示にならない?
Windows持ってないから状態わからないけど

最後のとんち状態は そうだね...解決策はありそうだけど
2015/03/22(日) 18:17:51.03ID:G0/vVT9E
>>291
>オフでバーごと非表示にならない?
ねずみアイコンが2つあって
メニューバーのほうはまるごと消せるけど
タイトルバーのほうは残る

それでデバッグ項目みたいのが残る
Winしか持ってないから
他OSとの違いは分からないが

でもライセンス的にMITだから
Squeakを使ってること自体は
どこかで教えないといけないので
これでもいいよ
293183,282
垢版 |
2015/03/22(日) 18:21:50.40ID:G0/vVT9E
>>291
exe書き出しのとんちのほうは
アイディアが色々あるので試してみる

超初心者だから時間かかるだろうけど
他言語の経験はあるから
少しずつ調べながらやってみる

最後は自分で何とかしたいと思う
長々と付き合わせてしまって申し訳なかった
294286
垢版 |
2015/03/22(日) 19:25:44.81ID:VhQjMmyl
>>293
こちらこそ久々にいろいろやってみて、いろんな機能を知って面白かった
2015/03/23(月) 05:44:59.29ID:9+S6Qh9p
>>256
>SqueakのCトランスレータが結構使える
一行レスだから見逃してしまってたけど
今スレ見返してたらすごい面白そう

VMの埋め込みとかで触れないのかと思ってた
普通にワークスペースから使えるものなの?

クラス名とか検索するための単語なにか教えて
2015/03/23(月) 22:16:08.94ID:9+S6Qh9p
>>295
レスが付かないから自分でザッと調べてみたけど

>>256
で言うCトランスレータというのは
Slangで書くVMプラグイン機構のことかな?
(それとも別の何かがあるなら誰か教えて欲しい)

プラグインはしばしば他言語でそうするように
DLLみたいなC/C++で書くものという先入観があったから
逆方向でトランスレータとしても使えるのは面白いと思った

ただCのソース単体で取り出して
他でコンパイルできるのかとか
まだ詳しく調べてないけど
2015/03/24(火) 20:05:29.21ID:cN0vYmrU
>>296
現実的にはslangは単純な整数とか整数の配列の計算くらいにしか使えない
行列とかベクトルの計算とか、その程度が限界

プラグインは普通にcで書くという先入観で正しいと思う
2015/03/24(火) 21:14:29.75ID:ZdrU8eOQ
>>297
あーそうなんだ、thx

Cと自由に行き来できたら便利だと思ったけど
計算で速度稼ぐとか、実用に耐える範囲は限定的か

まあ制約が多くても
使えるだけでありがたいけど
2015/07/02(木) 08:23:13.10ID:37HIrXjo
下記サイトにオブジェクトの定義が書かれています。

オブジェクト指向プログラミングとは何か?
http://eed3si9n.com/node/145

オブジェクトとは何か?

他のオブジェクトへの参照を保持し、事前にリストアップされたメッセージを受信することができ、
他のオブジェクトや自分自身にメッセージを送信することができるアトムで、他には何もしない。
メッセージは名前とオブジェクトへの参照のリストから構成される。

アトムの意味がよくわからないのですが、すみませんがご教示お願いします。
2015/07/02(木) 11:31:18.87ID:AO3svzPO
>>299
メッセージを事前にリストアップしないといけないとか、オブジェクトがアトムであるとかは
この人の思い込みや勝手な言い換えなので原文(をもう少しマシに訳したサイト)を
当たられることをお薦めします。

http://d.hatena.ne.jp/katzchang/20080807/p2

私が考えるOOPはメッセージング、状態処理のローカルでの保有・保護・隠蔽、
そして全ての物に対する強力な遅延束縛、これだけだ。これはSmalltalkとLISP
だけが実現できている。他のシステムでも可能かもしれないが、私は知らない。
2015/07/02(木) 14:19:08.77ID:gyn5Kcjz
>>299
たぶんアトムはLispの用語から取ってるんじゃないかな?

でも定義してる中で(一般には)未知の新用語を出すって
筋の良い定義じゃないよね

>>300の原文でも言ってないし

事前にリストアップってのも静的型付けの発想で
遅延束縛を重視するSmalltalkの発想から離れてる

アランケイのアイディアと混ぜないで
自分で一から言い直したほうが良い気はする
2015/07/03(金) 08:40:10.68ID:W3KOnD9Z
>>300-301
レス、ありがとうございます。

アラン・ケイによる正確なオブジェクト定義の提示ありがとうございます。
Lispのアトムを検索して、これ以上分解できない基本データだと理解しました。
2015/10/02(金) 11:30:24.22ID:njwjZuA3
>>302
そこで言ってるアトムは分解出来る機能の集合体なのだから
これ以上分解できない基本データではないな
単に個体とかでいいんじゃね
2015/10/02(金) 19:47:13.01ID:ADth776D
ぜんぜん関係ないけどおれアラン・ケイが来日したときサインもらった
いいだろう
2015/10/02(金) 22:04:37.04ID:q16UoAhR
ひさしぶりにスレが動いたから
オレもついでに言うけど

Smalltalkやってる人がもともと少ないんだけど
とくに日本でPharoやってる人ぜんぜんいないな

言語(処理系)は良さそうなんだけど
日本語情報が少なすぎてどうしようもない
306デフォルトの名無しさん
垢版 |
2016/04/10(日) 02:03:06.43ID:WTOWAaLY
age
2016/04/12(火) 23:20:09.84ID:2ZLQQVkl
プログラミング言語の相関図
http://exploringdata.github.io/vis/programming-languages-influence-network/
308デフォルトの名無しさん
垢版 |
2016/04/20(水) 16:32:04.67ID:a8lJ1Bzf
>>240
Code Browser じゃあダメなん?
ttp://tibleiz.net/code-browser/
309デフォルトの名無しさん
垢版 |
2016/04/20(水) 18:21:54.24ID:UfNx2Znx
>>308
おお〜サンクス! こういうのがあるんだ
代替になるか分からないけど触ってみる
2016/08/18(木) 11:53:48.53ID:E7RCG0CR
スタートアップ界の異端児!産業機器 x IT x SmalltalkのSORABITO株式会社
…人材採用のプロ・高野秀敏氏が厳選「いま最も旬なベンチャー」
https://news.thepedia.co/article/1068/

日本でクックパッドがRubyを広めたように、日本も海外も含めて「SmalltalkといえばSORABITO」となるとおもしろい
311デフォルトの名無しさん
垢版 |
2016/08/19(金) 08:00:44.26ID:aUETciWG
>>310
>Smalltalkの場合は最も覚えることが少ない言語
言語仕様だけならそうだけど
ライブラリまで含めたら
最も覚えることが多い言語になりそうだけどなー

まあプロトタイプはSmalltalkで
ライブラリ必要な部分はRuby
って分担ならわりと妥当だと思うけど
2016/08/19(金) 20:16:08.06ID:Eduih45+
Smalltalk の代わりに Ruby とか、よう使わんわ
313デフォルトの名無しさん
垢版 |
2016/08/21(日) 08:33:13.32ID:itlBfDe6
Sakuraエディタでコード書いてPharoのファイルブラウザから読み込ませてたんだけど、直接書けるって教えてくれよ
2016/08/21(日) 10:15:04.20ID:ggpv6L0L
>>313
ああ、そうですよね。すみません。
とりあえず、Pharo by Example でも読んで考え方に慣れてください。
https://ci.inria.fr/pharo-contribution/view/Books/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/UpdatedPharoByExample.pdf

英語がちょっと苦手という向きには古いPharo1.1向けですが有志による日本語版もあります。
http://www.smalltalk-users.jp/Home/docs

対応する処理系はこちらから入手可能です。
http://pharobyexample.org/image/PBE-OneClick-1.1.app.zip

展開するだけでインストール可能なはずです(pharo.exeで起動)。

でも慣れたエディタがあるなら、まずはそこからコピペというのもそう悪くないやり方だと個人的には思います。
Smalltalkの組み込みのエディタ機能はおいおい学んで、気に入ればカスタマイズも含めて使えばよいので。
2016/08/21(日) 15:45:59.81ID:qQjUy1hV
Smalltalk使うなら
ワークスペース使うのが一番
2016/08/25(木) 22:20:45.53ID:UnrcY5fF
Happy birthday Squeak! It has been 20 years! Squeak 5.1 is now available for download.
http://squeak.org/
317デフォルトの名無しさん
垢版 |
2016/08/28(日) 02:31:34.26ID:PB1bnZje
MacでSqueak5.1の右上にある検索使うとvmが落ちてしまう
318デフォルトの名無しさん
垢版 |
2016/08/28(日) 20:33:20.07ID:zcu6Rkdc
Squeak5.1、日本語フォントの設定ができん!
2016/08/28(日) 21:59:54.11ID:wqvuI2DW
>>318
Apps → Font Importer → 日本語フォントを右クリック → Link Font → Close
これでリンクしたフォントが appearance... → system fonts... 等のフォント選択の一覧に現われない?
2016/09/01(木) 02:31:32.06ID:nKkrd38l
>>316
久しぶりに公式を見に行ったらそれが出てた
321318
垢版 |
2016/09/01(木) 17:17:29.87ID:u9gr6W2c
>>320
MacでOsakaフォントをLinkしようとしたら、
クリックした瞬間にいくつかMorphが壊れて
Emergency Evaluatorが出てきたよ…
2016/09/02(金) 07:00:43.29ID:ifMmGuDP
macOS版VMは安定していないんですかね。
2016/09/03(土) 14:56:19.41ID:/kP4iCQF
自由自在っていう本が良いみたいだけど、最新のSqueakで勉強できる?
2016/09/03(土) 14:57:33.27ID:/kP4iCQF
舌足らずか、自由自在のPDF落としたんですが、Squeak最新のバージョンで
本の内容を同じように試すことは出来ますか?だいぶ違ってます?
2016/09/03(土) 15:56:21.00ID:vCC0oq7q
本のバージョンに合わせた方が学習しやすい
2016/09/03(土) 16:32:01.88ID:FCCtMljZ
どもです、そうします
2016/09/03(土) 18:32:59.01ID:87bD/C1F
Smalltalkは変わったツールや習慣、考え方がよく出てくるのですが
無理に通常の言語での習慣や考え方に翻訳して咀嚼しようとすると
(やればできなくもないですが、いろいろ無理を生じますし)
学習コストが無駄にかかるわりに、誤った結論に達しがちなので
疑問なことは自力解決にこだわらずにどんどん訊いてください。
2016/09/12(月) 23:21:39.54ID:ff9i3q/K
ContrAltoJS Xerox Alto Emulator
http://www.loomcom.com/jsalto/

Running Smalltalk 76

To run Smalltalk 76, boot the xmsmall.dsk image, and type:
>resume xmsmall.boot
2016/09/18(日) 11:22:38.12ID:LHERV0LA
第92回Smalltalk勉強会
http://www.smalltalk-users.jp/Home/gao-zhi/dai92kaismalltalkbenkyoukai

9月のSmalltalk勉強会の日程が決まりました。下記の要領で行います。

日時: 2016/9/23(金) 19:00-21:00 (2時間程度)

場所: SORABITO株式会社 東京都中央区日本橋茅場町1丁目9番2号 第一稲村ビル8階

今回は8/22-26にかけてチェコで行われたESUG 2016の報告会です。

ViennaTalkを引き連れ日本から参加されたSRAの小田(@tomooda)さんによるお話です。

Smalltalkのカンファレンスの中では最も歴史があり、かつ盛り上がるのがESUGです。
最新のSmalltalk動向に触れる良い機会でしょう。
2016/09/18(日) 15:09:01.20ID:yxvzYeJB
動画うpよろ
2016/09/21(水) 13:10:05.22ID:GpzxBfpM
macOS sierraにしたらPharoもSqueakも動かなくなった
2016/09/21(水) 14:22:11.95ID:NRVuru4H
Gatekeeper関連の仕様変更に引っかかっているだけなのではなく?
http://applech2.com/archives/macos-10-12-sierra-upgrade-check.html
333デフォルトの名無しさん
垢版 |
2016/09/21(水) 14:38:41.20ID:7yARBfoR
Squeak/Pharo系のアプリは全滅か?
2016/09/21(水) 20:37:30.04ID:GpzxBfpM
>>332
それじゃないな。クリーンインストールしたほうがいいのかも。画面真っ白で何もできない
2016/09/23(金) 08:36:51.44ID:cQNYWAur
Sierraクリーンインストールしたけどダメだった。
2016/09/23(金) 18:09:02.45ID:cQNYWAur
64bitのイメージと最新vmでならsierraで動いた
32bitのやつは動いたけどすぐ落ちて使えなかった
2016/09/23(金) 23:41:17.75ID:4cfFYHAy
macOS Sierraでうごかないやつこれためしてみて
vmの場所
https://bintray.com/estebanlm/pharo-vm/build#files
imageとchangeファイルの場所
http://files.pharo.org/image/50/
ここから64bit用の最新のやつ落してみて
2016/10/07(金) 01:18:57.84ID:7NDRQwS7
メタクリックできなくて詰んだ
2016/10/28(金) 09:52:42.42ID:zLimfAXR
Smalltalk Advent Calendar 2016
http://qiita.com/advent-calendar/2016/smalltalk
2016/10/28(金) 10:05:37.68ID:zLimfAXR
Simulating a Xerox Alto with the ContrAlto simulator: games and Smalltalk
http://www.righto.com/2016/10/simulating-xerox-alto-with-contralto.html

To start up Smalltalk,
download st80.dsk. Load the disk image into ContrAlto, reset, and then run "resume small.boot".
(A second Smalltalk disk is xmsmall.zip; "resume xmsmall.boot" starts Smalltalk from this disk.)

https://github.com/livingcomputermuseum/ContrAlto/tree/master/Contralto
ContrAlto will run on any Windows PC running Windows Vista or later, with version
4.5.3 or later of the .NET Framework installed.
2016/12/07(水) 19:30:36.23ID:dQ98CKcf
Smalltalk 7つの神話 - Qiita
http://qiita.com/tomooda/items/0f57a3f8fde98356c91a
2016/12/16(金) 05:01:57.48ID:wVYXqBDT
2017年からSmalltalkに(再)挑戦したい人へ
http://phaendal.hatenablog.com/entry/2016/12/14/230422
2017/02/19(日) 22:19:38.28ID:oHvSLa7Q
VisualWorksってダウンロードできなくなって
通信取り寄せしかないの?
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況