Cocoaでプログラミングをしていたり、Rubyでプログラミングをしていると、プログラミングってこんなに楽しいんだって思う。
完成品のビジョンがあるかもしれないけれど、それだけじゃない気がする。
今まではC++を使ってメタプログラミングをして、型で遊んでいたけれども、そのときもこんなに楽しいとは思えなかった。
C++のメタプログラミングは、エラーが満載の中でなんとかコンパイルが通った時には喜びは一入だけれども、早く動くコードを書きたいときは足かせになる。
一方で、Cocoaのプログラミングはすごく楽しい。
さくさくGUIが作れる(ちなみに今はInterface Builderを使っていない)。
そして、WindowsでGUIプログラミングをしていたときは、こんなに楽しくはなかった。
なんなんだろう?この違いは。
一つだけ嫌なのは未だに参照カウンタがどう動くのかよくわかっていないところ。
これはreleaseしないとまずいだろうと思うところで、してみたらクラッシュ。
Instrumentsでメモリリークを見てみたら、リークしてる。
もー、って感じ。
ただ、メモリリークを今のところ気にしないことにしておけば(つかえるところではガベージコレクタを使えば)、それは別に良い。
(たのしいCocoaプログラミングはLeopard対応版が出版される予定です)
そして、Rubyでプログラミングするのも楽しい。
「たのしいRuby」という本に(これはなかなか良い本なんだけれども)、「Rubyは、プログラミングをたのしくするためのプログラミング言語です。」と書かれている。
Rubyは思ったことがそのままコードになる。
ちょっと考えて、そのままタイプすれば、それが動く。
とてつもなく楽しい。
そして、正規表現がシームレスに使えるからテキスト処理も簡単だし。
何年か前にRubyを憶えようとして正解だった。
プログラミングはとてつもなく楽しいもの。
1日中コードを書いていても飽きない。
このことを数年ぶりに思い出させてもらっている気分です。