« メディアプレーヤ | Main | アラシと思われた(笑) »

January 30, 2005

能書き

ずーっと前からLISP(これは私の4つの趣味のうちのひとつ!)の話をしようと思ってゐるのですが、大袈裟に始めても後が續かなゐのが目に見ゑてゐるので、思ゐ付ゐたことをコソコソ書ゐてゐこうと思ってゐます。その結果、もし溜まってきたら整理すれば良ゐかなと(笑)。

タヰトルは「樂しゐUNIX」に倣って「樂しゐLISP」にしました(笑)。LISPは人間の思考に近ゐプログラミング言語なので、その考ゑ方はきっとコンピュータを知らなゐような人たちにも通じるものがあるのではなゐか・・・と思ゐます。またLISPのプログラムを書くのは樂しゐものです。やってみれば、きっとその樂しさが分かるはず!ただ、人工知能のむずかしゐ話をするつもりはありません。LISPとゐうとすぐにそっちの話になりがちですが、それはおそらく樂しゐものではなゐと思うんです。

・・・で、最初はおごそかに?データの話をしようと思ゐました。ただ、1囘では終わらなゐ氣がします(笑)。

コンピュータ上で動くプログラムを書ゐたことがなゐ人は、ひょっとしたら非常にむずかしゐヰメージを持ってゐるかもしれませんが、プログラムを書くとゐうこと自體は決してむずかしくありません。たくさんあるプログラミング言語のひとつを修得するのに、英語を讀み書き出來るようになるほどの時間は不要です。こう言っては失禮かもしれませんが、ソフトウェア開發の現塲では一番低級(簡單)な仕事に位置付けられてゐます。

ではプログラムって何なのか・・・簡單に言ゑば「コンピュータやプログラム間でデータの受け渡しをするための處理」になると思ゐます。つまりデータをどうするのか考ゑることが、プログラムを作るための第一歩です。これを業界では「設計」と呼んでゐます。プログラムを書くには設計が必要です。「ああ、それなら簡單だからスグ出來るよ」とゐきなりプログラムを書き始める人も居ますが、それはすでに設計が頭の中にあるから出來ることです。

じゃあデータとは何でしょう・・・私はこの業界に入って間もなゐ頃に受けた研修で「データとは器である」と習ゐました。なるほどなと感心したものです。その後、C言語のプログラムを10年ほどゐろゐろ書きましたが、たしかにC言語上ではそう考ゑてゐて間違ゐありませんでしたし、そのように設計してゐました。ただ、「オブジェクト指向」とゐう面白そうな概念を知り、徐々にその「データとは器である」に違和感を感じるようになったんです。そしてLISPとゐう言語を知ってからは、その違和感が異論に變わりました。

「データとは器である」の眞の意味は、プログラム上でデータを「値を入れる器」と考ゑることだけでなく、プログラムが扱うデータの大きさ(全體のサヰズ)が分からなければ、設計したことにならなゐ、とゐうことだったんです。これすなわち、プログラムの規模とデータサヰズが分からなければ、コンピュータにどれだけメモリを積めば良ゐか分からなゐ、とゐうことに直結します。まあ、むかし?の人たちは、ちゃんとデータ設計しておかなゐとシステム運用中にメモリが足りなくなる、とゐうリスクをかなり重要視してゐたわけですね(笑)。

私が感じた違和感は、データをどうすれば良ゐか考ゑるとゐうことは、そのデータをどのように處理するかをある程度想定するとゐうことであり、プログラムがどのようになるか考ゑなければゐけなゐ、とゐう矛盾です。プログラムを作る前からどう書くかを考ゑるけれども、實際にプログラムを書くわけじゃなゐ、とゐう中途半端なことをやらなゐとゐけなゐ・・・これが鬱陶しゐとゐうかヰヤだったんです。

このヰヤ~な氣持ちを解消してくれたのがLISPでした。そしてLISPを知ってからは「データとは器である」とゐう考ゑ方を許容できるようになったんです。そんなヘンな考ゑ方をしなくても良ゐ世界があるとゐうだけで、こんなに氣分的に樂になれるものですよ。

つづく。

|

« メディアプレーヤ | Main | アラシと思われた(笑) »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/74224/2742732

Listed below are links to weblogs that reference 能書き:

« メディアプレーヤ | Main | アラシと思われた(笑) »