ども。たです。
本日もせっせと ocean script を書き書き。
午前中にひと通り書き終えて、チェック。
そして、当然のように出まくるエラーをせっせとつぶす。
とりあえず if 文でどハマり。。。
ついついクセで
if ( ( 条件文 ) then
~
else
~
) ; end of if
な~んて書いてたところ、ずーっと構文エラーで落ちまくり。
で、ふと思い立ち、
if( ( 条件文 ) then
~
else
~
) ; end of if
ってしたら、通るんですね~w
ちなみに、違い分かるかな?w
ocean には他の言語のように、命令終了の合図として
「;」がいらない分、どうやら空白 (スペース) で命令の
区切りを意識している模様。
なんで、if と ( の間にある空白がダメだったってオチ。
#そもそも ocean では「;」がコメントアウト。
その他にも、普通に spectre を流す分には、
自分の組んだ数式に答えがなくても問題ないが、
ocean だと、そこで落ちるため、いちいちその数式に
答えがあるかどうかを調べてから、数式を評価
させるようにしたり。。。
何よりも面倒だったのは、ocean の吐くエラーが
えらく不親切なこと。
○○なんて文字列知らねぇ!とか、○行目が
間違えてるよん、みたいな感じのエラーなら
まだ対策のしようがあるものの、さっきの
if 文の構文エラーなどは、一体どの if 文が
引っかかっているのかすら分からない始末。
#ま、結局全部だったんだけど ^^;
なんで、最終的には、要所要所に、
printf でアンカーを打って、とりあえず、
ここまでは正常に流れているってのを確認しながら
デバッグしてますた。
ただ、スクリプトができてしまえば、400 近い条件を
勝手に流して、さらにその結果まで tab 区切りの
csv ファイルチックなファイルを吐かせることもでき、
今まで、条件を手で変えては、run して、結果を
エクセルに手打ち、、、なんて手順を踏んでいた
操作が、ocean 上でスクリプトを実行するだけになり、
こいつはとんでもないインパクト。
手でやったら、人が完全に張り付いて 2 ~ 3 日かかる
作業が、スクリプト実行して、ひと晩待てば結果の
ファイルまで作成されて出てくるってんだから。
スクリプト作成に丸々 2 日ほど費やしたが、
スクリプトの流用性などを考えるに簡単に
取り戻せそうな感じもあるので、なぜ今まで
手を付けてこなかったのか悔やまれてならない。
まー、ここで気付けたことだし、まだ遅くはないさw
またシステム管理者から怒られちゃう位
sim. 流しまくっちゃおうと思いまつ (・∀・)
#ただ今回のは series な sim. なので、多分無理かなw
そんなこんなで。
では。
0 件のコメント:
コメントを投稿