2005-01-01から1年間の記事一覧

Re: Method Finder for ruby

id:shinichiro_h さんが、Squeak の Method Finder にヒントを得て、さっそく Ruby で使える Method Finder をこしらえて公開してくださいました。動的言語 and/or 動的システム、万歳!ですね。w 毎度お馴染みの直訳ぎみに。 | receiver args expected mat…

Ruby の

id:nurse さんの cmp を書いているとき、 が出てきて、Squeak の Smalltalk にはないから挙動をそのまま、 | aa bb | aa := 3. bb := 5. ^ aa < bb ifTrue: [-1] ifFalse: [aa = bb ifTrue: [0] ifFalse: [1]]" => -1 "とか書いてはみたものの、なんだかなー…

小舟に乗って川を渡る #(人 狼 羊 菜) たち 3

歪 で die さんが、Java の Graph Layout ライクな出力機能付き Gauche(Shiro さん作の Scheme の処理系)版 を 「人 狼 羊 菜」で公開してくださいました。 例によって、咀嚼のため直訳ぎみに翻訳。Sqeuak 3.8 + 日本語リソース(手順は こちら)+ Closure…

小舟に乗って川を渡る #(人 狼 羊 菜) たち 2

すっかりご紹介が遅れてしまいましたが、id:koichik さんがこの手の問題にぴったりの Prolog を使って、状態遷移まで一気に解く試みをされています。すごいですね。エビちゃん、カワイイっすね…。 SHIMADA さんからもコメントをいただきました。 導いた組み…

Java のクラスはオブジェクトじゃない?!

関連:id:sumim:20040525:p1 keisuken さんの 航海日誌 発、babie さんの 遅レス 経由で、オライリーのオープンソースコンベンション(OSCON 2005)のセッション「10 Things Every Java Programmer Should Know About Ruby」(スライド、brazil さんの和訳)…

小舟に乗って川を渡る #(人 狼 羊 菜) たち

Smalltalker's Salon Mailing List (SML) の 青木 淳さんの投稿より。 小舟に乗って川を渡ろうとしている人がいる。この人は狼と羊と菜を持っている。しかし、川を渡るための小舟には、一回に持って渡れるものがたった一つという制限がある。狼を持って渡ろ…

ワンボタンマウスの誕生日は 1980 年 8 月 13 日

ついに Apple から純正の(基本はワンボタンながらも、実質は)多ボタンマウスである Mighty Mouse(マイティ・マウス)が登場し、その25年にちょっと足りないチュウ生(?)の幕を閉じたワンボタンマウスを悼んで…。というのは大ウソで、前のエントリーにか…

again 機能

Squeak システムのテキスト編集用キーボードショートカットで、個人的には exchange についで好きなのが again なのですが、これに find の存在意義を脅かしかねないとんでもない機能が隠されているのを発見してしまいました!(和訳:今までとんと知らずに…

Squeak の Smalltalk にあるコレクションブロックメソッド

ファウラーが取りあげた基本的なメソッド以外に、Squeak 3.8 の Smalltalk にはどんなものがあるか a SequenceableCollection で使えるものについてまとめてみました。これらのメソッドの定義(と若干のドキュメントっぽいコメント。ただし残念ながらすべて…

コレクションクロージャメソッド

bliki_ja で、いつになく Smalltalk への言及が多い(…わりに、おいしいところはぜんぶ Ruby に持っていかれている orz)ので、あらためて Squeak システムの Smalltalk で実際に評価可能な例を添えて書き直してみました。 #do: (Ruby の each) employees d…

気象衛星の日本付近赤外映像を GIF アニメに

FTP クライアント(an FTPClient)と GIF 読み書き(a GIFReadWriter)オブジェクトの使い方の練習をかねて。 指定された時間内に撮影された GOES-9 の赤外映像を過去にさかのぼって FTP サーバ(独ウルム大)より取得し、それぞれをフレームとしてつなぎ合…

トランプを半分に分け正確にシャッフルする作業を8回繰り返すと順番が元に戻る

今週のトリビアの泉は野球放送延長のため後半が録れてなかったのですがw、ruby-list のシャッフルに関するスレをつらつらとながめていて、そういえばそんなのが先週あったなと。 | cards | cards := 1 to: 13 * 4. 8 timesRepeat: [ | firstHalf latterHalf…

Sleep 2.0

Matz にっき経由で、「Perlの文法を持ったJavaベースのスクリプト言語 - Sleep 2.0公開」とか。Perl の文法を持った…という時点でスルーしていたんですが(^_^;)、あらためてサンプルコードを見てみると、Perl の…というよりは、Perl っぽく使える Objective-…

Circle and Points

ヒビルテ 経由で、米国コンピュータ学会(ACM、The Association for Computing Machinery)主催の国際大学対抗プログラミングコンテストの過去問題より。Haskell の勉強を兼ねて さかいさんの Circle_and_Points.hs を Squeak の Smalltalk で例によって咀嚼…

BiGram

ヒビルテ経由でイナモデレーター2の「BiGramの実装」の Ruby zip 版を見ていっしゅん、例によって(^_^;)何をやっているか分からなかったので、直訳気味にして咀嚼。 | dictionary contents | dictionary := Dictionary new. contents := 'banana'. contents…

GoogleMaps→MapFan ブックマークレット

逆、つまり、Google Maps で散策していて気になった場所を MapFan Web で確認したくなるのも人情というものなので作ってみました。もちろん Google Maps で日本国内閲覧時にしか正常に動作しませんのであしからず。 javascript:(function(){var ary=document…

MapFan→GoogleMaps ブックマークレット

ここからの続き。最初のうちは日本全体映像からぐぐっとターゲットにズームインするのが楽しかったのですが、繰り返すうちにひどくおっくうになってきたので(^_^;)、ズームも(固定ですが)切り換え時に自動でしてくれるようにしました。ただウインドウの表…

MapFan Web 地図画面 → Google Maps Satellite 移動ブックマークレット

上の続きです。Squeak システムに馴染みのない方のために、ブックマークレット版を書いてみました。使い方は一緒です。MapFan Web の地図画面(左上に「リンク URL」がある画面)でこのブックマークレットを実行すると、Google Maps に移動して同じ場所にフ…

Google Maps への緯度経度変換

各所で報じられているとおり Google Maps の表示可能範囲が世界規模に拡張され、とくに衛星モード(Satellite)では日本上空から撮影した写真も呼び出せるようになり、ぐっと楽しくなりました。…が、残念ながら通常の地図モード(Map)がまだ白地図状態なの…

LLDN に Squeak も参加

Squeak-ja の梅澤さんの投稿より。 去年は、Squeakデモも10分の割には不思議に盛り上がり、またプログラミングコンテストには林さんが出場され、見事Squeakで優勝を勝ち取られました。今年もSqueakは参加します。言語の近況紹介(Language Update)と、プログ…

うるう年

なんとはなしに。 Date today isLeapYear " => false " 2000 asYear isLeapYear " => true " 2100 asYear isLeapYear " => false " DateAndTime なんてのができてたんですね(3.7-)。っていうか、Magnitude のサブクラス群にいくつかの新顔wが。構成も変わ…

注目した要素のコレクション内位置情報にアクセスする手段がないこと

ヒビルテ 経由の ブロックエクステンド をさらに経由して2ちゃんねるの Ruby スレにたしかに、 [1,2,3].each{|i| print "[",i, "," if i.first? print i, "]" if i.last? print i, "," if i.middle? }なんていうのがあったなぁ…と思い出したついでに、前の …

Python Challenge を Squeak システムの Smalltalk 言語で

Python Challenge は、出題ページの情報(含む、ソース)をヒントにして、続く次の出題ページの URL を導き出すクイズ集。もちろん Python を駆使することが前提ですが、ふだん使い慣れた別の言語処理系でチャレンジしておられるかたも多いようです。そこで…

Nihongo7 で cmd/alt + shift + r が正常に動作しない

上のスクリプトを書いていて気付いたので対症療法的な安直なフィックス。 'From Squeakland.396-Nihongo7.29 of 18 March 2005 [latest update: #97] on 29 April 2005 at 12:54:45 pm'! !ParagraphEditor methodsFor: 'editing keys' stamp: 'sumim 4/29/20…

モンティホール問題

日々の破片 経由でいろんなところから「確率ゲーム?」と「モンティ・ホール ジレンマの誤解」。おもしろそうなので実際に手元で試してみる。 不変時の当たり 変心時の当たり 不変時の当たり := 変心時の当たり := 0. 10000 timesRepeat: [ | 配置 不変時の…

シュワルツ変換(シュウォーツ変換)

ウチの この一行は絶対無二の一行なり の naruse さん(成瀬ゆい さん?)の書き込み経由で読んだ、「Perlメモ#特定の項目でソートする」の Perl スクリプトの意味が分からなかったので Smalltalk に(ほぼ)直訳になるように書き直して理解をこころみる。…

変態の仲間

あんまし変態、変態、ひっぱってもしょうがないのですが、気分的になんとなくそういうノリなので。wSmalltalk のメッセージ式を採用した有名どころの言語には、Objective-C と SELF があります。 Objective-C Objective-C では [ ] の中に Smalltalk の式を…

Smalltalk 言語の記述は変態か?

否! いわせりゃ、単なる関数呼び出しにしか見えないものを Smalltalk ライクなメッセージ送信に読み替えさせる Ruby のほうがよっぽど変態です。w …とのっけからどーせ負ける喧嘩を売ったところでむなしいだけなので、ええ…認めます。たしかに Smalltalk …

Ruby を Smalltalk VM 上で動かすプロジェクト

圏外からのひとこと経由で、Alumina-VM プロジェクト。ただし、まだプランだけで成果物はなし。(エープリルフールネタ…じゃないよね?) Smalltalk VM も何を使うのか定まっていないもようですが、VisualWorks っぽい感じがします。Ruby の弱点のひとつであ…

SqueakNihongo 7.0 を自分好みにするための設定メモ

メニュー選択をキーボード操作でも可能に デスクトップメニュー -> appearance... -> preferences -> menus -> menuKeyboardControl をオン。または、 Preferences enableGently: #menuKeyboardControl メニュー項目のアイコンを非表示 デスクトップメニュー…