2025 04,22 05:27 |
|
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 |
|
2007 03,17 11:12 |
|
今年に入ってから、仕事でインタープリタを実装しています。BASICやスクリプト言語のようなインタープリタではなく、どちらかというと、マクロプロセッサに近いもので、テキストの一部を置換するのが目的のものです。その意味では、C言語のプリプロセッサとか、m4とか、PHPなんかに近いのかもしれません。
インタープリタの実装経験は初めてではありませんが、それまではどちらかというと動作させるだけのものでした。そんなわけで、動作させること自体はそれほど難しくもないのですが、結構面倒なのがエラー処理です。といっても、エラーを検出するだけなら割と簡単です。一番面倒なのは、エラーメッセージの生成に関する部分です。 特に、文法エラーが面倒です。例えば、 if 式 thenというコードがあったとして、仮にelseの綴りがekseになっていたとします。この場合でも、endifがあるので、ifブロック自体は成立してしまいます。今回作成しているような埋め込み型のインタープリタ(というかマクロプロセッサ)の場合、言語外の記述がソース中に普通に表れるので、人間が見ればすぐに間違いと分かる場合でも、ekseのスペルミスを指摘するようなエラーメッセージを出すのがなかなか困難です。 また、endifがなかったりスペルミスがあった場合でも、エラーの検出行のレポートが結構難しいのです。このような場合、エラーを検出した行は、ifが記述された行とするか、ソースファイルの終端行にするしかありません。しかし、いずれにしてもエラーメッセージを読んで、実際に問題がある行を特定するのはちょっと手間です。 そんなこんなで悩ましい部分もあるのですが、この手の仕事は面白いので、楽しくやっています。日程的に尻に火が付き出すと、楽しくとはいかないのでしょうけど。いずれ成果物を一般公開することになると思いますので、興味のある方は期待しておいてください。また、実装に使用しているBoost.Spiritに関するノウハウも、どこかで公開できればと考えています。 PR |
|
2007 02,10 13:39 |
|
今日のお昼にアニマックスでやっていた「フランダースの犬」を見ました。このアニメは我々の世代では知らない人はいないぐらい有名ですし、実際私も子供の頃には見ていたのですが、子供の頃に見るのと、今見るのとではずいぶん印象が違います。
この作品はあたかも悲劇の代表格のようにして扱われ、私自身も以前は可哀想な話という印象を持っていました。しかし、今見てみると、アニメの演出はともかく、どう見てもハッピーエンドに見えてくるのです。 考えてもみてください。主人公のネロ少年は、それまでずっと嫌われていたコゼツ(アロアのお父さん)の誤解も解け、夢にまで見たルーベンスの2枚の絵を見ることができ、唯一の願いが叶います。そして、愛犬のパトラッシュと共に、天に召されて神の祝福を受けるわけです。人間の死にざまとしては決して悪いものではありません。 確かに、貧乏で身寄りもなく、教育も受けられなければ、ひもじい思いもしたのでしょうが、そんな世俗的な薄幸さが些細なことに思えるほどの至福に満ちたラストシーンでした。 この作品の中で、最終的にもっとも可哀想だったのは、ネロではなくアロアだと思います。地獄に堕ちたわけでもなく、天に召されたのですから、死んでいくものは極楽です。しかし、残されたものは、なおも世俗にまみれた苦悩と付き合っていかなければならないからです。 そういう意味では、同じような結末を迎える「マッチ売りの少女」、「人魚姫」、「幸せの王子」といったアンデルセン童話の作品も、必ずしも悲劇ではなく、ハッピーエンドなのかもしれませんね。 |
|
2007 01,31 23:43 |
|
以前からずっと気になっていたのですが、何らかの経験年数を表すときに「~暦」と書く人が非常に目立ちます。というか、正しく書ける人より、「~暦」と書く人の方がなぜか多いぐらいです。
正しくはもちろん「~歴」の方ですね。 http://dictionary.goo.ne.jp/search.php?MT=%CE%F2&kind=jn&mode=0&base=1&row=4 「暦」は「こよみ」の意味ですからカレンダーのことです。パソコン暦というのは、パソコンの中のRTC(Real Time Clock)のことなのでしょうか?C言語でいう暦時間、すなわちtime関数の返す値のことなのでしょうか?あるいはそのカウント方法のことなのでしょうか?それとも、私が知らないだけで、そういう未知の暦法があるのでしょうか? 最近の若い人の国語力の低下はかなり深刻なようです。私が学生や新社会人のころも、やはり国語力の低さは指摘されていましたが、最近は特にひどいようです。決してこれは他人事ではなく、うちの小学生の長女の国語力もひどいものです。 「お父さん、どうやったら字覚えられるかな?」とか聞いてくるので、「100回ずつ書け。それでも自信が持てなかったらもう100回ずつ書け。字は体で覚えるしかない」といつも言わされます。世の中便利になったのはよいのですが、訓練のときは便利さに頼っては駄目ですね。ばかばかしいぐらい単純な繰り返しが必要なこともあるのです。 |
|
2007 01,12 11:27 |
|
かなり遅くなりましたが、新年明けましておめでとうございます。本年もどうぞよろしくお願いします。
というわけで2007年を迎えたわけですが、今年はいよいよ私も40歳の大台にのってしまいます。一足先に大台にのった妻には、区役所から「ナイスミドル」(ものは言いよう)と呼ばれて介護保険を要求されていることをからかっていましたが、いよいよ自分の番が回ってきました。 今回のタイトルにも引用したように、「論語」の為政第二には、「四十にして惑わず」とあるわけですが、今回はこれについて少し考えてみることにします。「惑う」という言葉は、ほぼ「迷う」と同義語ですが、他にも「うろたえる」とか「判断力を失う」といった意味があります。「迷う」ということに関していえば、こと私に関しては、おそらく一生迷い続けることは確かですが、「惑わず」とはどういうことなのでしょうか? 孔子が説く「四十にして惑わず」とは、「40歳で狭い枠にとらわれなくなる」という意味だそうです。早い話が、目先のことに振り回されず、大局観をもって事に臨むようになるということでしょうか。まあ、その程度なら何とかなりそうな気がします。 しかし、よくよく考えてみると、15歳頃に学問を志し、30歳で自立し...ということであれば、どれをとってもちょっと遅すぎるような気もします。それとも、私が考えている「学問を志す」とか「自立する」というのと、孔子の考えるそれとは、かなり隔たりがあるのでしょうか? 何にせよ、私は孔子でもなければ儒教徒でもないので、細かなことはどうでもいいです。他人と比べて、早い遅いといってみても仕方がありませんから。それより、今後の身の振り方をそろそろ考える時期に来たような気がします。 今までは、長い間フリーランスの立場で、会社を設立してからも実態は何も変わらなかったのですが、現状維持というのが実は一番難しいことをずいぶん前から感じていました。自分自身も年をとるし、周囲の状況も変化するのに現状を維持するというのは、ほとんど荒波の中で姿勢を制御するぐらい難しいことなのです。 周りからは、会社の規模を拡大する路線を目指すように、ことあるごとに勧められます。確かにそれも一理あります。しかし、私としては今の小規模な活動で、自分の好きな仕事だけをやっていくスタイルの方が好きなのも確かです。もっとも、そうした好き嫌いは、とらわれるべきではない「狭い枠」なのかもしれません。 |
|
2006 12,17 16:37 |
|
我が家では、夫婦そろってコーヒーが好きです。近所の商店街で、その場で焙煎してもらったコーヒー豆を買ってきて、ブラックで飲むのが定番のスタイルです。このような飲み方に慣れてしまうと、はっきりいって喫茶店で飲むよりおいしいので、どうしても舌が肥えてきます。
ところで、コーヒー豆を買ってくるのはいいのですが、必ず最後は中途半端な量が残ってしまいます。同じ種類の豆ばかりを買っているなら、新しいものと混ぜればよいので問題はないのですが、異なる種類の豆が少しずつ残ってしまったりするわけです。 そこで登場するのが、「特撰残り物ブレンド」です。ブレンドといっても、テイスターがちゃんとブレンドしたものではないので、決して調和した味にはなりません。 特撰残り物ブレンドのコーヒーを口の中に含むと、この辺はバリアラビカ、こっちはマンダリンという具合に、明らかに別のものがパッチワークのように混ざり合っているのが分かります。さすがに一度にいくつもの味が楽しめるといった代物ではなく、決してまずくはないのですが、何となく変な感覚になります。 特にこのような飲み方はお勧めしませんが、何種類のブレンドまで判別できるかに挑戦するのも、遊びとしてはおもしろいのかも知れません。 |
|
ソフトウェア開発 ホームページ制作 はんこ
![]() |