ぎょーむ日誌 2003-05-08
2003 年 05 月 08 日 (木)
-
0900 起床.
だめだ.
生活周期が.
コーヒー.
0920 自宅発.
また雨でもふりそうな曇.
0930 研究室着.
-
まぬけなことに
朝から Perl なんぞに没頭してしまう.
ひじょーに基本的な誤解をしていたことに気づいた.
use strict
使用している状況であっても
(とくに vars
とかで指定してない)
my
変数は「内側」のブロック ({...}
)
に簡単に入り込める!
-
たしかにこういうのはよくやりますよ.
use strict;
my $counter = 0;
for (1 .. 10) {
$counter++;
}
しかし,これも OK だとわかったんで少しおどろいてる.
use strict;
my $counter = 0;
&increase_counter;
...
sub increase_counter
{
$counter++; # これはエラーにはならず,$counter がちゃんと増加
} # 私としてはエラーになってほしいところ
つまり形式的にブロックであればループだろうが
サブルーチンだろうが区別してない,
ってことだな.
$counter
はグローバル変数のごとくふるまっている.
というか,
上の例における
$counter
のスコープというか名前空間を考えると,
どこであっても
main::$counter
だから問題ないわけだ
(うん?
そうすると sub
の中で
my
した場合の「ふるねいむ」は?).
-
ともあれ
他の言語との「見かけの類似性」にだまされてはいかん
……
という教訓.
これを「発見」したときには,
自転車走行中ブレイキ破損的な感覚を覚えたんだが
……
考えてみれば私は
sub
の中ではしつこく my
を宣言する習慣なんで
(私は sub
のブロックが特別あつかいされてる,
と勘違いしていた),
そのおかげでたぶん問題ないと気づいた.
とはいえ,
これはかなり危険な仕様ではなかろーか.
-
これはエラーになるから良し
……
なんだろうか?
use strict;
sub increase_counter
{
$counter++; # エラー (コンパイルエラー)
}
my $counter = 0;
&increase_counter;
-
このあたりを調べているときに,
Perl 5.6.?
あたりから
新しく追加された邪悪系くみこみ関数 our
なるものがあるというのをついでに知ってしまった.
くわしくは perldoc -f our
.
さらにこれで生じるケガれに対応するためか
use warnings
なる標準ライブラリの追加も
……
-
なんだかよくわからぬ高校生むけ森林教科書問題に
すこしばかりまきこまれる.
てきとーに回避.
-
昼飯.
昼飯後に農学部迷宮に昨日借りた Journal どもを返しにいく.
-
小林さんからコメントいただいたので,
当方の意見をまとめていると
……
-
苫小牧からまた借金とりが.
といっても今日は村上→久保ではなく,
日浦→かとーという組みあわせ.
と思ってたら,
私にもなにやら質問を.
-
順序変数の統計モデリングか
……
あえて離散・上限下限あり分布と読みかえて考えるに
ちょっとそれは一般化線形モデルでは説明できそうにないですねえ,
というワクぐみで簡単な統計モデル
(上下を切断された幾何分布とか仮定)
をでっちあげてみる.
日浦さん帰ったあとに,
かとーさんと相談してるうちに
「幾何分布を仮定できるぐらいなら,
さらにもう少しひねって
logistic 回帰 + 線型結合
みたいなこと
(つまりglm コンビネイションわざ)
やっても悪くない
(ずれたら overdispersion とかいってごまかすか?)」
と気づく.
-
いや,
べつに glm をとくに使いたいわけではないけど,
生態学における統計学応用の新しめの手法に
まだ慣れてないヒトには,
とりあえずロジスティック回帰とかを持ちだしたほうが
いくらかはとっつきやすいかなあ,
というぐらいで.
-
……
また Perl プログラミングなんぞで 3 時間も遊んでしまった.
先日つくったらくがき帖 cgi プログラムをコマンド制御式にした,
といいますか.
つまりよくある「掲示板」みたいなのが,
にくむべき電気鼠制御ではなく
web ブラウザー上でもコマンド入力で
項目削除・編集・入れ換えができちゃう,
というぢつに独創的かつ画期的な
……
って,
ああ,
なにやってんだか.
すでに夜ぢゃん.
-
はらへったので撤退.
1940 研究室発.
今晩も寒い.
暑いよりは 100 倍いいけど.
2000 帰宅.
体重 71.8kg.
-
そして夜は仕事がますますススまん.
体力ぎれか?
-
[今日の運動]
-
今日もうだうだしてたんで北大構内走してない
……
やはり夕方に走ろうとするより
「昼休み」
のほうがいいのかなあ
-
[今日の食卓]
- 朝 :
で,
やはり朝飯はいらないのでは,
と
- 昼 (1240):
弁当.
研究室お茶部屋.
米麦 0.7 合.
ハクサイ・ホウレンソウ・タマネギ・ショウガ・マイタケの炒めもの.
- 晩 (2130):
米麦 0.9 合.
ハクサイ・タマネギ・シイタケ・ショウガ・ホタテの炒めもの.
どうも最近 (体感的に) ミネラル不足ぎみなんで
久しぶりにホタテを買ってしまった.
ありがたいことに当地では安い
(250g むき身 200 円).