2007年05月27日

千尋の谷へ突貫 自分を探す 呼吸用文字列開拓事業

SRM350 DivI

不覚。250を捨てて500から始めて、数回の勘違いを経て1時間消費。
Systest被弾。バグっている覚悟でsubmitするもんじゃないなぁ。
ソースコードの先頭にバグが入っているのに、
Challenge されなくてよかった(ぉぉぃ

次に下手を打つと青くなってしまうので、もう負けられない。


- / - / - / - / - / - / - / - / - / - / - / - / - / - / - /
で、自分探しの為に田舎へ行ってみる。
自分は300円で証明されたりされなかったりするが、
土に触ったり、蜂やら蝶と戯れて自分を見つけなおす。

五月の祭りには参加しなかった。

- / - / - / - / - / - / - / - / - / - / - / - / - / - / - /
さて、以下に幾つかのコンテンツ商品の話が書かれている。
ネタバレが嫌いな人(例えば私だ)は気をつけろ。

とはいえ、国民総情報化社会のこのご時世だ。
アニメや関連商品の情報は勝手に流入してくるので困ってしまう。
そんな状況証拠が先にあるものと思いねぇ。こちとら江戸っ子でい(嘘
とにかく、手を出すのは評判が固まってからのほうが多いので、
情報の質はともかく、量ではハンデをもらっている私だ。
あまりいい傾向ではないが、性分なのでどうしよう(何

とまあ、既に露出も情報量も圧倒的と思われる作品なので、書き散らしてしまう。
恨むならこの記事を読んだ自分を恨むんだな(またか


秋葉原でゲリラ集団ダンスをしている映像やら何やらを散々見た挙句、
ようやく手を出してしまった「涼宮ハルヒの??」シリーズ。
以前は、第1巻を途中まで読んでおいて、
既刊分が多いという理由で敬遠したのであるが、
その後、ライトノベル系では、
「ゼロの使い魔」シリーズ(11冊購入)、
「吉永さん家のガーゴイル」シリーズ(14冊購入+コッペパン2つ)に
手を出し、既刊分に追いついてしまった自分をよく考えてみた。

量を敬遠した作品の4倍弱の量を買っているバカが一人居た。


さて、結局のところ、3巻目まで買って、ゼロの使い魔11、
九鬼鴻三郎の冒険1(このネーミングはどうなのよ? 誰の趣味だろう?)も買って、
まだ憂鬱しか読んでいないわけだが、これが最後の警告だ。
覚悟は完了したかな?
どちらにしろ、私は1巻しか読んでいないし、
本編やら後書きやら、商品展開やらで
ネタバレているところなので書いてよいと一方的に判断するものである。

で、ネタバレだが、
主要メンバー中、主人公の名前だけが出てこない事が、
冒頭のメンバー集めでは目立つ。
これが、演出の一つに過ぎないのか、重要な設定なのかはとても悩ましかった。
が、ネタバレている事実からの推測だが、基本的には演出なのだろうと思う。
ネタバレが解説の勝手なことならそれはそれで面白いが、
そんなことは無いだろうと好意的に思っておく。

ただの人間には興味が無いので、珍しい人々を探している彼ら(1人だけ?)だが、
少なくとも憂鬱の時点では、一見、異世界人分が足りない。
不足分からさらに深読んだ私は、王子様とお姫様が異世界人なのだろうと思う。
お姫様が王子様を異世界に連れ去るアブダクション物語というホラー展開だ。



私の趣味も相当偏って歪んでいるので、
統合思念体はアリシア人メンターたちを想起させるのだが、
細切れで見たことのあるアニメエピソードからすると、
もっと物質科学寄りの設定なんだろうか。
メンターはもっと人間くさかった(インターフェースは)し、
利他的だった。それ以前にアリシア人は有機生命体だったが。
あとは、地球人類を有機生命として破格の扱いをしたのは気になる。
展開を狭めるだけじゃないのか。
まあ、普通のSF展開する気はなさそうだしいいのかもしれない。


もう最近では、未来からくるのは最初から
クライマックスに決まっているので、
そこはおいておく、というか、私が理解できるネタが少なかった。
きわめて残念だ。
未来から来た赤いひとの話はあまり観ていないので対応できない。
スミマセン。


人間原理やら、五分前仮説やら、
特にエスパー少年関連の言い回しには、
SFとしてはベタな設定、概念をベタにさらり。
しかし、このあたり、ヒロインが因果の基点だというのならば、
ヒロインはSF小説なんかを読む人なんだろうか?
口ぶりや設定からするに、軽くは読んでいるようだが。
むしろ、「ムー」を読んでいるだけなのかもしれない(ぉ
それだったら、未来人より先に古代超文明人を探すか(何

既述のように、私も、現在を含む一時期、
ヒーローよりサブヒーローと言っている人間なので、
主人公には共感するところがある。
自分にできることの限界って、
すぐそこにあるとは思いたくないけど、つい考えてしまう。
でも、王子様って、お姫様にとってはヒーローにならなきゃなので、
みんなで善処しよう。> 王子様候補生


結局のところ、本編でも言及しているように、
「衝動」「行動力、原動力」としての
フロイト先生言うところのリビドーが、テーマの1つなんだろう。
(むしろユング先生的リビドーか?
 よくわかりません。こうですか!?)
ヒロインの長台詞も、発達段階的内容だし、
心理的物語がわかりやすく改案されているんじゃないか。

日本人口の2千分の1が一所に存在する野球観戦。
2千分の一は、今の私にとっては、十分大きい印象である。
高校当時はどうだったろう?
1年時なら、小さいと思ったかもしれない。

自分のクラスが他より良いところだと思っていたのは、
私もおそらくは、小学生まで。
ただ、私は、それはありふれたものなのだ、
ちっぽけな価値だったのだ、と思うんじゃなくて、
一種の身内贔屓、というか、インプリンティング、というか、
近くにあるものに好意を抱くのが人間(少なくとも自分)なんだ、
と理解したのだ。

白雪姫はお姫様が救われる物語だが、
sleeping beauty は王子様が救われるお話なのだ。
そんな違いは、この小説的には意図的に意味のある点ではないのだろうか。


全体を通じて、クライマックスまでは、あまりいい構成とは思わなかった。
あまり事件が起こらない(そういう話なんだからしょうがないが)のに、
エピソードが細切れで、流れが掴みづらかったのだろうか。
なんだかよく分からないが、読中の違和感はあった。
が、締めは上手くテーマをぶつけてくれて、お話として完成していた。
逆に上手かったのかもしれない。というか、上手いのだろう。
久しぶりに、テンポの違う作品を経験できた。

しかし、これを読むに先立って、SQLを使ってみたりしたが、
あまり役に立たなかったなぁ(ぉ


とまあ、これだけのことを考えさせる力のある作品でした。
評価されたのもむべなるかな、ふむり。
暫くはこのシリーズで呼吸できるでしょう。

眼鏡属性に加え、委員長属性を兼ね備える私としては、
委員長の退場は残念であった。再登場に希望を託そう。
誤植らしきものや、微妙な表現も散見されたが(H19,04/05 第三十一版)、
いずれにせよ、
高校生の青い精神と行動って懐かしくていいですね、というところか。
恋でも探しに行こうか、というところで、今週はお開き、また来週。
# 本当に来週なにか書くのか?


- / - / - / - / - / - / - / - / - / - / - / - / - / - / - /
オタク狩りが出現するというので、秋葉原に通っている私ですが、
幸運にも、エンカウントはなし。
よく考えると、買うものがあるときには、amazon だったりするし、
日曜日のほうがにぎやかで楽しいので、
自分は金曜日にはあまり訪れていないのだった。


で、tyksで大打撃を受けた私は、
今回も amazon を利用したわけですが、
これは、kmar なのか、gdgd なのか。

愚かなので、思わずプレリュードまで商業思想の為に浄財を投じた私だ。
とまあ、今週は、

夢を追いかけるよ

# といっておきながら、サザンクロスとともに後回しにしようかとも。
posted by Hacky=SugarSun at 01:39| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

2007年05月10日

私も不安ですが、生きていますの報告と、久しぶりに触った camomile のお話

久しぶりに書くのがこういうことなのはいいことなのかどうなのか、
は置いておく。
書きたいことは別にもあるような気もしないでもなく。

- / - / - / - / - / - / - / - / - / - / - / - / - / - / - /
http://camomile.sourceforge.net/index.html.ja.jis
変態オコジョではなくて、文字コードごにょごにょライブラリの話。

しばらくO'Caml でCGIを書きたい熱から離れていたので、
0.7.* になっていたことには気づかずに。

なんとすばらしいことに、
> 2006/08/14 Camomile 0.7.0がリリースされました。
> README これまでハードコードされていたデータファイルのディレクトリがファンクターにより変更できるようになりました。
だそうで。
レンタルサーバーみたいなところに設置するケースを考えて、
可搬性を持たせるために、
$ ./configure --datadir='./camomiledata'
みたいなことをしていた私としては大歓迎であります。

というわけで、早速 configure & make
……

- * - make 時の出力 ここから - * - * - * - * - * -
(前略)
cc -E -P -I -I internal -I public -I toolslib -I . -o public/main.ml -x c public/main.mlp
In file included from public/main.mlp:10:
public/iMap.mli:8:13: missing terminating ' character
(中略)
public/uText.mli:51:35: missing terminating ' character
public/uText.mli:67:29: missing terminating ' character
In file included from public/main.mlp:46:
public/xString.mli:33:29: missing terminating ' character
make: *** [public/main.ml] Error 1
rm internal/uReStrParser.ml
- * - make 時の出力 ここまで - * - * - * - * - * -

……あれ?
というわけで、
public/main.mlp から public/main.ml を生成するときに
cc -E を使っているようですが、
ソースコードは C言語じゃあないので、
プリプロセッサに怒られています。

main.mlp をみるに、大げさなことをしているわけではなく、
各 module をinline展開させているだけなので、

# 話は少しそれますが、module の相互関係がよく設計されています
# 最近研究室でそういう話をしていたので、
# signature が気になったりしました。 fibration 万歳!
# ……実例を見ると、やっぱりあまり、気持ちよくはないなぁ

- * - preproess_cheat.pl ここから - * - * - * - * - * -

#!/usr/bin/perl
use strict;

while(my $line = <STDIN>){
if($line =~ /#include +"(.+)"/){
for my $cand ('internal/'.$1,
'public/'.$1,
'toolslib/'.$1 ){
if(-e $cand ){
system('cat '.$cand);
last;
}
}
}else{
print $line;
}
}

- * - preproess_cheat.pl ここまで - * - * - * - * - * -

なんてものを用意して、
$ perl preprocess_cheat.pl < public/main.mlp > public/main.ml
でごまかしてみました。
これでまあ一応ビルドできるわけです。

make が走り始めてすぐに、module Main を使わないなら、
Makefile から main 関連を削ればよかったのかも、とも思いましたが、
結果が cc -E が動いたときと同じになるはずなので、
こっちの方が真っ当でしょう。

楽だし(笑

- / - / - / - / - / - / - / - / - / - / - / - / - / - / - /
open CamomileLibrary

さて、
module CharEncoding の設計に変更が入っているようで、
functor Make に代えて、
データディレクトリに関する設定を受け取って、
以前の CharEncoding 相当の module を作る
functor Interface が実装されています。

また、ハードコードの設定を用いる、
以前の CharEncoding 相当の module が Default.Camomile.CharEncoding として
用意されています。

# README には Main.Camomile と書かれているのですが
# どうやら、Default.Camomile だと思います。

- * - こんなかんじ ここから - * - * - * - * - * -

open CamomileLibrary

module Hard_coded_Istr =
Default.Camomile.CharEncoding.Make(UTF16)

module Config =
struct
let datadir = "./camomile/database"
let localedir = "./camomile/locales"
let charmapdir = "./camomile/charmaps"
let unimapdir = "./camomile/mappings"
end

module CEInterface = CharEncoding.Configure(
struct
let datadir = "./camomile/database"
let localedir = "./camomile/locales"
let charmapdir = "./camomile/charmaps"
let unimapdir = "./camomile/mappings"
end
) (* or CharEncoding.Configure(Config) *)

module Istring = CEInterface.Make(UTF16)

- * - こんなかんじ ここまで - * - * - * - * - * -
# ほんとは Main.Make を使う方が想定された使い方なのかも
# でも、Main って名前は衝突しやすいし、ちょっと変な気もする。
# CamomileLibrary.Make(Config : ConfigInt.Type)
# と
# CamomileLibrary.Default
# みたいな並列のほうが私には直感的な気がする。
# signature の fibration も少しは気持ち悪くなくなるかも?(ぉ

## O'Caml の module 設計ではどういうやり方が主流なのかなぁ。
posted by Hacky=SugarSun at 05:20| Comment(0) | TrackBack(0) | 日記 | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。