阿部です。
今朝、大島さんから連絡をもらい、間違いの可能性もあるかと思っていたのですが、本当でした。
Squeakに多大な貢献をされたAndreas Raabさんが亡くなりました。
http://lists.squeakfoundation.org/pipermail/squeak-dev/2013-January/167861.htmlアンドレアスさんは学生時代にWin32のVMを書きました。その後、ひとつひとつ挙げるのが大変なくらい多くのプロジェクトに関わり、沢山のコードを書き、コミュニティに貢献しました。
彼の人柄について語るのに私は適任ではないと思います。私が英語を話せないこともあり(もちろん、ドイツ語も)、会った時もほとんど会話らしい会話をした記憶がありません。
ただ、私の知っている人の中で最もクレバーな一人だったと思います。
何かやりたいことがあったときに、目的のものが彼の仕事から見つかることが実に多かったです。
他のみんなと仕事をしているときも、「すでにアンドレアスがやってくれた」、「それはアンドレアスがやってくれるだろう」という会話をよくしていました。
そして彼のコードには絶大な信頼を寄せていました。(先日のSmalltalk勉強会でちよっと話の出たSqueakSSLも彼が作りました)
私は、本当のところ、人が死ぬとどうなるかよく分かりません。でも、コードは残ります。
| authorInitials collection smalltalk |
authorInitials := 'ar'.
collection := OrderedCollection new.
smalltalk := (Smalltalk includesKey: #SystemNavigation)
ifTrue: [(Smalltalk at: #SystemNavigation) default]
ifFalse: [Smalltalk].
smalltalk allBehaviorsDo: [:class |
class selectorsDo: [:selector |
| method timeStamp |
method := class compiledMethodAt: selector.
timeStamp := Utilities timeStampForMethod: method.
(timeStamp includesSubString: authorInitials) ifTrue: [
collection add: timeStamp, ' ', class name, ' ', selector]]].
^ collection
# もっとシンプルなコードがすでにsqueak-devに上がっているのですが、せっかく書いことだし。バグってたら直してください。
# あと、これに使っているallBehaviorsDo:のコメントは彼らしいと思いました)
Smalltalkのように新陳代謝するシステムでは、彼のコードもいずれはなくなっていくことでしょう。
でも、authorInitialsに'ar'を見つけた時に、彼のことを思い出すのも良いかもしれないと思っています。
//abee
--
阿部 和広 EMAIL
[hidden email]