kashibat-svtによる
2009年03月09日 19時29分の掲載
お悔やみ部門より
お悔やみ部門より
あるAnonymous Coward 曰く、
日本のコンピュータ界、ネット界の先駆者であり、その礎を作られた石田晴久氏が本日午前7時に逝去されたそうです(サイバー大学のプレスリリース)。
書籍「プログラミング言語C」など、様々な書籍の翻訳者としても活躍され、その仕事のお世話になった方も多い(C使いならほぼ全員?)と思います。
思い出話を語りながら故人を偲ぶストーリーになればと思い、タレコミます。
石田先生と教育 (スコア:5, 参考になる)
このページ [hp.com]の左上の写真で、アラン・ケイ博士の後ろに写っているのが石田先生です。
これは日本HPのSqueakによる社会貢献活動を紹介した2004年のニュースリリースで、石田先生は会場に来賓としていらしていました(私はスタッフ)。当時は多摩美術大学のメディアセンター長を務められていましたが、Squeakを使った子供の教育に多大な関心を寄せられ、アランさんとも熱心に情報交換されていたのを覚えています。その後、情報デザイン学科の須永先生と共にSqueak Labの設立に尽力され、私も研究員として呼んでいただきました。Squeak Labではアートとコンピューティングを組み合わせた子供のためのワークショップを開催し、大きな成功を収めています。
サイバー大学設立の折には、打ち合わせ場所として使っておられた新宿中村屋に私を呼び出され、教養科目としてSqueakを使った講義 [cyber-u.ac.jp]を行うことを提案されました。サイバー大学には世界遺産学部とIT総合学部という異なった学部がありますが、どちらの学生も習得すべき基礎的なリテラシとして、プログラミングを取り入れたいとのお考えでした。
石田先生というとUNIXやC言語の印象が強いですが、パソコン黎明期にはTiny BASICやUCSD Pascalを紹介されており、現在もさまざまな言語や環境について研究されていました(先生が担当されていた「パソコンの歴史」と「コンピュータ進化論」 [cyber-u.ac.jp]は当時を知る上で大変興味深い内容です)。 先生からの最後のメールは日本におけるOLPC普及に関するもので、最後にお会いしたのはMIT Media LabでMindstormsやScratchを開発したミチェル・レズニック教授との会食の席でした。
入院の直前までSkypeを使っておられたという話もあり、いかにも先生らしいと思う一方で、もっとご自愛いただけていたらと思うと残念でなりません。
コメントを書く
コンピュートないと (スコア:3, 興味深い)
コメントを書く
親コメント
Re:コンピュートないと (スコア:3, 参考になる)
コメントを書く
親コメント
お悔やみ申し上げます (スコア:2)
ちょっと難しかったけれど凄く参考になりました。
もうIT系の仕事はしていませんが、いまでも教科書は持っています。
いまから読み返して喪に服したいと思います。
書痴の森へようこそ。
コメントを書く
ご冥福をお祈りいたします (スコア:2)
こんなところからで申し訳ございませんが、ご冥福をお祈り申し上げます。
コメントを書く
お悔やみ申し上げます (スコア:2)
こういった方がまだご存命だったんですものね・・・
この業界まだまだ伸びしろがあるはずです。
ITに携わる人の数は爆発的に増えていますが、
我々の時代に、果たして先生の時代ほどの変化をもたらすことができるか・・・
身が引き締まる思いです。
コメントを書く
ご冥福をお祈りします(-人-) (スコア:2)
当時、せいぜい X-BASIC くらいしか知らなかった自分にとって、最初は難しく思えてしばらくの間は積読状態になっていたものの、結局本棚に数ある本のなかでも特にこの1冊だけは手垢で真っ黒になってしまっており、特別な1冊であったことを物語っています。
思えばCを書くとき常に傍らにあった1冊であったわけで、座右の書、人生を変えた1冊と言っても過言ではないでしょう。
この場を借りて石田先生に感謝の気持を贈りたいと思います。
uxi
コメントを書く
IPSJ-DSM研究会初代主査 (スコア:2, 興味深い)
「大学や企業の計算機システムなど大規模分散システムの構成技術や管理運営に関する研究発表の場を提供するため」 に、情報処理学会にDSM研究会がつくられた(1996年)のだけれど、その初代主査を務めていただいたのが石田先生でした。
実際、「定義があって補題があって定理があるものじゃなければ論文じゃない」みたいな雰囲気だったんだよ~。 DSM研究会(今ではIOT研究会)ができて、助かってます。
コメントを書く
ご冥福をお祈りいたします。 (スコア:2)
私は、K&R 第一版でプログラミングを始めました。
自分でノートに整理しながら問題も全問トライして、プログラミングを学びました。
いまも、システム開発で生きていけているのは、あの本と格闘したからこそだと感謝しております。
ありがとうございました。
ご冥福をお祈りいたします。
コメントを書く
K&Rは (スコア:1)
ご冥福をお祈りします。
/* pegiminh (aka .thx) */
コメントを書く
卒論 (スコア:1)
きっと卒業できてなかったと思います。
本当にお世話になりました。いまだにお世話になっているようです...
# 木村泉先生のソフトウェア作法にも非常にお世話になりました。
# っていうか今も役に立ってます。
=^..^=
Enjoy Networking, Skiing as well as Horse Racing.
コメントを書く
日本のインターネットの祖父 (スコア:1, 興味深い)
コメントを書く
Re:日本のインターネットの祖父 (スコア:5, 興味深い)
インターネット 歴史の一幕:JUNETの誕生 [nic.ad.jp]より
#ご冥福を心からお祈りいたします。
コメントを書く
親コメント
So long, (スコア:1)
「バイブル」とか呼んでた学生の時分、あの手の書籍はなかなか手が出なかったな…
コメントを書く
UNIXプログラミング環境 (スコア:1)
ご冥福をお祈りいたします。
って、「UNIXプログラミング環境」買って全然読んでなかったorz
明日から読むかな?
コメントを書く
Re:UNIXプログラミング環境 (スコア:2)
コメントを書く
親コメント
こんなところでも (スコア:1)
嘘ニュースサイト「bogusnews」も哀悼の意 [bogusne.ws]を表しております。
……あのサイトなりのやり方で、ですが。
コメントを書く
マイコンBASIC入門 (スコア:1, 興味深い)
大先生と知ったのはずいぶん後です。石田晴久というお名前は、明治の人が意味も
分からずに漢文を素読したように、僕の中では意味や偉さがよくわからなかった
1980年代初期のマイコン時代の著作者として「高橋はるみ」さんと同じフレームに、
セピア色の記憶のひとこまとして残っています。
大学でお顔を拝見しに理系の講義に潜り込んだのがいい思い出です。
石田先生、ありがとうございます。単位も何ももらってないけど、書店でも、図書館でも、
僕は「石田晴久」という著者名を見るといまでも「おお」と思って必ず手にします。
僕の人生のひとつの方向性を決定つけたという意味で、タイミング的に、K&Rよりも
先であり、上です。
上のほうでも書いている方がいらっしゃいましたが、そういう意味でも、ほんとうに
いい先生、啓蒙者だったと思います。誰かそういう思想史書かないかな。
私淑っていういい言葉があったのを思い出しました。
コメントを書く
Re:プログラミング言語C (スコア:2)
借りっぱなしで2版が出る頃には同じように黒ずんでました。
当時は(今も?)訳が読みづらいと評判でしたが、別に苦にならなかったなあ。
あれがなければこっちの世界に踏み込む事はなかっただろうと思います。
ありがとうございました。
コメントを書く
親コメント
Re:プログラミング言語C (スコア:1, 興味深い)
pint_t a, b, c;
…わかりやすいでないですか。
と、いうのは全然嘘です。
私もその書き方が気に入ってません。
int* i;
と書かなければ気が済まない人というのは、
「ポインターなのは型だろー、型は型として書かせてくれよ。」
って思ってる人たちなんです。
きっと型名にスペースを含んでいるのが許せない人達なんです。
または、* が型名に含まれていない事が我慢できない人達なんです。
そう思ってる人たちは決して、
int* i, *j, *k;
とは書かない/書けないみたいですね。
そんなに嫌なら、typedef しやがれですよ。> 各位
コメントを書く
親コメント
Re:プログラミング言語C (スコア:2)
考え方の1つにすぎませんが,型宣言でも数式解釈と同様に,両辺の型が釣り合っていると思えばわかりやすいかも知れません.
int *i;
は
int = *i; (この式はコンパイラに通りませんが概念的なものです)
というように両辺の型が釣り合う関係になっていて,アドレス(ポインタ) i が指す先の値にアクセスする演算子 * を付けたもの (*i) は,int 型でなければなりませんよ,という意味です.コンパイラの視点で言うと,代入式を解釈するときの左右の型の一致判定と同じロジックで変数宣言が出来ることになりますし,変数への演算子の付け方が許容されうる限り,それは変数宣言でも同じように使えることになります.
double (*a)[3];
とかでも同様に,左からでなく,最も内側(変数名の部分)の a から外向きに辿っていけば理解しやすいのではないでしょうか.
「a はポインタで,その指す先は3要素の配列で,その配列の各要素は double 型」であるということになりますから.
そう考えると,
型名 変数名;
という単純なとらえ方だけでなく,変数名を修飾することが変数宣言でなぜ利用できるのかが理解しやすいかも知れません.
また上のような解釈をしているので,私の場合 C++ 流の int* i; のような書き方は気持ち悪くて仕方ないです.
コメントを書く
親コメント
Re:プログラミング言語C (スコア:2, すばらしい洞察)
Cの前に、マシン語をやっていたので
多分同じようなもんだと思いますが、
int* i;
は私にはしっくりきましたよ。
Javaやってる人は
int[] i; // 配列型のiという変数
という書き方をするので、同意してもらえるかも。
変数名とその振る舞いは分離しておきたい、というだけです。
/* なんにせよ、ポインタ変数なのか、普通の変数なのかがよく分かるように
* 命名していれば混乱の問題は無いと思うんですが、
* a,b,i,j,kで使われる例ばっかりなのがよくないのかなぁ、と・・・
*/
コメントを書く
親コメント
Re:プログラミング言語C (スコア:1)
ありませんでした。謹んで先生のご冥福をお祈りいたします。
コメントを書く
親コメント
Re:朝日新聞の訃報 (スコア:5, 参考になる)
日本のコンピュータ・サイエンスの先駆者
「ネット研究」っていうと、なんか、軽すぎる。
それに、インターネット絡みのものは研究者から指導者にクラスチェンジした後の業績だし・・・
コメントを書く
親コメント
Re:朝日新聞の訃報 (スコア:2, すばらしい洞察)
UNIXとかCとかインターネットとかオープン系(っていうのかな?)とかデファクト系?にちゃんと取り組んだ大学人としては先駆者に違いない。
コメントを書く
親コメント
Re:プログラミング言語C (スコア:2)
私の場合、Z80世代からパソコンをはじめて、今の本職はC++ですが、
int *p;
の書き方じゃないと落ち着きません。その変数がポインタであることが見た瞬間に理解できるような書き方をしたいので、*と変数名はつなげて書きたいです。
初期のCを飛ばして、C++やJavaから入った人だと、
int* p;
と書くようです。
そういう人は、 unsigned char* p; とか書くんでしょうか?
unsignedとcharの間にスペースが入っているのに、charと*の間が詰まってるのって、気持ち悪くないですかね?
こういうのを見る度に、こっそり書き直したくてそわそわします。しかし、バージョン管理システムに履歴が残ってしまうので、迂闊に書き直すわけにもいきません。まったく困ったものです。
あなたの予想に反して、このページが見えているでしょうか?
コメントを書く
親コメント
Re:プログラミング言語C (スコア:2)
私は個人的にconstは後ろ寄りに書く習慣でやっていますので、
const char *p; ではなく、 char const *p; と書きます。
従って、 const char* const str = "ABC"; は、 char const *const str = "ABC"; になります。
まあ「*const」の部分はちょっと微妙なので、間にスペースを入れても入れなくてもいいかなと思います。
そんなわけで、やっぱり C++ でも char* p; より char *p; だと思いますよ。
あなたの予想に反して、このページが見えているでしょうか?
コメントを書く
親コメント
Re:プログラミング言語C (スコア:2)
いっそのこと、複数の変数をまとめて宣言できるってのを廃止するってのは?
int a;
char b;
int* c;
char* d;
としか書けなくすれば万事解決です。
コメントを書く
親コメント
Re:プログラミング言語C (スコア:1)
carとcdrが理解できずにポインタの道に進んだ人も多いのではないでしょうか?
あなたの予想に反して、このページが見えているでしょうか?
コメントを書く
親コメント
Re:プログラミング言語C (スコア:1)
コメントを書く
親コメント
Re:朝日新聞の訃報 (スコア:1, 興味深い)
コメントを書く
親コメント
そういえばアンチな人が先生にいた (スコア:3, 興味深い)
10数年ほど昔、私が大学生の頃、教わった先生の一人がPL/I大好きの大型機Loveのヒトで「アンチ石田」だって公言してたなぁ。彼の目の黒いうちは計算機センターにUNIXは入らないとも。
・・・しかしそのたった数年後、彼の目がどころか髪さえも黒いうちにUNIXが動くマシンがセンターに現れたのだった。
それが昨今ではUNIXどころかWindowsが動こうかという・・・
(「メインフレームでWindowsが動く「z/VOS」」
http://slashdot.jp/article.pl?sid=09/03/06/0133248 [slashdot.jp])
関数型言語は嫌いですといいながら入院した先生の代打でLISPを教え、prog形式に妙に時間を割いていたあのセンセイは今頃どうしてるかなぁ。
コメントを書く
親コメント
Re:ご冥福をお祈りします (スコア:1, おもしろおかしい)
本物のプログラマーはパスカルを使わないのだよ。
コメントを書く
親コメント
同世代的経験か・・・ (スコア:1)
私自身はPascalとModula-2とFortranの経験しかない段階で
Ver.2.1のWindowsからWindowsのプログラミング本だけを片手にイキナリC言語に入ってしまったので
メモリはリニアじゃなくて切れ切れだわ、ポインタじゃなくてハンドル(実体はポインタへのポインタだけど使用前にはロック必須)だわ、標準ライブラリは使えないわ、とひどい目にあいましたw
(とはいえ仕事じゃなくて学生が趣味でやってただけなので、ひどい目といっても知れてましたが。)
K&Rはそのずっと後、卒論・修論でC++をさんざん使った後に古典として読んだので、
世代的には「K&Rでプログラミングを覚えたぜ」世代の範囲内なのにこのトピックではあまり熱く語れないという…。
コメントを書く
親コメント
Re:プログラミング言語C (スコア:1)
> 関数へのポインタの配列を返す関数
などの型が理解できない、という意味だと思っていたのですが、最近になって違うことが分かってきました。
それは置くとして、私は読む分には
int*i;
int *i;
int* i;
int * i;
どれでも一緒です。たぶん最後は私は書かないけど上の3つは気分によってどれも書くかも。
寧ろポインタ変数の名称がiであるのが少しだけ気持ち悪いかな(コメント主はそこは問題にしていないと思うけど)。
とはいいつつ、それもそこまで気にしないです。
int* i, *j, k[5];
とかでも平気です。
Best regards, でぃーすけ
コメントを書く
親コメント