2006-02-01から1ヶ月間の記事一覧

OS X で Squeak VM の外部プラグインのビルド

Little Smalltalk で VM のソースを眺めていたら、むらむら(違)と Squeak VM をビルドしたくなったのですが、初心者にはとうてい無理っぽかったので、外部プラグイン(OS X 向けには ○○.bundle とかいうやつ。仮想マシンレベルで Squeak システムの機能を拡…

Little Smalltalk v.1

前のエントリーでマニアックなハックとともに(^_^;)ご紹介させていただいた Little Smalltalk は v.3 で、比較的新しいものです(エントリー名を変更しました)。そのため、仕様が書籍で解説されているのとだいぶ異なります。タイトルから郷愁にかられてアク…

Little Smalltalk v.3

前のエントリーで まつもとさんにコメントをいただいたのをきっかけにして、Little Smalltalk で遊んでみたので、そのメモ。 Little Smalltalk はティモシー・バッドによる、名前のとおり非常に小さな Smalltalk 処理系です。Smalltalk システムの特徴であり…

インスタンス変数のオーバーロード

Matz にっきに、 多重継承のある言語としてRubyを見ると インスタンス変数が全クラス階層で共有される privateメソッドとpublicメソッドの名前空間が同じ という二点はかなり痛い。 前者は継承に参加する全クラス(モジュール)間で名称に衝突があってはいけな…

Yet Another Ruby VM (YARV) での ack や tarai との速度比較

http://www.namikilab.tuat.ac.jp/~sasada/diary/200602.html#d17 http://eigenclass.org/hiki.rb?yarv+ueber+algorithmical+optimizationなにやら YARV で Ruby が(限定的にせよ)最適化が効いてむっちゃ速くなる!というお話。(追記:以降、ネタにマジレ…

Squeak に英文を読ませる

ひ日誌の「 Mac に英文を読ませる」に触発されて。 エディタとして常用する Emacs に読み上げ機能を付加する便利さや、任意のキーで選択テキストを読み上げてくれる機能が用意されている OS X にはとうていかなわないまでも、クリップボードのテキストを声に…

カーリーブレイス記法による多重代入もどきを復活させる

Squeak の Smalltalk におけるカーリーブレイス(中括弧)を使った記述は、前身である Apple Smalltalk 時代にラリー・テスラーの手により組み込まれた、配列の特殊な表記法を受け継いだものです。 参考:Squeak のコード中によく中括弧を見かけるけど、あり…

Lua のコルーチンをシミュレート 2

id:sumim:20060209:p1 に call/cc 版を追記。

call/cc でコルーチンっぽいことをする

call/cc …というか継続(a Continuation)が使えるようになったので「 Scheme 入門 16. 継続」の最後の項「 4.3. コルーチン」にある、call/cc を用いたコルーチンもどきの例を試してみる。 まず手始めに、スレッドで同じことを記述。 | rstream | rstream :…

Squeak の Smalltalk で call/cc を使えるようにする

Squeak システムのインストール(念のため) http://squeakland.jp/developer/ の指示に従ってセットアップ ・http://squeakland.jp/developer/download/image/SqueakPlugin-dev-527.zip を入手、展開 ・使用している OS 向けの仮想マシン(バーチャルマシン…

Lua のコルーチンをシミュレート

TMUG(東京マッキントッシュユーザーズグループ)のメーリングリストで Apple の Aperture への言及にからめて引き合いに出された Adobe の Lightroom について、そこで引用されていた Sooey の「Adobe Lightroom には Lua が使われている」によれば、 Adobe…

suzuki さんの OOP 入門に新項目追加

トーフサロン な suzuki さんの「Squeakによるオブジェクト指向プログラミング入門」に、新ページ「クラスの定義」が追加されました。この次の Squeak システムならではの開発方法…というのも楽しみです。