Smalltalk総合 Squeak Pharo
>>434
ctrl+cでコピーできました!ありがとうございます
https://squeak.js.org/demo/simple.html
↑の方でもctrl+cでいけますね。
私は力技でvw.jsの
primitiveClipboardText: function(argCount) {
の中で
this.display.clipboardString
から値を取り出すことを考えてましたが、
もうその必要がなくなってよかったです。
あと、この経緯でついでに<primitive: 141>まわりの実装が勉強になった。 よかったです。Smalltalk世界の散策を楽しんでください。 昔のsqueakにはメニューにdebug itがなかったんですね
仕方がないので、例えばBrowser openBrowerの処理を追いかけたいときは、ワークスペースを開いて
self halt.
Browser openBrowser.
の2行を書いて、それをマウスで選択してdo itで実行させてるんですが、
当時の人たちはこういうときはどうやってデバッガを起動してたんでしょう? Smalltalk面白いと思うんだが、何で流行らないんだろ? >>437
halt は何にでも送れるので Browser halt; openBrowser でいけます
古いっていうだけでもう相手にされないか、そこを突破できても
実際に古臭い点も多々あるんで本当におもしろいところまで行き着けないんでしょうね
あと今の人は学ぶことが多すぎて、余計な事を学ぶ気持ちや時間の余裕が持てないのが大きそう Smalltalk、プチコンくらい流行らせてみたいね >>439
「halt;」を書き足すだけでいいので便利ですね。
そのアイデアいただきます! scratchって、Small talkクローン? Scratch は、古いバージョン(バージョン 1.4 まで)が
Smalltalk(MIT版 Squeak)で実装されたというだけで
Smalltalk とは別の独立した言語処理系です。 >>443
なるほど、ありがとう。
LOGO、Smalltalk、scratchを触ってみて言語のバックグラウンドが似てるように見えたのはそういう事だと腑に落ちました。
ブロックを自分で定義出来ると色々遊べそう(センサーのエミュレーションとか)。
まだまだ勉強中です。 >>444
Scratch の開発リーダー、ミッチェル・レズニックはシーモア・パパートの弟子で
LOGOの並列化版 StarLogo の開発者でもあるので、Scratch は Smalltalk よりは LOGO の影響の方が色濃いのかもしれません。 >>438
キラーアプリがないから
ドキュメントが少ないから
独自仕様に従うのが大変だから 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
2EWEB >>448
たとえばイメージベース(EXE出力しない)とかね イメージベースのメリットを損なわずに迎合するにはどうしたらいいのだろうね 以前質問させていただいたhttps://squeak.js.org/demo/simple.htmlで学習中の者です。
現在、どのメソッド内のコードがマウスカーソルの表示処理をしているのか探してますが、うまく見つけられません。
squeak2.2ベースでMorphicではなくMVCで恐縮ですが、どこを見ればいいかご存知でしたら教えてください。
調べたこと&わかったこと。
Cursor normal displayでマウスカーソルの単発表示ができることを発見。
Cursor normal halt displayをデバッガで追っていき、表示直前に以下のメソッドが実行されることを発見。
DisplayScreen>>copyBits:from:at:clippingBox:rule:fillColor:map:
上記メソッド内の冒頭に以下のデバッグコードを挿入。
sf = Cursor normal ifTrue: [self halt].
Cursor normal displayを再度doitしてhaltで止まることを確認。
この状態でウインドウのないDisplayScreen上でマウスを動かしてみる。
が、haltで止まらないことからこのメソッドは表示処理に使われていないと予想。
他は何を調べればいいでしょう? ハードウェアカーソルなんじゃないの?よく知らんけど。 >>454
カーソルの表示処理を知りたいのであれば、Cursor nomal halt; show を追っかけた方がいいですね。
display はご自身でお調べになった結果からも分かるように
レシーバーである画像オブジェクト(カーソルもこれに属します)を画面左上(0@0)に表示するだけの処理になります。
たとえば From fromUser display とすると、選択した矩形領域を切り取って左上に表示するコードになります。
あと、showの方もおっかけると分かりますが、最後はプリミティブ(VMの関数呼び出し)に行き当たるので
どんな処理をしているかは該当するVM内関数のコードを見てあげる必要があります。 >>456,457
いいヒントになりました。感謝!
現時点での自分の理解
Cursor>>beCursorが<primitive: 101>を呼び出す。
vm.jsのprimitiveBeCursorがカーソル形状データをcursorCanvasにセットする。
squeak.jsのupdateMousePosがcursorCanvasの座標をマウス移動に応じて変更する。
というわけで、SqueakJSの場合は、マウスカーソル専用のcanvasを別に用意して、画面用のcanvasの上に重ねて表示していると理解。
確かにこれでは、メソッド内でマウスカーソルとウインドウの重ね合わせ処理を探しても見つからないはずだ。
ちなみに、Interpreter>>primitiveBeCursorのコメントに
"Set the cursor to the given shape. The Mac only supports 16x16 pixel cursors."
とあったので、Mac版ではOS自体のカーソルの形状を変更して利用してるみたいですね(未確認)
マウスカーソルが画面外に出たときの挙動を比べると、
SqueakJSではcanvas製のマウスカーソルが画面端においていかれるのに対して、
Squeak.exeではマウスカーソルが画面端に残らないのがそのせいかな、と思ったり。 この言語しばらく使ってるとゴミさが身に染みてくるんだよな
うっかり間違って採用しちゃった企業も途中で捨てるから、いつまでも利用者が増えない アンチもゴミさが分かるくらいまで使えれるならたいしたものだがな そういや一時期Smalltalk使ってるのをアピールしてる日本の会社あったよね
昔じゃないよ去年とか一昨年くらいの話
あそこってどうなったの?まだSmalltalk使ってる? SqueakかPharoのCogDroidβ以外のAndroid用のVMってあります? ちゃんとSmalltalkを理解した上でクソって言ってる人って
今まで2人しか見たことないわ
他はろくすっぽ使ったこともない雑魚ばっかだった 6月のSmalltalk勉強会は26日(火)SORABITOさんにて。
小田さんによる「Pharoで3D」のお話です。#st_study
https://t.co/wMiwwytiyq
SORABITO、Smalltalkと縁を切ったわけじゃないみたいだな 👀
Rock54: Caution(BBR-MD5:b73a9cd27f0065c395082e3925dacf01) 批判者が少ないのは人口が少ないからだろ
実用言語には利用者の多さが重要 愛好者ランキング高いのは仕事で使う奴が少ないからじゃないの >>472
smalltalkのlovedが67%だけど、これ使ってるって回答したのが3人でそのうち2人が好きって言ってるだけの可能性が十分にある
それがマイナー言語smalltalkの現実 >>474
66.7%ではなく67.0%なんだけど?数字読めない人でちゅか? Smalltalkは文化的にタイピング量が多くなってしまうのが面倒い
あとPharoがころころ仕様が変わるのでついていくの面倒い
好きな言語なんだけどね 文化的なことを言っていいなら、Smalltalkにはかなり以前からIDEからの支援が提供されていたので
タイプ数もスペル等の記述の正確性への心理的負担も他の言語よりずっと少なくて済む印象が強いなぁ…
仕様の変遷の激しさは同感。でも、まぁそれはSmalltalkの宿命っぽいところもあり半分あきらめている^^;
どうしても耐えられなければ、比較的変化の穏やかなVisualWorks等の商用Smalltalkという選択肢もあるし >タイプ数もスペル等の記述の正確性への心理的負担も他の言語よりずっと少なくて済む印象が強いなぁ…
懐古じじいは昔の知識だけで書いてるんだろうけど
いまどきの言語とIDEの組み合わせからみたら
Smalltalkの補完はゴミだよ。
型推論すれば必要ないって分かるものも補完の候補で出てきやがる。 いまどきの言語とIDEの組み合わせで事足りるならそれでええやん
なんでSmalltalkなんか使うの? 事足りるとか意味わからんw
Smalltalkが下なの!他の言語では可能でもSmalltalkでは出来ないことばかりなの! お前がずっとここに張り付いてる意味のほうがわからんわw JavaからSmalltalkに乗り換える開発者が100000000人に一人くらい居ると良いね 滅んだと信じ込んでる無知がうるさいから
わざわざSmalltalk除く細工しこんでるしね Smalltalk除く細工ってw
被害妄想もここまで行くと病気ww Smalltalkを狙って抜いたというよりは
当初適当な比率で順位決めたらSmalltalkが二位なんかに入っちゃったもんだから
もうちょっとましな結果になるように評価法を適正なものに変えたといったところだろう 普通に考えて外れ値の扱いになるのは仕方ないよ
一部の狂信者以外は誰も使ってないんだから >>494
小学校のプログラミングすら知らない人? Scratchのこと?あれは良いものだね。
でも最早Smalltalk関係ないじゃん。捨てられてんじゃん。
わざわざ別言語に乗り換えられてるなんてゴミ言語の証拠じゃん。 ScratchはおろかSqueak/etoysで知識止まってるとか? 教育用言語として普及しているのは
スクラッチであってスモールトーク自体じゃないから
やっぱりスモールトークは使いづらいってことじゃん 子供であってもSmalltalk-72のころから常にSmalltalkは人を選んで来たよね
ドローイング/ペインティングツール、回路設計支援ツールとかまで作れたのは一握りの優れた子供だけ
Personal Dynamic Media (1977) にもブルース・ホーン(後にAppleでFinder等の開発に寄与)を含む
5人の子供の名前しかクレジットされていない Scratch2.0の方が便利なのに、何も知らない子供にScratch1.4(Smalltalkで実装されてる)を使うように推薦するSmalltalkerって
マジで害悪だよねw オフラインならScratch1.4の方が断然便利だろ
タブ向けもPyonkeeしか提供されてないし
なんだかんだいったところで結局Smalltalk以外選択肢がないんじゃしかたない Scratch3.0(もうプレビュー版が出てる。タブレットにも対応してるし、スマホでもプレイ可能)が正式リリースされても
SmalltalkerはPyonkeeを無垢な子供に推薦するんだろうなぁ
マジで害悪だよね スクラッチ勢は古参のSmalltalk使いをずいぶん煙たがっているんだな そりゃSmalltalkを布教したいという邪な欲望丸出しで
新バージョンへの移行を妨げる分断工作してんだから
疎まれて当然でしょ
子供の教育を考えたら百害あって一利なし >>503
いや単に他の板から逃げて来た知ったかが居るだけだから。(実装の件とか思い込みで言ってるのバレバレだし) 反論出来なくなると、こうやって相手にSmalltalkを知らないヤツってレッテル貼るところまでがテンプレだよねw
(まあ死滅したクソマイナー言語を知らなくても不思議は無いし、成功率は高そうw) >>504
想像でいってんの?現場の人間の本音なの? >>506
知っている範囲で構わないんだけどSmalltalkはどこらへんがクソだと一般に思われているの? >>502が自白しているように、全ては病的アンチの妄想。 所詮VBにすら負ける言語だからね
Scratchを別言語でゼロから再実装されても仕方ないよ >>510
VBに負けているというのは具体的には何について?
よく引き合いにだされるTIOBEインデックス等の話題に上る頻度のこと?
VB以下の言語がすべてVBに劣るわけではないと思うけど… TIOBEだけが生きがいの>>510さんをいじめないで! SmalltalkとVBといえば九大病院
Scratchの件と合わせて他言語に完敗した歴史として語り継いでいくべき >>513
これのこと?
九大病院“つまずき”の真相 「要件定義の甘さ」が尾を引く
http://web.archive.org/web/19990910201442/http://www3.nikkeibp.co.jp:80/WAT2/971212/971212trein01.html
単に日本IBMの思惑とマネージメントに問題があっただけのような気がするんだけど
513はこの件で具体的にはSmalltalkの何が悪かったと語り継ぎたいの? へー、九大病院だけじゃなくて長野オリンピックのシステムもSmalltalkじゃ上手くいかなかったけどVBでは開発出来たんだね
Smalltalkでは開発失敗したけど、VBなら成功したんだね 一方、米IBMは96年開催のアトランタ・オリンピックのシステム開発で
同社のSmalltalk開発ツールであるVisualAgeを使用しなんら支障なかったので
結局、日本IBMの技術力とマネージメントだけが問題なんだよね VBでも開発に失敗してたら、そういう言い訳も通ったかもねw ていうか、Smalltalkから他言語に乗り換えた話ばかりじゃん
逆に他言語からSmalltalkに乗り換えた例はないわけ?
一件くらいあるだろゴミクソ言語でも キミみたいな筋金入りのアンチならケント・ベックがその名をはせた
クライスラー総合報酬(Chrysler Comprehensive Compensation, 通称C3)プロジェクトの失敗
も大好物なんじゃない?http://bliki-ja.github.io/C3/
やれエクストリーム・プログラミングだのやれテスト駆動開発だのと偉そうなことを言ったところで
COBOLで書かれたレガシーシステムのひとつもリプレースできないヘタレ言語
これもぜひレパートリーに入れといてくれw 失敗と言いつつ、実は成功したと思ってる例を出してくるあたりセコイねー
Smalltalkerってホントしょーもねーなw
はるか昔にCOBOLのリプレースに一時的に成功したのが
Smalltalkの数少ない(唯一の?)輝かしい成果ってことは分かったよ
その後またCOBOLに戻っちゃったみたいだけど、オマケで
VB > Smalltalk >= COBOL
って事にしてあげるねw オマケでCOBOLに勝った認定でウキウキのSmalltalkerさんw C3って成功プロジェクトなの?アンチの基準がいまいちわからんな アンチって言えばCincom出身のこの人
https://www.reddit.com/user/dlyund?count=1000&after=t1_czedjw5
全力でSmalltalk殺しにかかっててきてて怖いw まだ生きてるような言い方するなよ
死んでんだよ、ずっと昔に この人の主張は
- Smalltalkは個人や小さな規模では楽しいかもしれないが大規模には使えない
- Smalltalkが大規模でも快適であるような嘘の宣伝はやめろ
- うっかり真に受けてCincomに入りいくつかの大規模案件に従事したが時間の無駄になった
と(思い込みによる誤認はあるものの)アンチな理由がはっきりしていて見ていてすごく胸が痛むが
ここに居着いているアンチはSmalltalkを使ったことはおろか恐らくは関わりすらなかったろうに
今はただひたすらSmalltalkが死んだことにしたいだけのために日々戦っていてそれもそれで気の毒だ Smalltalkは分かりやすく底が浅いから
直ぐに大規模開発には使い物にならないって分かりそうなもんだけどな >>525
結局Smalltalkは大規模に
使えないってハッキリしたじゃん
>>527
>思い込みによる誤認
って何? >>529
よく分からんけど朝鮮人とかが一向に証拠出さないようなもんかな。 Smalltalkは大規模開発に使えないのは分かった。
だったら小規模開発には使えるの?