sumim
banner
sumim.bsky.social
sumim
@sumim.bsky.social
Smalltalkのファン。パーソナルコンピューティングの歴史や未来に興味を持つ。Smalltalkはアラン・ケイらが理想のPC向け暫定的OSとして1970年代に試作し以降、WIMPなGUIやIDE、OOPやデザパタ、開発手法等を創出。模倣されることでそれらを世に広めた。古典である一方で、Traitsなど比較的新しい言語機能を通じた影響力も有する不思議な存在。
なるほど詳しくはそんな感じなのですね…

History of Lisp [McCarthy 1978] での書き方だと(そこらへんの背景や経緯を端折った都合)さほど「期待した修正方法ではなかった」感はでていなかったので、前述のとおりの理解でおりました^^;
April 3, 2025 at 4:15 AM
ChatGPT に A PLASMA Primer XIII を読んで解説してもらった感じだと、メッセージの消費が動的なことをもって「副作用」と捉えているっぽい感じでした

chatgpt.com/share/67ebe8...

それより ChatGPT がたいして知りもしないことを適当に決めつけたあげく、あまつさえ、指摘してもはぐらかすのが無性にむかつきました^^;
April 1, 2025 at 1:30 PM
添付図の間違いだらけの雑な擬似コードは読まれましたか? tinlizzie.org/VPRIPapers/h...

これを見て Smalltalk-72 をちゃんと動くように実装してしまったダン・インガルスは、実際エスパーなんじゃないかと^^;
March 27, 2025 at 2:23 PM
ここのところコピペの歴史を紐解く中で、改めて Smalltalk-76(1979年にジョブズたちが見たとされる GUI)のコピペ周りのソースを読みました

実はかねてからこの St-76や初期の -80 で、カット(あるいはコピー)とペーストの間になにか文字入力を挟むと、直前のカット(あるいはコピー)した内容が、その入力内容に置き換わってしまうという、直感的とは言えない動作が気になっていたのですが、その原因がわかったのと、これはもしかして again(ダイアログボックスなどを経ずに直前の置換を繰り返すことができる機能)の安易な実装に伴うバグだったのではないか、という可能性がでてきました^^;
December 25, 2024 at 5:11 AM
前述の素朴な実装では、atomクラスが内部で使用する一時変数(x、y)との名前衝突により、変数名がx、yの場合にエラーが発生することが判明しています

しかし、添付図のように、コンテキストを切り替えてapplyを使用することで、この制限も回避可能です(実装と検証のためのコードは少々ややこしくなりますが─^^;)
December 13, 2024 at 11:35 PM
RubyやSmalltalkなどの純粋オブジェクト指向言語では、インクリメント演算子が実装できないとされています(変数ではなく、変数に代入された数値がメッセージを受け取ってしまうため)

しかし、Smalltalk-72のように変数自体をオブジェクト(クラス「atom」のインスタンス。クオート「☞」への変数名の送信で取得)として扱い、代入もそれへのメッセージ送信(☞var ← 3)として記述する言語なら、この制約を容易に回避できるのではないかと思いついたので、検証してみた結果が添付図です

期待通り、☞var inc で var++ を、inc ☞var で ++var を再現できました!
December 13, 2024 at 11:20 PM
正直、泉でNHKドラマ10「正直不動産」の美波役の泉里香さんをハルシネーション^^;

x.com/sumim/status...
September 10, 2024 at 5:06 AM
話題のメキシカンハットを pharo.org Smalltalk で書いてみました なつかしす

ws.stfx.eu/6M3DIN9WNU2O

参考:「瞬時に拡散!古いパソコンでメキシカンハットが蘇った日」 togetter.com/li/2390318
June 26, 2024 at 7:05 AM
40周年の節目で旧Mac/Lisaの偉業を讃えるメディア記事が増えそうです

ただ、書き手がそれらのGUIの元ネタであるアラン・ケイたちのSmalltalk-76(≒暫定ダイナブックOS)を知らないせいか、模倣された要素まで(Smalltalkよりは有名な、しかしSmalltalkとは異なる操作方法を採用したStarとの違いを根拠に)全くのAppleの創意工夫と早合点して書かれがちなのが気になります

暫くは要注意(?)ですね^^;
January 14, 2024 at 7:26 AM
この歴史的な「ラジオボタン」クラスのソースコード(いくつかの意味で残念(?)ながら移植された Smalltalk-76で書かれたものになりますが…)は、ペイントシステム本体(BitRectEditor)、画像フォーマット(BitRect)とあわせてこちら smalltalk76.com/0017-Picture... で読めます
November 18, 2023 at 10:35 PM
今どきの人には意味不明になっているのに当然のように使い続けられているもので、保存ボタンの 3.5インチFDメディアをかたどったアイコンがよく話題になりますが、テッド・ケーラーが 1975年頃に思いついて名付けた「ラジオボタン」もきっとそのひとつなんだろうなぁ…と、artonさんに言及されて、ふと^^;

A Technical Tour of Ted's Projects tedkaehler.weather-dimensions.com/us/ted/resum...

しかし、ケーラーという人は改めてすごい人だ
November 18, 2023 at 9:06 PM