Hatena::Grouptenmon

ひこにっき

|

2011.08.31

Teng::Schema::Loaderでスキーマ定義を省略する

18:19

OBSOLETED

0.14_02 にて、Teng::Schema::Loader->load が内部的にTengのインスタンスを作成するようになったため、このコードはうまくいかない。 g:tenmon:id:aql:20121213:1355369999 を参照せよ。

開発中なので、ちゃんとしたスキーマ定義は省略したい(変わりそうだし)のだけれど、いちおうモデルクラスは作りたくて、プロダクトでもモデルクラスだけ直せば大丈夫と言うことがやりたい。

http://search.cpan.org/perldoc/Teng::Schema::Loaderの例は、スクリプト一本で何とかするときに使えそうだが、モデルクラスは定義しつつLoaderも使うというような、中間辺りをやりたい。

ついでに*_atのinflate/deflateを仕込みたい。

usage

use My::Model;
my $m = My::Model->new;
my $item = $m->single( 'table', { id => 1 } );
トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110831

2011.08.30

もやもや感がちょっと解明出来た

10:22

つまりstd::coutは、「驚き最小の原則」に反している(しょっぱなから*1)と言いたい。初歩から何たるカウンターだろう。

*1C++Hello Worldは、std::cout << "Hello World\n"; などと紹介されることが多い

トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110830

2011.08.22

怖くない理由

13:22

エレーニン彗星が怖くない10の理由

過半数が、どういう文脈であればその疑問が発生し得るのか全く理解出来ないレベル。相当面白い文脈が用意されているに違いないが、しかし…NASAが真面目に答えなければならないようなものなのか。

USではこんな疑問がまかり通る状態になっているんだろうか。それとも単なるネタ?

まぁ、ネタであって欲しいが。面白いと思うよ、ネタとしては。しかし真面目にこの疑問が出てくると言うのであれば、教育体制を考え直したほうが良いと思う。真面目に。

# これが「対岸の火事」であれば良いが…。

ところで、

3,500万km先にあるそのような物体が海の干満に影響するくらいなら、私が乗っている小型バイクの方がまだ影響が大きいでしょう。

エレーニン彗星が怖くない10の理由

とかパブリックなところで書けちゃう文化は、ちょっと羨ましくもある。

MargeryMargery2011/10/12 16:14Yup, that shloud defo do the trick!

トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110822

2011.08.02

lambda

19:37

http://tenmon.g.hatena.ne.jp/aql/20100512/1273650066

C++0xで。

int n = 10;
std::function<int(int)> fib = [&](int m)->int {
    return m == 0 ? 0 : m == 1 ? 1 : fib(m-1) + fib(m-2);
};
printf("fib(%d) = %d\n", n, fib(n));

blocksもそうだけど怪しげな記法が気にはなるんだけど、まぁ、なるほど。いや素晴らしい。早速使いまくってる。

感想

13:04

うーんとつまり原理主義的な人なのかな。ふむ。寄らないでおこう。

トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110802

2011.07.28

lua_next

12:41

lua_pushnil(L); // <- 最初のkeyとしてnilを積む
while ( lua_next(L, t) != 0 ) { // -> stackにkeyとvalueが積まれる
    // ...
    lua_pop(L, 1); // <- stackからvalueだけpopする
}
lua_pop(L, 1); // <-- ここについて

最初にnilを足し、lua_nextもkeyを残すので、何となく、上のように最初に足したnilもしくはlua_nextで残っているkeyをpopしなきゃならないのかな、と思ったけれど、実際動かすと一つ余計にpopされてしまう。

http://pgl.yoyo.org/luai/i/lua_next

この解説を先に見てればなぁ。

lua_nextは、「keyをいったんpopしてから、次のペアがあればkeyとvalueをpushする」みたいな動きをするらしい。なので、次のペアがないときは、「何もしない」ではなくて、「keyがpopされる」となる。従って現実には、最後にpopする必要はない。

トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110728

2011.07.26

libcmtにまつわる競合のエラー

15:59

VCの話。どこかのプロジェクトで、「C/C++ > コード生成 > ランタイムライブラリ」が正しくない値に設定されているパターンが多いような気がする。

とは、エラーを見てても気付かないような。

もともと、コンパイラの教えてくれるエラーは不親切だったり不自然だったりするが、多分IDE全般の話だとは思うけど、必ずしもコード中に原因がある訳じゃないので、良くハマる。

Lion

09:31

基本的に、特に問題なかった。そもそも自分は、emacsperlが動けばだいたいOKなので、ある意味ハードルは凄く低い。突然UNIXやめますとか言われると困るが(そうしたら上でVM動かすんだろうが)、そういう次元の話。

全画面モード

全画面モードは、思ったより良かった。もともと、Macには全画面と言う概念がなかったので(本当に無い訳じゃないが)、デスクトップが見えなくなるのかーと不安になっていたが、これは本当に表現の問題に過ぎないのだが、全画面というより、そのアプリ用の画面(Spacesにおけるspaceみたいな)が追加されるというものになっている。切り替えもジェスチャを使うとかなり楽なので、結構良い。MailやiCalはもともと一つ画面を割り当てていた訳で、実際の操作としては大きく変わらなかったが、見てくれは良くなったと思う。

ま、使いたくなければ使わなきゃ良いだけなので、それほどどうと言うものでもない。ただ、思ったよりもずっと良かったと言うのは事実。多分自分は、MailとiCalで常用するだろう。

アプリケーション間のドラッグ&ドロップを含むような作業の時にどうするのかは考えておく必要があるかも。そういう場面はとても限られているものの、自分であればテキストを選択してデスクトップドラッグしてクリッピングを作る、とかをよくやる。もちろん、アプリケーション毎に全画面にしたりウィンドウにしたりと言うのは自在に選べるのだから、まぁ大した問題ではないだろう。

あと、ターミナルの全画面モードは喜ぶ人いるんじゃなかろうか。

Spaces

Spacesは統合されていて、Mission Control画面からデスクトップを追加出来るが、これ、並べ替えは出来ないんだろうか。これまで4 spaces作って作業していて、「ここはこれ」みたいな役割を決めていたのだけれど、まぁそういうやり方が前時代的だと言われればそうかも知れないが、何となく並べ替えたいなと言う気持ちになったりする。まぁ、多分さほど困らないが(どうせ「ここはこれ」と決めていたわりに、必要なウィンドウを探してぐるぐるしたりしてたんだし)。

マルチタッチ

ウチには稼働しているデスクトップ機が無いのでまあ良いんだけど、マルチタッチが出来ないと辛いんじゃなかろうか、とは思う。かなり多くの場面でマルチタッチジェスチャの役割が増えていて、出来ないと…いやまぁ、要するに昔はホットスポットでどうにかしてたんだから、たいして変わっちゃいないかもしれない。つまり、マルチタッチインターフェイスが使えなかったからと言って、本当に困るって訳でもないと思うが、使えると出来る幅が大きく広がる、と言う事だ。

実際のところ困るかどうかというのは、会社のマシンをアップデートすると分かる。こればっかりは、やってみないとなぁ。

Dashboard

Dashboardは、Mission Controlからアクセスするデスクトップのようなものの一つになったが、これに関しては前のほうが良かったかなと思う。いや、同じ事なんだが見ため的に。好みの問題。

Mail

Mailは本当に良くなった。特にスレッド表示。これまでのスレッド表示は、いちいちスレッドを開いたりしなきゃならなかったし常用出来る代物ではなかったけれど、こんどのはスレッドを開くと言う動作はなくなっていて、とても小気味よく使える。iOS系でのフィードバックが良い方向に働いていると思う。

2本指スクロール

地味にハマるのは、2本指スクロールなんじゃなかろうか。

これまで、2本指でのスクロールは、ウィンドウのサムを動かしているイメージで、指を動かした方向に(例えば下に動かせば下に)スクロールしていた。Lionでのデフォルトは逆で、iOS風に「画面を触ってずらしている」イメージになる。

これは設定で変えられるのだが、この動きは他の部分にもあり、例えばLaunchpadでページを手繰るに左右にずらすが、このときはiOSで慣らされているためか「画面を触ってずらしている」イメージのほうがしっくり来る。と言うか、意識せずにそれが出来る。慣れって恐ろしい。

ともかく、どうしようかなぁとひとしきり考えた末、スクロールもiOS風でしばらく慣れてみる事にしてみた。ま、慣れなんてものは、しばらくやってりゃ気にならなくなるものだし。

Launchpad

ここまでLaunchpadが出てこなかった事から分かるかも知れないが、見た目楽しいのだけれど多分自分はあまり使わないなーと言う感じが…。ま、沢山機能あるんだから、全部使い切る必要なんてまるでない。

画面がタッチパネルになれば、その時には真価を発揮するのだろう。たぶん。

afp/smb

地味にダメージなのはafpの変更かも知れない。会社のサーバに繋げなくなってしまったらしい(自分の会社のマシンはまだSnow Lepard)。まぁ…sambaで繋ぐから良いけど。ところで、Windowsネットワークとの親和性はさらに良くなったとか。ふうむ。

使えないアプリとか

自分は幸いにも(前述の通りemacsperlくらいがクリティカル、時点にsynergyとかなので)たいして影響はなかった。Rosettaが使えないと嘆いている方々もおられるが、Rosettaは必ずしも最良のソリューションではなく、あくまでPPC->Intelの移行をフォローするためのものだし、少しずつ過去のものたちがサポートされなくなって行くのは仕方がないと思う。

ま、とはいえ、当事者はそんな達観したことは言えないと思うけど。

会社

そろそろアップデートしてみて、トラブルが起きるかやってみようかなと思っている。会社のマシンはTime Machineに繋がりっ放しなのでさほど怖くない。一番不安なのは、マウス操作か。

BuckieBuckie2011/10/14 09:07What a joy to find such clear thikning. Thanks for posting!

トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110726

2011.07.08

微熱

14:25

ここのところ咳が酷くて辛いので、いつもの病院に行った。とりあえずいつも通り、風邪の薬と喘息の薬をもらう。というか、時間がなくて薬は受け取れなかったけれど、処方箋は貰った。熱も計り、37.4度だったが、ここ五年ほどは常時微熱が出続けているから、37.0±0.5度くらいなら誤差の範囲のような気もする。

微熱が出続けるのは大抵において良くない兆候だと言うが、とはいえ数年にもなってしまってなお大トラブルは起きていないので、本当に良くない兆候なのかどうか自信が無い。また、年単位になってしまうと、なかなかそれで病院に相談にも行きにくい。

「微熱がずっと出てて…」「どのくらい前からですか?」「うーん、5年くらい?」「…。(もっと早く言えよ!)」

容易に想像出来る。そもそものきっかけも時間に埋もれてよくわからなくなってしまっている以上、原因を探して駆逐するのは相当に難しいだろう。

なので病院に行くのは、必然的にもうちょっと良くない事になったときに限られている。そういうときは「咳が酷くて」のように相談するのだから、微熱問題に向き合う事は、ない。

微熱が厄介なのは、結局のところ「微」だからである。確かに微妙には影響しているのだろうが、生活にそれほど大きな支障はない。放置で直る可能性も高い。健診などは、痩せている以外はまっさら綺麗なものだ。などとやっているうちに年月が経ち、常態がどういうものか分からなくなり、デッドロックする。確かにその意味では、良くない兆候であったと言える。

まぁ、どこかしらで何でもないときにふらっと病院に行って、相談してみようとは思っているのだけれど。

だ2011/07/08 14:45ちゃんとしなさいな!

aqlaql2011/07/08 15:44は、はい…

トラックバック - http://tenmon.g.hatena.ne.jp/aql/20110708
|