Syntax highlighter

2006-11-29

昨日の話

ブライダルリング(であってるのか?)の送り方を提案する会社から電話があった。
ああ、栄で歩くたびに声をかけてくる会社か、とすぐに分かった。
(しかし、なんでよくそういうのに声をかけられるのだろう?)
風呂上りだし、寝ようかと思ってたし、適当に受け答えてた。
向こうも商売だし、話の核心に徐々に持っていく、
相手:「結婚って考えてますか?」
ほれきた。
割と真面目に答えてみた。()内は心の声。
俺:「(相手いないし、)興味ないですね」
相手:「結婚しないんですか?」
俺:「(積極的に相手を探すつもりないし、)しないつもりですよ」
相手:「諦めてるんですか?」
俺:「(諦めてるというか・・・)そうではないですけど、する気はないですね」
相手:「50歳、60歳になっても独りでいるんですか?」
俺:「(そんな年まで生きてるつもりないし、)そうです」
ここまで言ったら、流石にこれ以上は無駄と分かったらしく、電話をきりました。
はっはっは、これだけ言ったら流石にぐぅの根も出まい(゚∀゚)

・・・・・・アレ、オカシイナ、メカラヨダレガ・・・・・・

2006-11-25

抽象構文木

なぜか昨日の投稿が過去ログでは真っ白なんだけど?
まぁ、いいか。

spiritは抽象構文木を構築することもできるらしい。
で適当に作って動かしてみたんだけど、
どうも予定通りの構文木ができない。
root_node_dとinner_node_dの組み合わせがおかしいんだと思うんだけど。
もう少し調べないといけないかなぁ・・・
セマンティックアクションを使うと文法を複数ファイルに分けるのが大変だけど、
構文木を構築すると割と簡単にいけそうな感じがする。
ただ、その後に解析するのが大変かもしれんが。
どっちを選択しようか迷うが、とりあえずきっちり理解しないと構文木が構築できない。

2006-11-24

いじめ

2連続で取り留めないことだなぁ・・・
このブログにカテゴリってないのかなぁ。

TVで太田総理がやっていて、いじめに関してのマニフェストを出してたのをみて、
自分の学生時代(大学除く)を思い出してた。
思い出すまで忘れてたけど、そういえばいじめにあってたなぁ、俺。
今の僕を知ってる人は「ありえない」と思うかもしれないけど、
小学校の4年くらいまでいじめられていた気がする。
ま、いじめといっても不本意なあだなで呼ばれていたくらいだけどね。
それでも小学生の自分にとってはかなり嫌だったんだよね。
とにかく放課になるのが嫌だったし、そのあだ名で呼ばれるからね、
時には学校に行きたくないと思えるくらいね。
ここまでは単にどうでもいい話なんだけどね。
問題は小学5年以降いじめられてた記憶がないんだよね。
なんでだろうって思って思い出してみたんだけど、
すごく今の自分の根底を作ってるなぁってことで解決してた。
すごく簡単なんだけど、そいつのことを完全に自分の世界から排除してるんだよね。
小学校の時には朝と2時間目と3時間目の間と昼休みに長い放課があって、
当時は外でドッジボールをするのが普通だったんだけど、
それをやってる集団に一切参加してないんだよね。
物事に固執しない、集団より1人を好む、ある日突然宝物がゴミになる、
この辺りの性格は多分このときに培われたのではないだろうか。
そのうち呼ばれるとそいつを無言で殴るようになった気がするが。
そういえば、その当時先生にあだ名で呼ばれるのが嫌だと訴えたけど、
全く改善というかアクションはなかったなぁ・・・
なんて思われたのかは全く分からんけど、
人のことを7割は疑っている性格もこの辺からなんだろうなぁ。

TVの内容は「いじめをなくそう」というスローガンを無くそうってマニフェストだったんだけど、
いいんじゃないかなと思えたね。
あるものだと思った方が覚悟ができるんじゃね?
いきなり殴られるより、殴られる覚悟をしておいた方がダメージ少ないし、
対処の使用もあるだろうし。極論かな?
そういえば「学校の癌」って発言をしている芸能人がいたなぁ。
どうしようもないのもいるかもしれないけど、ってか実際いるけど、
その発言はどうなんだろう。
それを何とかできない環境もどうかと思うけどね。
何が言いたいかというと、
死ぬ勇気があるなら、限界まで抗ってみたら?
ということかな。
(これ読んで、それを言いたいたかったと分かった人はすごいよなぁ)

2006-11-22

カレー

ジャズドリーム長島でカレー用スパイスを買ったので、
(服を買いにいったつもりが、なぜかスパイスが手元に・・・orz)
カレーを作ってみた。
レシピもあるので、特に難しいことは何もなかったが、とりあえず感想。
レッドチリ(赤唐辛子)を3本入れたら割と辛くなった。
某先輩なら即死だろう。
味は、ちゃんとカレーの味がした。
ガラムパウダーがカレーの味と色をだして、レッドチリが辛味なんだろうね。
その他のスパイスはよく分からないけど、ないと一味(風味?)足りないのかな?
カレールーから作るのとは違って、とろみはない。
煮物を作るよりは難しいけど、シチューをホワイトソースから作るよりは簡単かな。
スパイスはまだあるし、しばらくは楽しめそうだ。

2006-11-21

プリミティブ

相変わらずspiritのことである。
spiritは自前でファンクタを作らないと標準でくっついてるのでは間に合わないことが多い。
ということで、マニュアルに従ってファンクタを作ってみた。
(これはspiritのサンプルに存在しているファンクタだが)

struct print_val
{
  template < typename IteratorT >
  void operator()(IteratorT first, IteratorT last) const
  {
    std::string str(first, last);
    std::cout << str << std::endl;
  }
};

なんのことはない、マッチした「文字列」を表示するだけなのだが、
これが2時間くらい悩むもとになった。
上記のファンクタを以下のセマンティックアクションに適用させた。

  +anychar_p[print_val()]

これがコンパイルエラーになるのである。
予定通りにするためには以下のように記述する必要がある。

  (+anychar_p)[print_val()]

演算子の順番の問題だけなんだけど、
anychar_pはあらゆる「1文字」にマッチするので、
ファンクタで定義したIteratorTがおかしなことになるということだった。
しかも、コンパイルエラーが

  const charはconst char*に変換できない

とでるだけだから、知らなきゃ意味不明なコンパイルエラーになる。
こういったことが起きないように、文字列を解析するパーサを作成した方がいいのかもしれない。

2006-11-17

boost::spirit::file_iterator

せっかくだから連投(いつまでこのペースが持つか)
spiritを使っていてファイルの読み込みをどうしようか迷った。
今まではとりあえずこんな感じにしていた。

ifstream ifs("filename");
string s;
s.assign(istreambuf_iterator<char>(ifs), istreambuf_iterator<char>());
parse_info<> r = parse(s.begin(), s.end(), grammar());

しかし、これではあまりにもなんだかなぁ感が拭えなかったが、
spiritにはfile_iteratorなるものが用意されているらしく、
こんな書き方ができた。

file_iterator<> first("filename");
file_iterator<> last = first.make_end();
parse_info<> r = parse(first, last, grammar());

減った行数としては1行だけど、ちょっとスマートに書けてる感じがする。

blogに移行したら、mixiの日記が消えてしまった。
ああ、レシピの備忘録が・・・(つД`)

ブログ作ってみた

mixiの日記だと自分がメモったことを見るのが面倒なので、
外部のブログに書いてみることにする。
単にブログというものをやってみたいだけだったりもするが・・・f^_^;