トップ «前月 最新 翌月» 追記

はじめてのにき

ここの位置付け

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|

ToDo:


2006-12-01

_ なんか

w3m のパッチあてたら filter_gzip がうまく動かなくなったなぁ。

(18:42)


2006-12-02

_ updateSlot setSlot

うーん。

プロトタイプベースの言語なんかで、 こう、 = をメッセージにして代入なんてしたいわけだけど。

Class f = function() {}

これでいいじゃんて思うかもしれないけど、違うんだっ…

Class に f ってメッセージ投げて さらに = ってメッセージが飛んでると考えると、 f に対するメッセージで Class をいじるという違和感がっ…! しかもオブジェクトが、「自分が今どの名前で呼ばれているか」 とかを知らなければならず、 これはとても気持ち悪いのです。

うーん。

Class#f=

しか無いかなぁ?

いや setSlot の方はなんとでもなるんだが updateSlot の方がどうにもこうにも。

hmm.

(02:14)

_ SFCマリカーの

おばけぬま1の 最終カーブをふくらまずに曲がれるかというようなことを なんとなく考えた。 なんとなくうまくやれるとかなりかっこいい気がしたので 実家帰ったらやってみよう。

(04:04)

_ うーん

estmsater の動きがなんかいまいちだなぁ。

(05:27)

_ 他はまぁどうでもいいんだけど

C > C++ と PP >>>> Ruby をよく見るのには常々違和感。

速度あれこれのナンセンスさなんてよくわかっていても なんかやってしまう気持ちはよくわかけどねでもなぁ うーん。

まぁ自分のつきあってるものの感覚で考えるってのは あたりまえだけど正しいなぁ。 それをもって人にあれこれ言う感覚が理解しにくいというか。 僕のつきあってるものの感覚ではこれだけど、

http://shinh.skr.jp/testsprite/

これはたぶん二点において超絶偏りまくっている。

(06:28)

_ ほえ…

http://game10.2ch.net/test/read.cgi/game/1164444460/

結構好意的に受け入れてるんだなぁ。 ふしぎ。

もう一度やってみたが面白いと思えずーなむー。

(19:15)

_ 俺はソニーをやめるぞー

Wiiiiiiiiiiiiiiiiiiiiiiiiiiii

って誰か言ってるに違いないと思ったけど言ってなかった。

http://tinyurl.com/u3ot2

(20:08)

_ アルファクリッパー!

そんな単語あるのか!

(20:49)

_ わかんないなー

~/test/sizeof.c を開こうと思ってうーんかぶりそうだなと思って ~/test/sizeof_magic.c にしてみたらなんと 前回チャレンジした時のソースが出てきたのであったー

(21:34)

_ ぐおお

わからんの俺だけか!

(23:07)

_ できたーーーーーーー

すごい勉強になりました!

http://d.hatena.ne.jp/kikx/20061202#1165058604

(23:11)

_ にはこが

2分でわかってしまった。

やるなあ

(23:14)

_ \bibstyle{plain}

知るか!!!

(23:34)


2006-12-03

_ ECS読了

読み終わってみるとなんかわりとどうでもいいなぁ…

union の話。肝心の実装の紹介は無しっすか。

std::string の話。どうでもいい話をえらいしつこく続けるなぁ。

あと汎用コールバックとかもどうでもいいかな。

うーんなんかなぁ。 序盤は本当に面白かった気がしたんだけどな。

次何読も。

これがおもしろそうか。 http://d.hatena.ne.jp/w_o/20061106#p4

積ん読的には Binary Hacks (積むなよ!(いや一応査読とかなんだで読んだんです(あらためてゆっくり読みたいと))) と 30日OS本と TRON 。しばらくは TRON かな。

(02:04)

_ 最近「!」をよく使います!?

「!」には主に三つの使いかたがあります。マスターしましょう。

  • 「!」が一つだと普通になんか強調って感じです!
  • 「!!」だとノリノリな雰囲気が出ます!!
  • 「!!!!」と三つ以上並べると馬鹿に見えます!!!!!

上級者は「!?」や「…!」も使いわけるといいでしょう。 さらに小文字も使うと良いです。 「...!」はなかなか風情があってよろしいです。

(02:25)

_ Google Co-op

http://www.google.com/coop/

良さげーと思ったのでつけてみた。

<input type=hidden name=ie value=EUC-JP>
<input type=hidden name=oe value=EUC-JP>

をつけると EUC-JP のサイトでも使えるみたいだよ! おやくだちだね!

(03:07)

_ 120どうでもいい

http://tinyurl.com/yh296l

(03:09)

_ えー

void氏は正直僕は単に性格悪い (これは僕的にはマイナス要因ではないんだけど) 方だと思ってるんだよなぁ。 なんか几帳面故にほげほげ、みたいな評価はホントかねと。

つーのは、「取り巻き」の間違いは指摘しない、 言ってること案外間違ってる、の2点において。 僕性格悪いので ドンパチがあるとひたすら見てるわけだけど、 前ぼんやり見てた話だと C99 対応してないコンパイラなんて無いとか、 あとなんか CRC のあれもあれだったな。

たまに otsune さんのパワーアップみたいに 語られるのを見るけど、 僕的には otsune さんの方がはるかに 危なげがなく見えるなぁ。 表現むずかしいけど、 ちゃんと自分の専門領域でやってるというのもあるし、 ひくこともできる雰囲気みたいなそういう。

まぁドンパチは面白いのでなんでも良い。

(05:01)

_ きょうのりょうり

コーヒーメーカーで温泉卵を作ったわけだけど、 その時生成されたお湯でお茶を入れようと思ったわけだけど、 コーヒーの味がしみついててすんごくまずいお茶になった。

あれはやばい

(05:03)

_ ぷろとべーす

最近プロトタイプ脳なので JSとかの動作の方が自然に思えてしまうのであった。

http://d.hatena.ne.jp/w_o/20061202#p4

Io> Nanika := Object clone do( i:=40; m:=method(i) )
==>  Nanika_0x8d08150:
  i                = 40
  m                = method(...)
  type             = "Nanika"

Io> Nanika2 := Object clone do( i:=100 )
==>  Nanika2_0x8d2e5d8:
  i                = 100
  type             = "Nanika2"

Io> Nanika2 m := Nanika m
==> 40
Io> Nanika2 m := Nanika getSlot("m")
==> method(i)
Io> Nanika2 m
==> 100

途中うっかり評価しちゃって 40 が出たのは秘密。

(05:08)

_ ソートを全部

ボゴソートに変えるとどうだろうか。

int main(int argc, char* argv[]) {
    if (argc == 1) return 1;
    int s = atoi(argv[1]);
    int* ints = (int*)malloc(sizeof(int)*s);

    srand(time(0));

    /* initialize */
    for (int i = 0; i < s; i++) {
        ints[i] = rand();
    }

    int sorted = 0;
    for (;!sorted;) {
        for (int i = 0; i < s; i++) {
            int r = rand()%(s-i);
            int t = ints[r];
            ints[r] = ints[i];
            ints[i] = t;
        }

        sorted = 1;
        for (int i = 1; i < s; i++) {
            sorted &= ints[i-1] < ints[i];
        }
    }

    return 0;
}

たった10要素でも結構あやしいよ!

i@u ~/test> time ./a.out 10
./a.out 10  0.64s user 0.00s system 98% cpu 0.648 total
i@u ~/test> time ./a.out 10
./a.out 10  9.68s user 0.02s system 95% cpu 10.117 total
i@u ~/test> time ./a.out 10
./a.out 10  4.05s user 0.02s system 96% cpu 4.230 total

(05:19)

_ (-:-)

(05:33)

_ rail

parser.ry をいじった。 :nick!user@foo/bar/baz みたいな のを送ってくる子の発言が読めてなかったので…

#    when /\A#{PATTERN::SHORTNAME}(?:\.#{PATTERN::SHORTNAME}|\.)*/
#      yield(:HOSTNAME, $&)
    when /\S+/
      yield(:HOSTNAME, $&)

(17:20)

_ pi

今にして思うと、

http://jarp.does.notwork.org/diary/200609b.html#200609192

require"open-uri";puts open("http://tinyurl.com/gjxs8").read[5..-8]

よりも、 bigdecimal/math を使うよりも、 短い回答になってるわけで、すごいなあと。

(19:31)

_ EBML

えーと…

http://ebml.sf.net/

(21:28)

_ はじめてのぎゃるげー

http://bund.jp/modules/yui/

革命家は気難しいよ…!

(22:05)

_ メモを簡単に取ろう

(defun wl-draft-memo ()
  (interactive)
  (wl-draft '("To: hogehoge@hogehoge.hogehoge")))
(global-set-key "\C-q\C-m" 'wl-draft-memo)

(22:21)

_ スーパーエシャー

思い出したように記録。

DS で案内されるのは面白かった。 内容はなんか、案外たいしたことないというか、 エッシャーってあんまり迫力みたいなのないなぁと思った。 教科書で見ても変わらんというか。 あと作品の数が少なくて、 一番面白い騙し絵系の部分は どっかで見たようなのが多くて新鮮さも無いなぁとか。 まぁ版画とか時間かかって大変そうだなぁ。

あと平日昼間とかなので空いてた。

(23:02)


2006-12-04

_ へえ

http://d.hatena.ne.jp/colun/20061203#p1

Windows だと自己書き換えがアレとか。 今度やってみよう。 その話の背景は shuJIT だろうけど、 JVM の JIT とかそいう環境でやると大変なのかなぁ。

あと NULL が C++ で…はまさにそうだなぁ。 あと読み込みされてないとかもまさにそうだなぁ。

(00:02)

_ メモ

メモ取りのアドレスを普通に書いててアホかとわらた。 スパム来たら面白いなぁ。 まぁ今のうちに From 制限かけとくか。 ていうか既にかかってたっけ。

(00:03)

_ kinda

よく見るなぁと思って調べた。

■kinda : 【発音】kin(d)(カインダー)、【レベル】6
 【副】=kind of、幾分、ちょっと、ある程度、かなり

なるほど kind of は便利表現だよなぁ。 問題は kinaba と空目率100%なことですが。

(01:06)

_

マトリョーシカ宇宙船と鬼ごっこと。 マトリョーシカの方は創作とは思えんなぁ…

(11:24)

_ Windowsキーという…

http://d.hatena.ne.jp/giveup/20061203#1165165185

あーなんかHHKもよく見ると Alt^Opt とか 書いてある使ってないキーあるなー。 これ今は X 的にはスペースかー。

うむ予想通り変換/無変換キーのようだ。 Thinkpad を直接触る時のためにスペースにしたんだな。 つーことは自由に使える。 けどこれモデファイアにはならんようなみたいな。

あとそもそも別に Ctrl+Alt 使わない子なんだよなぁ。

(11:32)

_ どうでもいいですが

http://d.hatena.ne.jp/giveup/20061203#1165166438

memset(&p, 0, sizeof(p)); でないと…

話自体はたまに聞く話なんで結果が変わるんでしょうねぇ… 非ヌルゼロ環境欲しい

(11:45)

_ ちなみに

showkey ね showkey 。 key のキーのキーボードのキーコードのコードの code の scan のスキャンの表示するのは showkey ってコマンドだから。 こんだけあればまた忘れても検索できるだろう…

(11:54)

_ こんな感じで…

find `echo $PATH|sed 's/:/ /g'` -name *key*

んー

findpath () {
    find `echo $PATH|sed "s/:/ /g"` -name $@
}

なんか noglob にできんなぁ。

(12:04)

_ screenrc

screen バッファを X に送る ~/bin/__scr2x を少し手を入れた。

#!/bin/bash

screen -X eval "msgminwait 0" "writebuf /tmp/scr" "bell_msg 'hoge'" "msgminwait 1"
trap '' SIGHUP
sleep 0.2
xclipstr "`cat /tmp/scr`" &
screen -X echo 'xclip'

要は sleep 入れた。 入れないと結構アレだった。

あと copy 時の emacs 化

markkeys "h=^B:l=^F:$=^E"

されてなかったのでした。 これはなんかイヤな理由があった気もしたんだけど、なんだったか。

(13:13)

_ うーん

http://msdn.microsoft.com/library/ja/jpmemory/html/_win32_VirtualProtect.asp?frame=true

http://f4.aaa.livedoor.jp/~madprog/doc/self-mod.html

手近なとこに Windows 欲しいなぁ。 つまり HHK から手をはなさずに ログインしてコンパイラ走らせられるくらいの距離に欲しい。

ディスプレイ置けるちゃぶ台ゲット&& なんちゃってデュアルディスプレイ|| 適当にゴミノートPCゲット&& VNC のどっちかかなぁ。 なんちゃってデュアルはデスクトップの Windowsマシンが使用不可になるのが痛い。

とりあえず Windows マシンに VNC 入れるか…

(13:40)

_ eval qq{tr

おーこういうイディオムが。

http://d.hatena.ne.jp/tociyuki/20061204/1165201446

via http://d.hatena.ne.jp/sumim/20061203/p2

Ruby の方はもうちょい短くできるかしら。

tr 使うなら

echo HZPFIZ | ruby -pe '$_.tr!("A-Z",[*"A".."Z"].reverse*"")'

gsub は Kernel#gsub のおそろしさを垣間見れます。 ゴルフならあと1Bは縮めるけど。

echo HZPFIZ | ruby -pe 'gsub(/[A-Z]/){(155-$&[0]).chr}' 

String#gsub と String#gsub! の違いは普通です。 gsub! の方は元の文字列を書き換えるわけです。 Kernel#gsub と Kernel#gsub! の違いはなんと! 書き換えなかった場合の戻り値しか違わないのであったー!!

どうでもいい。

(13:49)

_ あと Perl は

tr より y の方が短いとかっ…!

(13:50)

_ グリーティングカード

NII から他に送る用のグリーティングカードとやらが 送られてきたんだけど、 日本が核攻撃受けてるとしか思えない絵柄だった。

(14:14)

_ SSLとか署名とか

偽装と、管理者の無知/怠惰による 期限切れの区別がつかんのがたぶん、 セキュリティの人的にシュッシュッなんだと思うんだけど。

期限切れとか、単なる GET でブラウザが いちいち強い警告出すからいかんのかなぁ。 ぶっちゃけ期限切れの証明書とかってほぼ安全なんじゃないのとか。 認証局通ってない証明書に対して、 パラメータを渡す場合に限って、 なんか強い警告出すとかならそんなにうっさくないし、 ライトなユーザも気をつけるんじゃないかなぁとか。

CAVE式に

この先には、暴力的で鬼のようオレオレ証明書があなたを待っています。
そ・れ・で・も・先に進みますか。
  YES
> NO

くらいやればうざくていいんじゃないか

(14:30)

_ 誰かそういう extension 書いて

(14:30)

_ ぱーるごるふ

http://www.typemiss.net/blog/kounoike/20061204-115

別解が暗号だなぁすごい。

ところで Code Golf のルールですが、 「出力の最初に改行を入れていい」というのが あるというのは案外知られてないかもしれません。

(20:15)

_ another D in programming

てなんかねーと聞いてみたら、 2chでヘンな気がするといなばさんがおっしゃっていた 学校の評価だろーねという話らしく。 なんか US だと ABCDF と、 D は日本で言う C とか可なので、 プログラミングの単位不可じゃなくてよかたーという、 D の意味が違う以上訳出不能の意味なのかなぁという感じだった。 たしかに Segfault さんて名前の時点でなんか 成績悪そうなわけでそんな感じなのかなぁと。

あと日本の評価は SABC じゃねーのかとか言われた。 ゲーム大国!!

(20:35)

_ 11

00: A, 01: B, 10: C, 11: D 、 ですから、 1月1日が D の日というのも納得がいきます。 何を隠そう、 C89 は 1月0日にリリースされました。

(21:20)

_ てことは

C++ で execl 呼ぶと結構あぶなかしいのかなぁ。

(22:58)

_ くそう発生しない

お前本当に 64bit なんか!

(23:10)

_ コンパイラがコード消すのは

http://d.hatena.ne.jp/giveup/20061204#1165241449

if (argc < 99) return 0;

とかでなんとかなるけど、 スタックの調整がなぁ。

memcpy(&main, &&l+???, 15);

とかで動くとかっこいいけど。

(23:32)

本日のツッコミ(全5件) [ツッコミを入れる]

_ k.inaba [「Dって悪い成績なはずだからよくわからんなあ」→「とりあえず直訳しとけ」→「2chで別の解釈(Dimension)が..]

_ shinh [なるほど。個人的には訳せるものは訳してもらった方がわかり良い気がします。今見てみたんですが、 blockquote ..]

_ LETTER [面白そうだったのでFirefoxの拡張を書いてみました。 http://d.hatena.ne.jp/letter/..]

_ shinh [おおおすばらしい。さっそく入れてみました。こんな異様なメッセージが出ればさすがにびびりますね! あと、「こんなあやし..]

_ アリバイ会社 [通りすがりです。 <a href=http://dmajor.info/>アリバイ会社</a>]


2006-12-05

_ かぶってるとかチェックできてませんが…

とりあえず assert 出るならバグという方針なら。

i@u ~/test> cat tuple_spec.d
template hoge_(T) {}
template hoge(T...){
    alias hoge_!(T) hoge;
}

void f() {}

alias hoge!(f) a;
i@u ~/test> dmd -c tuple_spec.d
dmd: template.c:2622: void TemplateInstance::semanticTiargs(Scope*): Assertion `global.errors' failed.
zsh: abort (core dumped)  dmd -c tuple_spec.d
i@u ~/test> cat func_tmpl.d
template T(X...) {}
void f(){}
alias T!(&f) a;
i@u ~/test> dmd -c func_tmpl.d
global.errors = 0, gag = 0
0x8150cc8 symoff type=void(*)()
dmd: expression.c:774: virtual void Expression::toMangleBuffer(OutBuffer*): Assertion `0' failed.
zsh: abort (core dumped)  dmd -c func_tmpl.d

どっちも WINE でも再現

(00:14)

_ PHP

http://d.hatena.ne.jp/w_o/20061204#p5

なんか一瞬 PHP の動作が自然に見えたんだけど。

Io> A := Object clone do ( a := 1; f := method( write(a) ) )
==>  A_0x8d09508:
  a                = 1
  f                = method(...)
  type             = "A"
Io> B := Object clone do ( a := 2; f := method( A f ) )
==>  B_0x8d78570:
  a                = 2
  f                = method(...)
  type             = "B"

Io> B f
1==> nil

まぁ。それはそうか… PHP は後付けで OO 入れたんだよな。 それだとそうなるかなぁという感はある。

これあとで読む。

http://ll.jus.or.jp/lls2003/document/p2.log

(03:58)

_ その pragma

http://d.hatena.ne.jp/kurimura/20061204

知らんかったか忘れてた!

(04:11)

_ いや…!

拙者には print+ の + が非常に暗号でござったのです! なんか print~~ とかも見たことあったんですけどね。

http://www.typemiss.net/blog/kounoike/20061204-116

というか全体から漂うあやしげなオーラでしょうか。 おおなんか Perl Golf 慣れておられる感じだなぁというオーラ。

(04:51)

_ 解析的にも解けるだろうけど

http://arton.no-ip.info/diary/20061205.html#p01


T=1000
expect=0.0
done_prob = 0.0

for i in 3..T
  prob = (1.0 - done_prob - 1.0/(3.0**(i-2))) / 3
  done_prob += prob
  expect += prob * i
end

p expect

えーと個数一般化した場合は… 今度考えるるる

(05:15)

_ K

06:44 <******c> we are the knights who say 'D!'
06:44 <******c> D!
06:45 <****y> D!
06:45 <****s> D! D! D!
06:45 <******c> D! D!
06:45 <*****]> D! D! D! D! D! D! D! D! D! D! D! D! D! D! D! D! D! D! D! D! D!

(06:47)

_ tho

■tho : 【発音】罘u、【レベル】9
 【副・接】=though

まぁそうだろうなと思ってたけど調べてなかったので一応確認。

(06:48)

_ あーそれだと

l: __asm__("pop %eax"); なんかと同じことですよね。

http://d.hatena.ne.jp/giveup/20061205#1165270467

なんというか、一回帰るだけのスタックの幅の 都合をあわせただけで、 もう一個スタックフレーム作らんと 2回 ret はできないというか…

l: のところで main の頭相当の スタックフレーム作る処理をしてないのが問題なので。 一番簡単なのは main と同じ処理を 自分でインラインアセンブラで埋めてやることなんですが、

i@u ~/test> cat hello_again.c
#include <stdio.h>
#include <stdlib.h>
main(int argc, char **argv) {
    ((void (*)(void))&&l)();
    printf("world!\n");
    if (argc < 99) return 0;
l:
    __asm__("lea    0x4(%esp),%ecx;\n"
            "push   %ebp;\n"
            "mov    %esp,%ebp;\n"
            "push   %ebx;\n"
            "push   %ecx;\n"
            "sub    $0x10,%esp;\n");
    printf("Hello ");
    return 0;
}
i@u ~/test> gcc hello_again.c -g
i@u ~/test> ./a.out
Hello world!

これだと明らかに小細工が見えるので面白くないし 移植性も無いし…というような。

で、 l の該当位置を memcpy で main からコピーして拾ってくれば、 結構面白いかなぁと思ったのでした。

僕はスタックフレームが見えない子なので こういう遊びは苦手で困る

(07:54)

_ italics

http://docs.sun.com/app/docs/doc/802-1930-04/6i5u966q3?l=ja&a=view

ZH が enter_italics_mode で ZR が exit_italics_mode 。 んでもって今時の端末もあんまり italics は対応してない感じ、なのかなぁ。

(09:03)

_ xcompmgr

あっさり apt で入ったので少し遊ぶ。 sevilwm をちょっといじって、

KEY(XK_o, ev_exec_command, "transset-df -p -i %d 0.3")
KEY(XK_o|SHIFT, ev_exec_command, "transset-df -p -i %d 1.0")

みたいに %d を指定すると Window ID が渡るようにしたところ、 Ctrl+Alt+o で透過、 Ctrl+Alt+O で透過解除、とできるようになった。

後は背景に IRC のログでも流しておけばハピーな気がする。 気のせいかもしらんが。

ただ特に透過をオンにしておくとムッチャ重いね。 まぁ一瞬透けさせて裏を見る、って用途を考えてるので良し。

(09:44)

_ PHP はじめました

3rd   shinh             174  Php      9,827 (v21)

e-

(10:58)

_ PHPブログ

よくあるこんなコード。

i@un ~/test> cat stupid1.php
<?
for($i=0;++$i<10;)echo$i;
echo"\n";
i@un ~/test> php stupid1.php
123456789

for の最後につけると、

i@un ~/test> cat stupid1.php
<?
for($i=0;++$i<10;echo$i);
echo"\n";
i@un ~/test> php stupid1.php
PHP Parse error:  syntax error, unexpected T_ECHO, expecting ')' in /home/i/test/stupid1.php on line 2

えー。

print なら

i@un ~/test> cat stupid1.php <? for($i=0;++$i<10;print$i); echo"\n"; i@un ~/test> php stupid1.php 123456789

問題ないんです。えー。

(14:24)

_ でも

Java は拒否する♪

ダメじゃない!

(16:06)

_ そんなことより

今後の D にはネイティブ言語かつ なんていうんだあれ、静的に関数拘束?する言語における ランタイム情報のこれから、 みたいなのを見せてもらいたいのです。

ぜひライブラリで継続書ける言語とかになって欲しいものです。

(16:24)

_ なるほどっ

最近ネタスクリプト言語作ろうと思ってたから LISP かぶれしてたのか!

いや LISP セミナ〜でまさにそんな話を聞いたからな気もするけど

(18:02)

_ なんか

はてなでコメントしたら化けた。 EUC のサイトに w3m で化けるとはなにごと

(19:08)

本日のツッコミ(全2件) [ツッコミを入れる]

_ こーのいけ [オーラ出てますか。それは良かったです。意地でひねり出したので。 phpのechoって確か「文」扱いじゃなかったでした..]

_ shinh [私も Perl でオーラ出せるようになりたいと思います。 php の話はええ、文なんだと思います。 echo(ech..]


2006-12-06

_ D 見てると

なんか、 template で いったん名前空間で切れてるのが、 これがまたなんか不思議な有用性を発揮しているような。 気のせいかなぁ。

writefln!("hoge %s")("hage")
~~~~~~~~~~~~~~~~~~~~
 ここまで静的!ってすごくわかりやすいという話もあるし…

まあねむい

(03:44)

_ りょうりぶろぐ

チャーハンを作りました。 たまねぎもにんにくもなかったのですが、 油入れて米入れて適当にいじってから、 思い出したようにコショウをかけて、 思い出したように鷹の爪と、 なんでもおいしくする不思議な油であるところの ゴマ油を入れて、適当に卵入れて、 ショウユを習った通りにちょっと 焦がしてからがーと混ぜたらおいしいチャーハンのできあがり☆

おいしかったですが、タマネギあったら良かったのに。

(04:24)

_ 問題

D の pragma msg を使って、 0Byte 以上の compile time quine を作ることはできるか。

僕はできないんじゃないかと思った。 というのは pragma msg の最後に、勝手に改行入るのが痛すぎる。 さらに、 pragma msg には計算結果を渡せない。

しかし、いや、できるとは思うんだ。

(05:04)

_ あ、なにこれ

計算結果渡せるじゃん

(05:07)

_ できたー

(05:26)

_ だいぶ

みじかくなるなぁ

(06:39)

_ 確率の問題

高校の時の友達に確率の問題が多かったけど 数学の問題を出してくる人がいて、 その人が出してきた問題を昼間考えてわかんなかったら、 明日まで待ってくれそしたら答えは出せるとか言って、 適当にプログラム走らせておらー答えは出たぜ 解析的な回答教えろ、とかやってたのを思い出した。

答えが出てれば解析的な回答は わかんなくてもとりあえず良しとしていた 思考が面白いなぁとふと。 そして今もあまりその姿勢は変わってないなぁ。

これだから俺は

(06:54)

_ hello-

import std.stdio;
class HelloWorld {}
void main() {
    writefln(typeid(HelloWorld));
}

Imaichi

http://d.hatena.ne.jp/nazodane/20061205/1165316504

(07:36)

_ 適当にやったのに

86.1%だって

http://jakemandell.com/tonedeaf/

案外いい

(07:47)

_ Wine メモメモ

http://d.hatena.ne.jp/nazodane/20061018/1161170232

これはたすかる

(08:02)

_ TODO

いやそれは TODO ではないのだが。

  • しゃしゅ
  • backtrace (たぶんやらない)
  • FFI in D
  • dll loader
  • sevilwm あそび / CPU使用率表示 / 透過

http://shinh.skr.jp/m/?date=20061119#p07

  • TODO の 2007年問題(つまり2007年の予定は2007年にならぬと登録できぬ)
  • メール→コメントフィルタ
  • HyperEstraierサバにメールとIRCのログを(今はWebだけやったっけ)
  • estsave.el の復活
  • /usr/include とかもツッコむ方法考える
  • /usr/lib 検索は?
  • 色つきソース引用問題

estutf.cgi に @mdate STRD をつけておいた。

(08:40)

_ うへえやるんですか

  • undump

(09:06)

_ hello の成果

目で core のプログラムヘッダが読めるようになってた

(19:32)

_ つまり

000050 00 00 00 00 01 00 00 00 00 10 00 00 00 80 04 08  >................<
000060 00 00 00 00 00 00 00 00 00 10 00 00 05 00 00 00  >................<
000070 00 10 00 00 01 00 00 00 00 10 00 00 00 90 04 08  >................<
000080 00 00 00 00 00 10 00 00 00 10 00 00 06 00 00 00  >................<
000090 00 10 00 00 01 00 00 00 00 20 00 00 00 a0 04 08  >......... ......<
0000a0 00 00 00 00 00 10 02 00 00 10 02 00 06 00 00 00  >................<
0000b0 00 10 00 00 01 00 00 00 00 30 02 00 00 c0 e9 b7  >.........0......<
0000c0 00 00 00 00 00 10 00 00 00 10 00 00 06 00 00 00  >................<
0000d0 00 10 00 00 01 00 00 00 00 40 02 00 00 d0 e9 b7  >.........@......<
0000e0 00 00 00 00 00 d0 12 00 00 d0 12 00 05 00 00 00  >................<

を 32Byte ずつ読んでて

found 15 program headers
8048000-8048000 0
8049000-804a000 1000
b7e9e000-b7e9f000 1000
b7e9f000-b7e9f000 0
b7fcc000-b7fce000 2000

となるのがおかしい。 804a000- が消えてる。 はれほれー? このループ別に continue もねえしなぁ。

(19:40)

_ 結論

よくわからん

(19:50)

_ で、 C++ vs D

mywritefln!("hello %s")("world") の件、 思うに mywritefln!("hello %s") が compile time duck typing なもの返してるのが C++ との違いかなあ。 まぁ C++ でも適当に class 一つ挟めばいいんだけど。 要は例えば D だと、

template mywritefln(char[] fmt)(T...) {
  static if (check_puts!(fmt)) alias puts mywritefln;
  else alias mywritefln_!(fmt) mywritefln;
}

とかできるって話というか。 ある種引数と返り値が対等な関係になってる気がする

(20:20)

_ hello--

import std.stdio;
class HelloWorld {}
void main() {
    typeid(HelloWorld).print();
}

なんか違うなと思ったんだ。

http://shinh.skr.jp/m/?date=20061206#p08

(20:48)

_ あたまだるい…

(23:33)

_ 偏差値意味NEEEEEEEEEEEEEEEEEEEEEEE

http://www.37vote.net/game/1148654831/

(23:42)

本日のツッコミ(全4件) [ツッコミを入れる]

_ kik [数学屋がよくやるように、関数の引数を F(x,y;a,b)みたいに「;」で区切れたらいいのになー。「;」より後ろは静..]

_ shinh [よく考えると C++ 式の writefln<"hello %s">("world"); の方が(C++ではこれでき..]

_ kik [解析的ってんならそんな感じの式になればいいかな。 でも、そこのLISPの式ってあってるのかなあ? 「n回引いて12種..]

_ shinh [うーん。ひょこひょこ頭ひねってたんですがうまくいかず。というか今頭だるいので今度考えまする… というか元気よくてもわ..]


2006-12-07

_ ほえ

irb(main):008:0> class Range; def to_a; p 'hoge'; end; end
=> nil
irb(main):009:0> p *0..9
"hoge"
TypeError: `to_a' did not return Array
        from (irb):9
        from :0

うーん。

irb(main):023:0> p *1
1
=> nil
irb(main):024:0> p [1]
[1]
=> nil

(00:07)

_ なるほど…

irb(main):003:0> class Fixnum; def to_a; p "hoge"; end; end
=> nil
irb(main):004:0> p *1
"hoge"
TypeError: `to_a' did not return Array
        from (irb):4

なんとなくしかわかってなかった

(00:09)

_ ひっかけもんだい

00:29 >i< class C { TypeTuple!(int, int) t; }
00:30 >i< C.sizeof はいくらでしょう!

(00:33)

_ こめっとさん

流行ってるんだかはやってないんだか。

とりあえずコメットと言えばチャットらしいので 僕の判断は正しかったらしい。

(00:55)

_ ここの方が

確実な気すらするのはなぜだろう。

メール投げました > YT さん wo さん

(02:11)

_ うぐう

ユバントゥー

(03:45)

_ いきなり何すんのよ!あんたは民青か!

怒られた><

「最近は全然テレビも見てないなあ。今どんな番組が人気なの」

→強くしかる

だってプチブル的だし…

(04:25)

_ つくってみるかあ

(06:00)

_ Wii vs PS3

http://dokoaa.com/ps3wii.html

(06:10)

_ DCon

http://www.digitalmars.com/d/archives/digitalmars/D/announce/D_Conference_2007_5536.html

June なら渡米してる確率高そうな。

(14:34)

_ PKU

std:: いらんのか。

(18:07)

_ PKU1713

ひさびさに逃げる立場です。 僕はこれで打ち止めかなぁ。

(19:18)

_ count

文字終端取るのに苦労するんだけど、 うまいことスタックに残ってる文字数とかを ちゅるーと取ってこれないもんかねえ

(19:21)

_ newlib

char *
_DEFUN(_gets_r, (ptr, buf),
       struct _reent *ptr _AND
       char *buf)
{
  register int c;
  register char *s = buf;

  while ((c = _getchar_r (ptr)) != '\n')
    if (c == EOF)
      if (s == buf)
        return NULL;
      else
        break;
    else
      *s++ = c;
  *s = 0;
  return buf;
}

#ifndef _REENT_ONLY

char *
_DEFUN(gets, (buf),
       char *buf)
{
  return _gets_r (_REENT, buf);
}

glibc はまだなんとかなりそうだったけど、 newlib はこりゃ無理だって感じだなぁ。 本当にレジスタに乗ってたらもうどうしようもないです。

(19:27)

_ Apache の NameVirtualHost

やっと使いかたに合点がいったよ。

NameVirtualHost は一回だけ * で書いて、 後は VirtualHost * と ServerName hoge.example.com とかで。

http://httpd.apache.org/docs/2.2/ja/vhosts/name-based.html

やはりドキュメントはきちんと読まないといけません。

(21:54)

_ ケータイ落とした

電車の中で落としてなかなか出てこなかったので不安であった。

(23:11)

本日のツッコミ(全3件) [ツッコミを入れる]

_ YT [メール&お誘いありがとうございます。 返信いたしました。勿論その読みで正解です。]

_ shinh [返信ありがとうございます。 今後はメールと同時にここにメール投げますた&&リンクはってリファラで痕跡を残すなどの工夫..]

_ YT [い、いや……そこまでしていただかなくても(大汗 こ、今回はサンダーバードもジャンクメール扱いしませんでしたしっ。]


2006-12-08

_ きみ

やるきあるの

Version Size Lang        Uploaded        Status
3rd     144  Ruby less than a minute ago Passed
2nd     98   Ruby 5 minutes ago          Failed
1st     184  Ruby 9 minutes ago          Failed

(13:39)

_ > 相対性理論は量子力学の近似ですが

どこからつっこめば…

(15:56)

_ pedantic

という単語自体が pedantic ということは 既に言われてそう

(16:11)

_ WGC2

というわけで Write Great Code Vol.2 を買った。 2 は買わないぞと思ってたんだけどな。

(16:11)

_ Wii欲しい!

はるのはPS3破壊映像とかでいいんだろうか。

(16:13)

_ 毒されてる

#import<algo.h>
char a[9];main(c){for(cin>>a;next_permutation(a,strchr(a,c||puts(a)))||c--;);}

これでいいんじゃねーと思った俺はゴルフに毒されていると思った。

答え: c の型が無い!

(16:51)

_ ぼーなす

(19:58)


2006-12-09

_ おおお

さすが5分ですばらしい洞察です

http://d.hatena.ne.jp/ytqwerty/20061208#p2

いいところの評価も同感する感じなのですが、 特に悪いところとか謎なところがまさにその通りだと思いまして。

つまり inout どうするんだろうなーというのは 全くもってその通りというか最近関数系で 遊んでる人々は inout 考えてねーよな。

ただ instance の方が好みというのは!

とりあえずいもう5分お願いしますそしてそのままずるずると。

(04:43)

_ うーん

どう見てもバックトレース需要あるな…! FFIとかカスみたいな需要の物体作ってる場合じゃないのか。

(05:05)

_ とりあえず

Linuxのやろうぜ

(05:07)

_ libphobos.a

gc.o が 2つ入ってるわけです。

(05:19)

_ つ ー か

phobos のソースってちゃんとビルドできるんだね。 すげー簡単に作れるのであったー

(05:22)

_ こう、さ

i@u wrk/backtrace/phobos> touch object.d
i@u wrk/backtrace/phobos> make -f linux.mak libphobos.a
make: `libphobos.a' は更新済みです

Walterタンどう開発してるん… と思ったけど彼は Windows で書いてるんだろうなあ。

と思ったけど、うーん別に Makefile 悪くないぞ。 あー

(05:30)

_ bt

なんかどうでもよくなった。

(06:08)

_ そいえばそいう季節だなあ

と思って HDD 内探すも見つからず。

http://tinyurl.com/yhfvox

http://maideriapress.web.fc2.com/UoT/UoT03.html

民青として?

そして新とかあるらしい。 微妙。

ttp://maideriapress.web.fc2.com/UoT/img/newanti.jpg

(07:32)

_ あった

haku_tero.jpg

(07:41)

_ デコレータ

なんかこの機能はじめて見た気がするんだ… と思ってみんパイ見たら載ってなかった。 他の文章も読んでみた方がよさそうだなぁ。

しかしデコレータも文法的になんかきもいなぁ。 いやこれはこれでいいんだけど、 節操が無いとは感じるというか。 というわけで以下に妙に違和感が。 言ってることはわかるんだけど。

http://tabesugi.net/memo/2004/92.html#120951

(12:49)

_ ふと気付いた

可変長template引数は書けるけど 可変長引数は書けないよ!

(13:35)

_ 0805dac0 D D13TypeInfo_B2ii6__initZ

このシンボルをどう得るか。なかなかむずかしいなぁ。

前半部分は typeid(TypeTuple!(int, int)); でいいはず。 んでこれいったい全体なんなんだ。

(14:02)

_ typeid(TypeTuple!(int, int))

だけでいいみたいだ。

(14:10)

_ ふむわかった気がする

(14:15)

_ んで次の問題が実に難しい気がする

typeid(TypeTuple!(int, int)); を実行時に作りたい。

(14:18)


2006-12-10

_ めんどくさかった…

投げっぱなし放置メソッドの方針で

(01:02)

_ とまらないコンパイラ

i@u ~/test/d> dmd functional
functional.d(26): Error: 'this' is only allowed in non-static member functions, not f
functional.d(26): Error: 'this' for nested class must be a class type, not int
functional.d(26): Error: 'this' is only allowed in non-static member functions, not f
functional.d(26): Error: 'this' for nested class must be a class type, not int
functional.d(26): Error: 'this' is only allowed in non-static member functions, not f
functional.d(26): Error: 'this' for nested class must be a class type, not int

これが永久に続く。

(02:59)

_ reverse

これ普通に Perl も強そうな問題に見える。 p があるから Ruby 有利とかいうわけでもなさそうな

(06:25)

_ 規約引いてみた

http://d.hatena.ne.jp/odz/20061210

ふむふむ。

型的には void* であってはいけないはず。 標準のドラフトによると、

-4- The macro NULL is an implementation-defined C++ null pointer constant in
this International Standard (conv.ptr).*

[Footnote: Possible definitions include 0 and 0L, but not (void*)0. --- end
foonote]

だと。つまり 64bit でも NULL 使えば問題は起きないんだろうね。 可変長引数のみ NULL 使って他は 0 使っておくのが無難って感じだろうか。

__null は GCC が予約してるみたいで ソースちょっと見る限りかなり特殊な扱いかなぁ。 なんせ lex.c に入ってるし。 めも。 RID_NULL とか null_node とか null_ptr_cst_p

(18:05)

_ "新しい"言語って、

結局ほとんどは三つに分類できるような気がする。 アカデミックとビジネスと、コンパイラ屋と。 でもそろそろ、エディタ実装の実経験に裏打ちされた 新しい言語が生まれる時なんだろうね。

http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.com&group=digitalmars.D&artnum=45298

こういうの見てると、 OCaml の推論した型とか 自動的に書き込まれててもいいよなぁとか 思ったりするわけですなぁ。

でも } (while) はダメだろお

(20:42)


2006-12-11

_ うーん

true_return_type.d(30): static assert  (is(long == long)) is false

こんなステキなメッセージもらったことない

(00:52)

_ tDiary のパッチ

http://www.tdiary.org/20061210.html

たぶんあてた。

(04:30)

_ timeout

#!/usr/bin/env ruby

t=ARGV.shift

pid = fork do
  exec(*ARGV)
end

t.to_i.times do
  if (!File.exists?("/proc/#{pid}"))
    exit
  end
  sleep(1)
end

Process.kill(:INT, pid)

ありがちだけど、指定した時間が経過したら子プロセスを 殺して終了する物体をいいかげんに書いた。 普通に Unix コマンドにあった気がするけど覚えてない

(06:45)

_ カラス

エンディングにいっしきさんの名前があって おおーと思った。

それはそれとして初プレイしたけどよくわからず。 自機はえーてのと、 敵が突然どぱっと弾うってるかぼんやりしてるかの どっちかというのは、 つまりなんというか、 シューティングというよりリンクだとかドルアーガだとか、 ああいう感覚に近いのかもしれんなぁ。 盾で守りつつ剣でぶしゃー。

盾シュー作りたいな。

(07:56)

_ obfsucated oriented programming

(08:18)

_ MOP

http://www-06.ibm.com/jp/developerworks/java/051021/j_j-pg09205.shtml

ほえー。全然途中までしか読んでないんだけど MOP て method_missing のことなんかいな?

(09:41)


2006-12-12

_ NegaPosi

http://www.namikilab.tuat.ac.jp/~sasada/diary/200505.html#d10

eval 無いとかマジック…と思ったら lave だった。

(03:34)

_ ちなみに

昔はこういうのも

19:49 <codegolf> zeriod submits 1B of Php for Paint By Numbers, ranking 1st (10000pts) in Php and 1st (10000pts) overall.

これはバグでした

(05:08)

_ すばらC

http://d.hatena.ne.jp/Cryolite/20061210#c1165857299

そして書き下す作業は面白くないと思うんだよなぁ。 少なくとも僕には面白くない

(05:51)

_ 昔知ってたことを

再発見した

(10:41)

_ こんてな

i@um ~/test> cat cont.cc
#include <vector>
#include <ext/slist>
#include <list>
#include <set>
#include <ext/hash_set>
using namespace std;
using namespace __gnu_cxx;

int main() {
    typedef vector<int> v;
    typedef slist<int> sl;
    typedef list<int> l;
    typedef set<int> s;
    typedef hash_set<int> hs;
    printf("%d %d %d %d %d\n",
           sizeof(v), sizeof(sl), sizeof(l), sizeof(s), sizeof(hs));
}
i@um ~/test> g++ cont.cc
i@um ~/test> ./a.out
12 4 8 24 20

(11:21)

_ おいついた

1st  flagitious 52   Ruby     10,000 (v26)
2nd  shinh      52   Ruby     10,000 (v14)
3rd  kinaba     55   Ruby     9,454 (v11)

さて…

(12:18)

_ しかし

これはいい問題だねえ

(12:19)

_ C++

むずかしいっていうけど、 あせんぶりとかわかってたらそんなにむずかしくない部分も 多いんじゃないかなぁとか思う今日このごろ。

こんぱいらのきもちになって考えれば自明な部分も多いような…

で、そいうことが Write Great Code 2 のイントロに 書いてなくて少し残念。 「この本を読めばアセンブリの雰囲気がわかるので、 コンパイラの気持ちになれるので、 普段から高速なコードを選択できるようになります」 だと動機が弱い気がして。 コンパイラの気持ちになれば なぜ特に C/C++ がこの言語仕様になってるかもわかる、 ってのも重要な点だと思うんだよなぁ。

たとえばわかりやすいとこでは C で if あれば switch いらないじゃん break キモい、みたいな話とか、 mst さんがキモいとおっしゃってた C++ の初期化リストとか。 キモいものをわざわざ入れてる理由がわかるなんて素敵なことじゃない。

(15:52)

_ スクリプト言語

で書いたら拡張とかしやすくてラピッド! という話なら、 スクリプト言語をコンパイル済みバイナリに 後から拡張の形で導入できないもんかなーと。

(20:12)

_ OCaml

について調べておく

(20:14)

_ ねむい

はてなにログインするのめんどい

(20:29)

_ todo

よやくをしよう

(21:51)

_ ジョジョたち

/(-_-)  m9('-')  /(-_-)
   / /     / /     / |
 /'|     /'|     /'|

(22:02)

_ おやー

まだ一位てこと?

http://www.php.co.jp/fun/ranking/books.php?genre=pc

(22:04)

本日のツッコミ(全1件) [ツッコミを入れる]

_ Sxersvwm [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]


2006-12-13

_ いんたーふぇいす

うーん。 template 引数が 2 つあって、 片方はユーザが指定する、 片方は

書いてる最中にできると気付いた。

(02:36)

_ public private

ふらたんが言ってたこと。

irb(main):001:0> def/a;p a;end;:x/1
1
=> nil

だけど、

i@un ~> ruby -e 'def/a;p a;end;:x/1'
-e:1: private method `/' called for :x:Symbol (NoMethodError)

で、

i@un ~> ruby -e 'public;def/a;p a;end;:x/1'
1

なら動く。 つまり irb は private にするのが正しいかもねえという。 ただゴルフ的にはむしろ逆で目。 method_missing が手軽に書ける目にひかれたわー

(15:15)

_ mjd-

1st  kinaba     51   Ruby     10,000 (v13)
2nd  flagitious 52   Ruby     9,807 (v26)
3rd  shinh      52   Ruby     9,807 (v14)

縮む気しねえええ

(15:20)

_ 最近

研究室の近くの人々が騒がしいなぁ… わかる言語なら別になんとも思わんのだろうが。

(15:25)

_ あと歌ってるとか

(15:33)

_ ほほー

16:28 <*******> I just compiled D to the JVM O_O

(16:36)

_ なるほど

http://www.cs.rit.edu/~bja8464/NestedVM.pdf

これ使ったそうな

(16:37)

_ ロックマン2

http://kai3-winchester.ddo.jp/

がいい。 いや他も聞かせてもらったんだけどー

(17:17)

_ なんとなく

鶴折って帰ってきた。

うぐえうええ

(22:32)

_ うおー

http://mkosaki.blog46.fc2.com/blog-entry-288.html

久々に面白画像キターと思ったら前もこれ見たような気がするよ! さみしい!

(22:43)

_ ぐおおお

よく考えると 9人とかどうするねんと考えていたのであった。

(22:47)

本日のツッコミ(全2件) [ツッコミを入れる]

_ kosaki [ごめん、おもろ画像はすごいメンドイねん。 ネタ画像の収集も根気いるし]

_ shinh [ええすいませんあれ大変そうだな…と思いつつも楽しみにする声が私の中にあるようなそういう。]


2006-12-14

_ MIPSから

JVMのコードにできるならそこからまた MIPSのコードにコンパイルして… というような話であった。

(05:49)

_ ゲーム画面みたい

ttp://www.atdot.net/~ko1/img/2006/DSCF2252.JPG

via http://www.atdot.net/~ko1/diary/200612.html#d14

(20:49)

_ 二択

  • ここで寝る
  • 朝渋谷
  • 昼神保町

or

  • 帰る
  • 朝渋谷
  • 昼神保町

渋谷めんどくさい :-)))

(21:24)

_ ls@host

今日の話で、 やっぱ既にあるんだなーと思った。

echo Hello | cat@host1 > file@host2

って話。

名前空間がどうこう言ってたのは、 この @... の部分を省略とかこう、 できないとインストールとかをシームレスに、 とかはキツいなぁとかなんとか。

(21:28)


2006-12-15

_ 15と思ったら

http://d.hatena.ne.jp/kosak/20061211#1165849013

ちがった。

(00:05)

_ いまじんかっぷ

面白そうなんだけど WINE で動かねーなぁ。 むむむ。

動き見てみねーとシミュレータとか書く気も起きんしなぁ。 うーむ。 明日家帰ってから見ればいいか。

(03:09)

_ hierarchy enquete

enquete ってスペルむずかしいのう。

http://slashdot.jp/developers/article.pl?sid=06/12/14/1233207

敢えてアンケート作ったら面白くねえかなぁ。

あなたは Ruby を…

知ってる&(5点|4点|3点|2点|1点) | 少し&(5点|4点|3点|2点|1点) | 知らない

の11択くらいで各言語について聞く。 したら勝手にグラフはできるはず。

(04:03)

_ 問題は

いやおれはうん、 C++ 愛してるっ! 5点つけたいんだ。でも、でもやっぱりねっあれがそれであれがこれでこれこれ でやっぱり2点くらいかも、いやだめだ! Ruby もねっ、なんか…なんか違うんだよ1点とかつけてやりたいけど、 チクショウ悔しいけどよくできてるんだうわあああん 決められNEEEEEEEEEEeeeee

みたいな頭の悪い層がどうしようもないことだ

(04:05)

_ 悩み抜いたあげく

全ての言語に5点つけるような子はかっこいい

(04:06)

_ 微塵も悩まず

LISPにだけ5点つけて他1点の人も、かっこいい…かも?

(04:06)

_ シレン

やってるひまあああああ

あるかな

ないかな

しりとりと言えば、

web

binary

なので次は y からスタートです。 僕の予想は ytqwerty 2.0 です。 その次も ytqwerty だと思います。

どうでもE

(04:10)

_ エグザンプション

exemption

どうやったらザになったんだろう

(06:19)

_ hpm

order to と order in

(07:08)

_ chap4

done

ホントにー?

だる

(07:28)

_ 一通り見直し

終わり。

だからホンマかいと

(09:38)

_ いやー

http://pc8.2ch.net/test/read.cgi/tech/1165621441/51

対応はしてねーと思うなぁ

(12:41)

_ ねむいなあ

今日は b2con でございます

(14:55)


2006-12-16

_ FreeBSD

hamaji@www491 ~> ./hello_small
ELF binary type "0" not known.
zsh: abort      ./hello_small

おおお情報多いなすばらしい

(06:58)

_ FreeBSD

hamaji@www491 ~> ls -l hello_freebsd
-rwxr-xr-x  1 hamaji  users  93 Dec 16 07:51 hello_freebsd*
hamaji@www491 ~> ./hello_freebsd
Hello world!

後は命令埋めるだけかねえ

(07:53)

_ sourceforge のコンパイルファーム

http://sourceforge.net/docman/display_doc.php?docid=10472&group_id=1

ステータス一覧がここで見れるのか。

あとマニュアル

http://sourceforge.net/docman/display_doc.php?docid=762&group_id=1#specific_host_access

compile farm

(09:30)


2006-12-17

_ 問題はなんか

がっこーだということだと思う。

俺一年で何回山手線ぐるぐる回るのかなぁ。

(03:17)

_ うかつな文字列

僕が今までで一番面白かったのは ○○さんでぐぐったら、 ○○さんの日記サイトが、

○○さん - [ このページを訳す BETA ]

的に採用されていたというか。

つまりなんというか、 自分の日記の title を○○さんにしてるのか! と思ったらぐぐるマジックだったというか。

(06:54)

_ はすけるごるふ

という話題が出てたので久々にはすける書いてみようと思ったら まったくかけない。

(07:32)

_ 実は簡単な

http://shinh.skr.jp/m/?date=20060614#p06

この時に感動した理由はつまりそういうことという話です。

その後もっとびっくらでしたが

(07:37)

_ Herbert

mono で動く気はやはりないらしい。 ログインフォームまでは出るのになぁ。

つーわけでしゃーないのでシミュレータ書いた。 でもデータひっこ抜くのめどいなああああ

(10:41)

_

dankogai さんが Code Golf やってるし

(19:52)

_ いっひっひ

http://www.rubyist.net/~matz/20061206.html#p05

楽しそうなはなしが

(20:22)

_ GCC のコンパイル

なんかディレクトリ掘らなくて良くなってるのかなぁ…

http://alohakun.blog7.fc2.com/blog-category-5.html

(22:29)


2006-12-18

_ BSEとSARSは人生先生の仕業だったかー

(00:39)

_ ぐぐーる

http://blog.japan.cnet.com/kenn/archives/003431.html

via http://blog.livedoor.jp/dankogai/archives/50716491.html

そういえばセンセは レスポンスの速度が何故あんなに速いのか、 と気にしてたみたいだ。 ハッシュとか転置インデックスがほげほげとか説明した。 んでページランクがほげほげとかは全然興味ないみたいだった。

(02:37)

_ 愛と勇気とかしわもち

http://members.jcom.home.ne.jp/wtetsu/love/manual.html

今度やてみる

(03:31)

_ やってみた

ゲームで悲しくなる演出できるってのはすごいなぁ。

(04:09)

_ 括弧の無い LISP

http://lispuser.net/memo/lisp/2006-03-30-23-58.html

前も見たけどメモ。

括弧の無い SRFI ってあったと思うんだけどどこだっけなぁ。

(04:23)

_ abstract

  • いろんな状態を使って測定精度を議論
  • どういう状態がいいか

(04:28)

_ 本当はどうでもいい男

http://www.google.co.jp/search?q=%E3%81%A9%E3%81%86%E3%81%A7%E3%82%82%E3%81%84%E3%81%84&lr=lang_ja

下の方見てみると、

関連検索:
本当はどうでもいい男    どうでもいい山    crazyさゆどうでもいい日記
どうでもいいニュース    どうでもいい話    どうでもいい疑問

誰がそんな検索するねん…

(05:57)

_ 今いる関数のアドレス

ちなみに call 使わないで。

typedef struct frame {
    struct frame *next;
    void **ret;
} frame;

void f() {
    frame *ebp = (frame *)__builtin_frame_address(0);
    printf("ebp = %p\n", ebp);
    void **ret = (void **)ebp->ret;
    printf("ret = %p\n", ret);
    void **rel = (void **)*(ret-1);
    printf("rel = %p\n", rel);
    printf("main = %p\n", (int)ret+(int)rel);
}

int main() {
    f();

    frame *ebp = (frame *)__builtin_frame_address(0);
    printf("ebp = %p\n", ebp);
    void **ret = (void **)ebp->ret;
    printf("ret = %p\n", ret);
    void **rel = (void **)*(ret-1);
    printf("rel = %p\n", rel);
    printf("main = %p\n", (int)ret+(int)rel);

    return 0;
}

main の方はなんか違うんだな。 めんどくさいのう。

i@u ~/wrk/binhacks> ./a.out
ebp = 0xbf828948
ret = 0x80483dd
rel = 0xffffff77
main = 0x8048354
ebp = 0xbf828974
ret = 0xbf8289e8
rel = 0x80482b0
main = 0xc7870c98

(07:22)

_ main の先頭で

movl    8(%ebp), %esi

でオケ。 他環境でもこうなってるのかしら。

さっきのでうまくいかん理由は

call *8(%ebp)

で main に飛んできてるからだった。

(07:51)

_ dll 直接リンク

http://d.hatena.ne.jp/alohakun/20061217#c1166421511

なんかローダじゃなくて静的リンクって話ですよね。 私はむしろなんでできないのかが結構不思議だと思ってました。 ツールチェーン作る時ってたぶん、 コンパイラ作る→ .a 的な .lib を作れるようにする→ .a 的な .lib から .def だの import ライブラリ作れるようにする→ .dll 作れるようにする→ (おまけとして) .dll から .def だの .lib をひっこ抜けるようにする、 みたいな流れで作るからかなぁ。

こっちは普通に GNU toolchain ならできるわけで…

i@un ~/test> cat a.c
void a() { puts("Hello"); }
i@un ~/test> cat b.c
void a();
void main() { a(); }
i@un ~/test> gcc -o a.so a.c -shared
i@un ~/test> gcc b.c a.so -o b
b.c: In function 'main':
b.c:2: 警告: return type of 'main' is not 'int'
i@un ~/test> LD_LIBRARY_PATH=. ./b
Hello

なんつーかこのへんってバッドノウハウの山なんだよなぁ。 概念的には別に難しくもなんともないのに、 人為的に難しくされてる感じ。

GNU toolchain

  • あんまりスマートじゃない ld
  • 謎の ld script
  • そもそも gcc -v したら collect2 って何
i@u ~> file /usr/lib/libc.so
/usr/lib/libc.so: ASCII C program text
  • ちなみに Fedora ではこのファイルは TCC コンパチじゃなかったりする→ AS_NEEDED 以降を消す

Windows 一般

  • なんで export してくれないの! (Unix屋は100%騙される)
  • __declspec? dllimport?? dllexport??? → SDL/begin_code.h とかわかりやすい
  • LD_PRELOAD はどこですか→ KERNEL32.DLL を入れ替えて下さい (クラカー並の対処だぜ!Unixバイナリヤン→かこいいイメーヂ。 Windowsバイナリヤン→不審人物)
  • dll をリンクさせてよおにいちゃん!
  • ELF と COFF と OMF をリンクして PE を作ってごらん。

Cygwin/MinGW

  • どうやって dll 作るの
  • どうやって dll から import ライブラリ作るの
  • dlltools, dllwrap って何このアレなオプション体系 (どれが出力でどれが入力なの!?!バッドラッパー?!?!?? :-)))))))))
  • 先生 ldd がありません!→ objdump -p hoge.dll | grep dll
  • 「cygwin1.dll がありません」
  • nm で dll のシンボルが見えないの… (VCについてるツールとかなら見れるのにっ!)
  • objdump -x hoge.dll →発狂
  • .a を指定する順番で挙動が変わるんですけど… →複数回指定するのが安全。例: gcc foo.a bar.a foo.a bar.a
  • ぐにゅーは Windows が嫌いなんだね!→その通りです (でもCygnusかなぁ)

OMF (Borland)

  • コマンドライン的には、実はすごい快適な環境だったりはする
  • implib, impdef 完備!まともなオプション達!
  • でも VC のランタイムとかからんでくると死ねるぜー (これは Windows 共通)

OMF (Digitalmars)

  • link.exe の冗談みたいなオプション群!
  • implib も使えるか否かの瀬戸際ギリギリ感! impdef はアリマセン!

COFF (VC)

  • そもそも implib 標準に確か無いよねっみたいなっ…
  • link.exe の /IMPLIB オプションは dll 作る時だけなんだよねみたいなっ…
  • COFF2OMF は危険な香り。逆も
  • VC とつきあう方法は色々昔しらべたけど忘れたにゃー

Mach-O

  • 先生 ldd がまたありません!→ otool -L
  • 先生 objdump → otool
  • -F オプションはいいとして、 -framework オプションて!あなた規律を乱していますっ! -f は最適化ちゃうんかい!
  • ディレクトリにしか見えない実行ファイル、 .app
  • ディレクトリにしか見えない dll 、 .framework
  • dll は相対パスでリンクできる: otool -L hoge → @executable_path/../Frameworks/..... →ほげー??? :-)))))))))))))))))))))
  • .a を指定する順番で挙動が変わるんですけど… →複数回指定するのが安全。例: gcc foo.a bar.a foo.a bar.a
  • ranlib が必要な環境。→ ar は crus 以外許しませんよっ
  • mv hoge.a directory しただけでもう一度 ranlib が必要
  • ぐにゅーは Mac が嫌いなんだねっ!→やる気が無いだけじゃね
  • まぁ Apple のドキュメント見ると謎は氷解していったりはする

総括

  • そもそも WINE で動かしてるのが余計トラブル増やしてるんですっ!
  • 気がついたらものすごい文章量ですよっ!→積年の恨みが
  • 今度まとめよう

(17:28)

_ どうでもいいけど

ld って不自然に遅いよね。

あとで試す (2年越しの負債): http://www.issei.org/diary/?20040417#17-1

(17:42)

_ ご趣味は?

クロスプラットフォームです。 無尽蔵に時間が使えます。

(17:45)

_ Cygwin/MinGW

  • Cygwin → Cygwin のセルフコンパイラ: setup.exe
  • Cygwin → MinGW のクロスコンパイラ: setup.exe
  • MinGW → MinGW のセルフコンパイラ: MSYSと一緒に入れるアレ
  • MinGW → Cygwin のクロスコンパイラ: あるんだろうか。作れるんだろうか

(17:48)

_ おばあちゃんのちえぶくろ

binutils は全部のバイナリ読めるのをビルドしておくとべんり。

i@uk:/data/backup/usr/local/stow/binutils-2.16/bin$ ls -lh
total 29M
-rwxr-xr-x  1 root root 2.0M Oct 25  2005 addr2line
-rwxr-xr-x  1 root root 2.0M Oct 25  2005 ar
-rwxr-xr-x  1 root root 2.7M Oct 25  2005 as
-rwxr-xr-x  1 root root 2.0M Oct 25  2005 c++filt
-rwxr-xr-x  1 root root 2.3M Oct 25  2005 gprof
-rwxr-xr-x  1 root root 2.7M Oct 25  2005 ld
-rwxr-xr-x  1 root root 2.0M Oct 25  2005 nm
-rwxr-xr-x  1 root root 2.4M Oct 25  2005 objcopy
-rwxr-xr-x  1 root root 2.6M Oct 25  2005 objdump
-rwxr-xr-x  1 root root 2.0M Oct 25  2005 ranlib
-rwxr-xr-x  1 root root 410K Oct 25  2005 readelf
-rwxr-xr-x  1 root root 1.9M Oct 25  2005 size
-rwxr-xr-x  1 root root 1.9M Oct 25  2005 strings
-rwxr-xr-x  1 root root 2.4M Oct 25  2005 strip

ただデカいのはともかく、 起動がえらい遅いので日用にはならぬー

(17:52)

_ 人為的に難しく作って

ハカーを育てているんじゃよ。ぐにゅーは…

ちなみに Windows 企業は IDE の購入を促進している/た

(17:54)

_ GDC

diff でかいなぁ。 そのままコンパイラ通るといいんだけど

(22:23)

本日のツッコミ(全2件) [ツッコミを入れる]

_ rui [「カッコのないLisp」のSRFIはきっとこれのことですね。 SRFI-49: Indentation-sensi..]

_ shinh [ああそれですそれです。ありがとうございました。]


2006-12-19

_ むみむみ

自分の言語が好きで好きでしかたがなくない m さんなんて見てて何も面白くないんじゃないかとかいう話。 まぁそれ以前にそうじゃないと成功しないよなーとか適当に思う。

(09:15)

_ 立ち読み

レッドを読むために(またそんなんか) イブニングを読んでみるになんか結構他も面白い気がした。

変態コードの部分を見るために Perl Ultimate なんとかを見た。 割と微妙なのが多いかなぁという印象だった。 まぁ面白かったけど。

で、 Perl 実用プログラミングかなんかを見た。 こっちの方が面白かったかもしれない。 でも要は Acme がすごいという情報以上でもないかもしれない。 あと Perl もリーダーいじる系のがあるのね。

(10:02)

_ Plan9 入れたいなあ

どこにって感じだが。

それはともかく、なんか全部 L ってついてるけど、 1バイトの方の命令使ってくれてるのかなぁと気になった

http://d.hatena.ne.jp/oraccha/20061210/1165757647

(10:50)

_ Mach-O めももめ

http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20061114#p01

http://d.hatena.ne.jp/shotaro_tsuji/20061219/1166458799

上のは前見たことあるなぁ。 Mach-O はまた今度やろうやろう

(10:59)

_ やってみた

ss56092@ux103 ~> as macho.s -o macho.o && ./textex macho.o a.out && chmod 755 a.out
ss56092@ux103 ~> ./a.out                                                ~ 11:04
zsh: malformed Mach-o file: ./a.out
ss56092@ux103 ~> ls -l a.out                                            ~ 11:04
-rwxr-xr-x 1 ss56092 student 495 2006-12-19 11:04 a.out*

おやー???サイズ違うのがまずもって不審である

(11:07)

_ フックAPI

サービス屋が提供すべき API は push pop 的なものじゃなくて、 何かイベントがあったらこの URL にこの引数で報告する、っていうような API かもなぁとか。

ブログ更新したらどっかに ping てのが あるみたいだけど、 あれの汎用版みたいな。

(12:22)

_ ASCII で書くメリット

i@u ~/wrk/binhacks> gcc ascii_golf.s
i@u ~/wrk/binhacks> strings a.out
/lib/ld-linux.so.2
__gmon_start__
libc.so.6
_IO_stdin_used
__libc_start_main
GLIBC_2.0
PTRh
QVh$
`j X$@P[PYPPPPX4.4 PZUX, P^XH,=P_)~(X3F()8)8@)8@@)8)8@PYX@@@@CQBaGHello, world!
[^_]

(12:26)

_ りょうりぶろぐ

卵焼きを作った。 油多めで作るとおいしくできるのさーと 思ったら入れすぎた。 油の中を卵が泳ぐ。

まぁ蒸発したら普通に焼けて、 ちょっと揚げ気味な部分もあったりしつつ、 焼けた後に油ちょいと捨てて喰ったらおいしかった。 やはりよくかきまぜたのが勝因でしょう。

高コレトリスコストロール

(12:29)

_ ASCIIアート

ASCIIだけで画像ファイル作ってこそ ASCIIアートだよなとかブクマーク見ておもた。

http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/shinichiro_h/20061219%231166489566

eps,xbm
誰でもできる
bmp,tiff
初心者向け
gif,png,jpg
職人向け

(12:44)

_ 最後の最後まで

浜地の浜が違うのであった。

http://www.phys.s.u-tokyo.ac.jp/whatnew/kyo/shuuron.htm

英文タイトル無い人っているけど、 しゅーろんて英語じゃないとダメじゃなかったのかな

(16:50)

_ com2txt とか

http://d.hatena.ne.jp/hasegawayosuke/20061219/p1

あるのかー。 作るのはそんなに難しくないよな。 なんか適当にエンコードして、 デコーダ先頭にくっつけてそのままエンコードした先に フォールスルーさせりゃいいんだよねたぶん。

にしてもすらしゅどてどしてた。 さとゆさんぱわー。

(16:56)

_ ld

の d ってなんなんだろう。 最初はローダだったとか…

(17:13)

_ TCC はすばらしい

3.59 vs 17.24

(17:35)

_ なるほどなぁ

x=i=gets.to_i
x^=i while 0<i/=2
p x

これ以外はできる気がしないと結論

(21:53)

本日のツッコミ(全2件) [ツッコミを入れる]

_ shotaro_tsuji [すいません、Mach-Oのやつですが逆スラッシュが疑問符に化けてました。 Safariで編集するとこうなる事をすっか..]

_ shinh [おお、ありがとうございます。とりあえずちょっといじってみたら358Bまでは減りました。もうちょっと減らしてみてからな..]


2006-12-20

_ うお見落としてた!

まともなリファラチェッカ無いのは恐ろしいことだよ…!

http://www.kt.rim.or.jp/~kbk/zakkicho/zakkicho18.html#D20061214-1

VC だとこんななるのかー。 実はこのへん気になることがいっぱいなので今度調べる。

トランポリンは実行時に生成しないと言わない… のだろうか。 僕は実行時に作るヤツしか見たことないけど、 よくわからんな。 Binary Hacks の用語集を見ると… 載ってねえ!くそめ!! いやでもまぁ索引からひくとまぁ そんな感じのことが。

うーむトランポリンは jmp 装置を持ち運んでる印象なんだろうな、 というわけでそれはジャンプ台とか呼びたいような気がするけど これも今度調べる。

うーんしかし ; Line 8 の一行下の ??_9@$BA@AE とそのあとの ??_0@$BA@AE が微妙に違うのだけど まぁこれはきっとタイポと予想するとして、 うーんアセンブリレベルでは… の後の HTML が </p になってますよ! とかいうのもまぁいいとして。

よし俺は(HTMLソースを)見たぞ! 二つ目は [eax+4] になってるのね。 例えば (void*)&C::vf が GCC に怒られるあたり、 たぶん C++ の仕様的に仮想関数ポインタが valid なアドレスである必要は無いと予想するんだけど (これも調べる)、 わざわざスタブ作る理由はなんかなぁ。

(04:18)

_ 409 でスタ〜ト

(05:02)

_ こんなんあるんやなあ

Exception in thread "main" java.lang.ClassCircularityError: c

(05:45)

_ まぁ

i@u ~/wrk/binspect> la Code.class
-rw-r--r-- 1 i 267 2006-12-20 06:31 Code.class

こんなもんかねえ

(06:33)

_

http://game10.2ch.net/test/read.cgi/gameama/1101264040/587

たしかに ygg とかでなんかコンパイルできない気がしてならない。 修正するかー

(06:42)

_ うう

GCC行けないな…3年恒例行事になってしまった。

(19:32)

_ 268B

ss56092@ux103 ~/golf> ls -l a.out                                  ~/golf 20:26
-rwx------ 1 ss56092 student 268 2006-12-20 20:26 a.out*
ss56092@ux103 ~/golf> ./a.out                                      ~/golf 20:26
Hello, world!

(20:27)

_ 248B

こんなんがマックスか! スカスカだよ Mach-O!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

(21:07)

_ WGC2

  • セクションとセグメントが同義?
  • ゴルフは無意味らしい
  • なんか無駄にコード貼ってる気がする

(22:17)

_ パレスチナ

http://www.afpbb.com/article/1174867

アニメキャラが。ハルヒらしい

(22:37)

_ J

http://d.hatena.ne.jp/ABA/20061220#p1

たしかに j すら書いてないすばらしい

(23:25)


2006-12-21

_ 行きたかた…

http://d.hatena.ne.jp/w_o/20061220#p1

しかし後悔する気も起きんくらいだるい

(01:12)

_ かっこEEEEEEEEE

http://www.the2bears.com/?p=795

(05:05)

_ 投げ銭

投げ銭してくれ! 一人3000円! よしここの3000円は俺が奢るぜ! みんな感謝しろ! というのはどうだろうどうでもいい。

どうでもいい

(05:56)

_ reddit 的な

ヤツって、 うまくいけばいくほど、 自分にとってはもう知ってるよ!的な 話題で埋まると思うんだけど、 欲しいのは完全に需要にマッチするものじゃなくて、 だいたいあってるけどちょっと興味外れてて 見てなかった的なものを紹介してくれて 知見が増えるというような話だよね。 精度が良さすぎるとまた問題なのかもね

(06:25)

_ はてぶ

りょうりぶろぐは はじめてのにきで一番はてぶ数が多かった話らしい。

http://shinh.skr.jp/m/?date=20061123#p02

その数なんと 2

(06:47)

_ すげー

http://rainer.blog7.fc2.com/blog-entry-55.html#comment

すんごい姉弟なんじゃなぁ

(06:53)

_ レベルじゃねえぞ

の元ネタは PS3 です。 忘れるのでメモ

(08:04)

_ トランポリン

http://www.kt.rim.or.jp/~kbk/zakkicho/zakkicho18.html#D20061220-1

えーとまさに GCC の関数内関数を関数の外に返す時、 に僕の言うトランポリンが作られていたような。

あああったこのへんとかです。 http://d.hatena.ne.jp/shinichiro_h/20060809#1155063870

というわけでこの場合、関数はスタックに作ると思います。

スタブは静的に作るトランポリンのようなもの をそう呼ぶこと_も_あるような気がしてたのですが たぶん勘違いです… 私が聞いた記憶があるのは CORBA とか RMI の 文脈だよなーと思って適当にぐぐってみると

http://java.sun.com/j2se/1.3/ja/docs/ja/api/javax/rmi/CORBA/Stub.html

http://www.wakhok.ac.jp/~tomoharu/ws2004/text/index_c6.html

あーうんなんか違うようなあってるような微妙な。

あーでも英語の意味は半券とか控えとかか。

http://ja.wikipedia.org/wiki/%E3%82%B9%E3%82%BF%E3%83%96

Wikipedia なんかはきむらさんの おっしゃってる意味だと思うのですが、 他にびょーんと処理投げる時にも使ってたようなーという。

(08:21)

_ エグゼンプション

つーかイだよなたぶんと思った。

>exemption
■exemption : 【発音】igzmpn、【@】イグゼンプション、エグゼンプション、
 【レベル】6
 【名】免除、免税、(課税)控除

昔どこかで(たぶんakrさんとこ)で拾った google-count でチェックだ!

i@u ~> google-count {イ,エ}グ{ザ,ゼ}ンプション
222     イグザンプション
117000  イグゼンプション
238     エグザンプション
438000  エグゼンプション

正解はやはりエグゼンプションです!! どうなるジェポン!?

大丈夫。 イギリス英語みたいなもんだと主張すればいいんだよ!

  • center => centre
  • ユバントゥー→ウブンツ
  • スリーシックスゼロ→サンロクマル

違和感無い!!!!!!!

(08:27)

_ 360

いやうん、万が一本人が見たらコトじゃないか。 言い訳を書くんだっ

いや僕全然英語喋れねえどころか 年中 sorry? pardon? で生きてるので すげーと思ったというか うまく喋ってる人見るたびに 英語喋れるようになりたいなぁと 思うんだけどほげほげ。 僕もしょっちゅう英語に日本語混じるというか、 まさにエックスハチロクは絶対たしか言ったことあるな。

あとなんかあったっけ。

(08:32)

_ エゴカウント

i@u ~> google-count {shinichiro{_,.}h,shinh,浜地慎一郎}
35600   shinichiro_h
25800   shinichiro.h
59100   shinh
19000   浜地慎一郎

. が負けてるっ!

(08:36)

_ はまじしん一ろう

http://www.google.co.jp/search?q=%E3%81%AF%E3%81%BE%E3%81%98%E3%81%97%E3%82%93%E4%B8%80%E3%82%8D%E3%81%86&lr=lang_ja

「生理痛_はまじしん_だいよね」

(08:37)

_ そうレッド

3話だけ見て思ったのは、 番号こえーというのと、 あと女が男ふる時に 二言目に女性蔑視とか言うのがすばらしいというか とてもリアルな感じがした。 すごく左翼的言動つーか。 なんでも理由をそっちに求めちゃう 傾向みたいなのあるよねえみたいな。

(08:56)

_ 前のMSの人

http://furukawablog.spaces.live.com/blog/cns!156823E649BD3714!6907.entry

いろいろ面白い。

(09:22)

_ nandemo

この程度面白いんだったら もうちょい開けててもいいんじゃないかなぁとか思ってて なんかそいう話ちらっとしたら 人少ない方が濃い的なこと言われて がっかりしたような気がしてたんだけど、 よく見ると普通に、 「それ以外のかた(他専攻・他大学・社会人・学部生)にも 気軽に来ていただいています.」 って書いてあるのであった。

http://pira.jp/nandemo/wiki.cgi?page=%A4%E8%A4%AF%A4%A2%A4%EB%BC%C1%CC%E4

(09:32)

_

http://www.tietew.jp/cppll_novice/archive/1616

cppll_novice に。 しかしどこが cpp novice な話題なんだろう

(09:35)

_ インター

http://d.hatena.ne.jp/u-no/20061218#1166465004

僕のまわりはなんでも喰う人ばっかりだなぁ。 ゲストだとそうもいかんけど。

どうでもいいが新しく入った外人は 絶対アニメとかゲームとか系だと思うんだよな。 日本のカルチャーに興味あるとか言う若い外人は 絶対そっち系だという偏見がある。 とりあえず日本語の勉強になると称して ハガレンを読んでいたという情報をゲトした。

(09:53)

_ BarCamp

なんか CompJapan に見えていたという

(10:33)

_

     - - :attributes
       - - - - :attribute_name_index
             - 9
           - - :attribute_length
             - 37
           - - :info
             - !binary |
               AAIAAQAAAAmyAAISA7YABLEAAAABAAoAAAAKAAIAAAADAAgABA==

http://www.coins.tsukuba.ac.jp/~i021216/diary/?date=20061221#p01

     - - :attributes
       - - - - :attribute_name_index
             - 1
           - - :attribute_length
             - 21
           - - :info
             - !binary |
               AAIAAQAAAAmyAAoSDLYAELEAAAAA

なんてこったそもそも実行文違うし!

つまり Java バイトコードを YAML つーか Ruby の配列に落としたり戻したりするツールを作ったのだが。

まぁこれすぐに ELF 対応とかできる仕組みつーか 要するに binareal が全然正式公開されないので 自分で作っちまえ的なね。

で、と思ったらなんかここだけ挿し替えても動かないのであった。 そして 250B はどんな感じなんだろうな。 まぁさすが Java な人。

(11:13)

_ 参照先が違うから

当然中身だけ挿し替えても動かないよね あたりまえだよね…

(11:16)

_ これちゃんと読むべきだった

http://java.sun.com/docs/books/vmspec/2nd-edition/html/ClassFile.doc.html#1546

000000 00 02 00 01 00 00 00 09 b2 00 02 12 03 b6 00 04  >................<
000010 b1 00 00 00 00                                   >.....<

max_stack = 2, max_locals = 1, code_length = 9, exception_table_length = 0, attributes_count = 0

はてあと 1B はどこかな…

(12:17)

_ 気がつくと

http://d.hatena.ne.jp/rubyco/20061220/password

るびこはちっともおんなのこじゃない

(12:54)

_ ハスなんとか

初出どこだっけ

(13:10)

_ ぐぐった限りでは niha さん

http://shinh.skr.jp/m/?date=20061009#c01

だけど違う気が

(13:11)

_ Mach-O

これもっと小さくなる。間違いないぜ。

(13:23)

_ 前ヨタで言ったんだけど

jmp_buf の最初のメンバの名前だけ、と、 そのサイズを教える JMP_BUF_SIZE とかだけあれば、 ずいぶんと助かったんだけどなぁ、と、 思ってたけどなんか別にそうでもないな。 SP と PC くらい取れねーと意味無いじゃん。

まぁ全然関係ないんだけど。

http://alohakun.blog7.fc2.com/blog-category-5.html

こういうの見てると スタックフレームが抽象化されて ユーザに明け渡されてる言語ってどんなかなぁと よく考えるもののイマイチピンと来ない。 きっと wo さんがなんか作るんだろう。

(17:26)

_ 例えば

前もぼんやり考えたけど。

sp = malloc(1000);
ip = &func;

でジャンプできればいいのか。 まぁこれは普通にありえん。

jmpbuf b;
b.sp = malloc(1000);
b.ip = &func;
longjmp(b);

やっぱりこれなわけで、 jmpbuf が sp と ip を持っていてくれていれば 良かったという話なのだろうか。 まず sp 無いマシンとかあるんだろうかという問題が。

これだと heap に作ったスタックのオーバーフローを検出できないので、 あふれた時は自然に伸長できるようにとか考えると、 うーん、まずはまぁスタックフレームは __builtin_frame_address で

typedef struct frame {
   struct frame* next;
   /* not portable */
} frame;

が取れるってとこまで標準で保障して、

jmpbuf b;
char* buf = malloc(1000);
(int*)buf = 1000; /* 死刑 */
b.sp = buf += sizeof(int);
b.ip = &func;
longjmp(b);

しておいてから、 あとは飛んでいった関数内でユーザが自主的に スタックの伸びっぷりを調べる (next を NULL になるまで辿って、 NULLになった前のアドレスを見ればスタックのサイズがわかる)。 いやーそれむっちゃめんどくさいっすねー。

あと今現在の関数はどれだけスタック使うか、 っつー情報取れないといけない。 まぁコンパイラは知ってる情報だよねたぶん。 それがあれば、それで今入ったばかりの関数が スタックを限界まで伸ばしてどこまでかがわかるので、 巻戻していったら現在サイズもわかる、と。

仮にこのくらい提供されてるとして嬉しいのは、 コルーチンに状態の永続化。 えーと、んーと、他になんかあったっけ。 永続化とか結構嬉しいんだけどなー。 こいう仕組みと isshiki なんのやってるような タスクベースのシステムとかだと、 一瞬でゲームの保存が作れるんだよなー。 C の標準化委員会がゲーム屋ばかりだったら きっとこういうのが入っていたことであろう。 数学屋ばっかりだったらこんなもん絶対入らんだろう。

結論としては死刑とかマネして書いてる暇あったらなんか ちゃんと書けというような。

stack_size(&other_func);

みたいなのはコンパイラに負担なく提供できる機能なのだろうか。

できるかな。 全関数に対して stack_size_other_func みたいな 変数を自動的に定義しておく。 んで stack_size(&other_func); は単純にその値に変えればオケ。 参照されなかったらリンカが消すつーことで。

で一方スタックレスにした場合は… 具体的にどうするんかしらんけど、 なんか関数に必要なぶんだけヒープから取ってきて、 適当に使って関数から出たら忘れるわけだ。 解放は GC 、と。 それ遅くね?っていう話なんだけど、 えーと本当にそんな実装するもんなんだろうか。 あとバイナリサイズでかくなりそうな。

でもスクリプト言語ならいいなぁ。

なんかそれなりの量になってしまった

(18:07)

_ 防衛軍3

http://d.hatena.ne.jp/logion/20061221#p1

ふむー360ほしいな。本当に欲しいのか

(18:14)

_ しれん

http://yowaken.dip.jp/tdiary/20061221.html#p01

むー見送りかなぁ。

ぼくは SFC シレン原理主義者ってそんなんばっかだけど。 シレンおもろい→ねとはくおもろい→シレンおもろい→ねとはくおもろい、 みたいな経緯でまぁねとはくあればそれでいいよ系に。 SFC シレンはまぁ倉庫無しクリアとか強い武器作るとか 最終問題クリアとか食神頑張ってもぐるとか (なんかデブートンの階層あたりでどうしようもなかったような) 罠師頑張ってもぐるとか(これどこまで行ったっけ) なんかバグって時限爆弾とかいう隠し罠が出てきたとか (これは弟が出したんだった気も) くらいはした。

ネトハクになくてシレンにあるものは、 よくできたバランスと、 あとは各要素の濃さというか。 1要素に対してのできることの量っていう観点ではシレンの方が多い気がする。 でもまぁ全アイテムに普通祝福呪いとかあるネトハクの方が 結局全体のあれは多くなるというか。 まぁそれは各要素をどう定義するかにもよるんだが。

(18:33)

_ にちのうけん

1

(19:52)

_ あってたー!

http://www.nichinoken.co.jp/sikakumaru/mondai/f_mondai_01.html

俺も捨てたもんじゃないよ

(20:27)

_ ハスなんとか

には情報によると

http://d.hatena.ne.jp/shinichiro_h/20060921#1158829745

らしい

(21:51)

_ 斑鳩

久々にコンチニューしまくりで 最後までやったら全然できなかった。 俺の時間をかえせ。

(21:51)

本日のツッコミ(全3件) [ツッコミを入れる]

_ wo [> きっと wo さんがなんか作るんだろう。 そ…そんな期待をされても困りま…す… やるなら、そのjmp_buf.s..]

_ shinh [ああやはり wo さんですか、さすがです > ハスなんとか あと勝手に期待しててすいません。 C-- とかのレベル..]

_ Gaqqbfyd [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]


2006-12-22

_ アンダーデフィート

買おうと思って買ってないな

(15:32)

_ あまぞん9000円

ぷれみあついてるの??><

(15:33)

_ ぽすとすくりぷと

おもしろそう

http://www.hizum.net/diary/?category=PostScript

(15:36)

_ C++09

そういや 0x は 09 になったのかな。

(15:43)

_ あと

nominal ってなんだろうとかな。

(15:43)

_ むう

http://d.hatena.ne.jp/alohakun/20061222

たぶん tcc_relocate はその名の通り再配置であって メモリにはりつけたりはしないと思うんだけど、 はてどこだっけ。

つーか DTR は TCC 使って実装すべきだなぁと思う今日このごろ。

(20:36)

_ ld なにやってるねん問題

http://d.hatena.ne.jp/y-hamigaki/20061222#1166785677

(20:40)

_ DMD

(gdb) bt
#0  0xffffe410 in __kernel_vsyscall ()
#1  0xb7cb8770 in raise () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7cb9ef3 in abort () from /lib/tls/i686/cmov/libc.so.6
#3  0x08050831 in Expression::implicitCastTo (this=0x8582520, sc=0x8582ce0,
    t=0x85575e0) at ../../gcc/d/dmd/cast.c:72
#4  0x0808ec97 in TypeFunction::semantic (this=0x8582568, loc=
      {filename = 0x8582148 "a.d", linnum = 1}, sc=0x8582ce0)
    at ../../gcc/d/dmd/mtype.c:2636
#5  0x080796ec in FuncDeclaration::semantic (this=0x8582608, sc=0x8582ce0)
    at ../../gcc/d/dmd/func.c:114
#6  0x08094aa7 in Module::semantic (this=0x8582058)
    at ../../gcc/d/dmd/module.c:636
#7  0x080c0868 in d_parse_file () at ../../gcc/d/d-lang.cc:960
#8  0x08333838 in toplev_main (argc=2, argv=0xbfa503f4)
    at ../../gcc/toplev.c:1010
#9  0x080f3332 in main (argc=Cannot access memory at address 0x137c
) at ../../gcc/main.c:35

(22:07)

_ Reiser

http://en.wikipedia.org/wiki/Hans_Reiser#Wife.27s_disappearance

メモっておこう via スラド

(23:51)

_ 至るところに warning

わらた

いたるところに #line つっこんだのがなつかしい

http://d.hatena.ne.jp/shinichiro_h/20040727#p1

pragma 埋めてたんか。 まぁなんにせよはるかにしょぼい

(23:56)

本日のツッコミ(全2件) [ツッコミを入れる]

_ k.inaba [達成されるかどうかはともかく目標は09になったそうです。 http://www.artima.com/cppsour..]

_ shinh [ふむふむありがとうございます。なんかいかにも無理そうな目標ですね。]


2006-12-23

_ そういや返り値問題

http://pc8.2ch.net/test/read.cgi/tech/1165621441/72

別に auto はどっちでもいいんだけど、 んーと。

LongLongLongLongName!(T) f(T)(T t) {
  return new LongLongLongLongName!(T)();
}

こんなんがめんどい。

template f(T) {
  alias LongLongLongLongName!(T) LN;
  LN f(T t) {
    return new LN();
  }
}

現状これはできない。

YT さんが書いてたみたいに (http://d.hatena.ne.jp/ytqwerty/20061208#p2) こういう場合に this 使うようにして、 省略したら同名とかじゃなくて this とかなら 問題なくなるような気もするけど、

LN this(T t) {

うおーキモいぜというか、 別に問題は変わってねえ。

(01:18)

_ どうあるべきか

これは通らない。

class C(T) {
}

template f(T) {
    alias C!(T) CT;
    CT f(T t) {
        return new CT();
    }
}

void main() {
    f(1);
}

わからんな。

(01:24)

_ まぁとりあえず

auto あればうれしいのかもしれない。

auto f(T)(T t) {
  return new LongLongLongLongName!(T)();
}

でもこれまた大変そうな気がするんだけど

(01:33)

_ 自分でもメモ

http://d.hatena.ne.jp/hatenadiary/20061215/1166155734

はてなのスーパーpre記法で使える言語一覧リスト。

(02:55)

_ あじゃちゃ

http://blog.perl.tv/2006/12/usr1.html

あじゃあじゃ。

(04:41)

_ 良さげ

http://d.hatena.ne.jp/hasegawayosuke/20061222/p1

これはリテラシがうんぬんとかいうレベルじゃなくて 無理だよなぁ。

ぶっちゃけ俺はスペースで 右の方に .exe って書いてあっても ダブルクリックするね。 リテラシ無いし。

(05:13)

_ skk-tutorial うざい

(global-set-key "\C-xt" nil)

を skk.el に、でいいんだろうか。 \C-xrt を覚えてから typo 率異様に高い。

(05:17)

_ Conclusion書いた

やっとかよ。 あとは修正まつりかねー

(06:21)

_ swap

Firefox の swap がうっさいから swapoff しちまえ… とオフにしたけど、 さすがにそれはどうかなーと思ったので、 swappiness を減らしてみた。

i@u /proc/sys/vm> sudo sh -c 'echo 10 > swappiness'

(07:48)

_ property

http://pc8.2ch.net/test/read.cgi/tech/1165621441/84

個人的には、もう コンパイルタイムシンボル操作 普通にできりゃいいのにね…と。

template (T, char[] name) getter {
  typeof(T) <[ name ]>() { return <[ name ~ "_" ]>; }
  typeof(T) <[ name ~ "_" ]>;
}
class C {
  getter!(int, i);
}

(07:59)

_ hpm

squeezed state の引用

(08:30)

_ :=

http://d.hatena.ne.jp/nazodane/20061209/1165634909

Python の or 欲しい激しく同意ーと思ってただけだったけど、 Ruby に := とかあったっけ。

(09:31)

_ ふーむむ

http://homepage3.nifty.com/mogami/diary/d0612.html#23t3

納得できないけど 一定正しいなぁみたいな。

(09:45)

_ RHG

  • いわゆるオブジェクト指向の機能が必須(笑
  • 毛が3本。しつけ、なさけ、やりとげ
  • なしとげる、うちとげる、ききわける
  • バージョンよくわからん
    • JS-1.0, NS-2.x, IE-3.0
    • JS-1.1, NS-3.x
    • JS-1.2, ~NS-4.05
    • JS-1.3, ECMA-1st, NS-4.06~, IE-4.x
    • JS-1.5, ECMA-3rd, NS-6, Mozilla-0.6?, IE-5.x
    • JS-1.6, Firefox 1.5
    • JS-2.0, ECMA-3rd
    • http://d.hatena.ne.jp/ABA/20051201#p1
  • ActiveTcl?
  • Netscape が Java 商標を買った
  • ECMA のドメインは ch - スイス
  • type="text/javascript" ?
  • <script ... defer 要素
  • firebug, Execute.JS
  • var はつけましょう
    • var 無しだとトップのプロパティ
    • var あると Call オブジェクト
  • はじめての人のためのLISP
  • Unicode変数
  • いやなぷろぐらむ
  • UTF8
\u3042=1;
println(あ);      // 1
println("1"+1-1); // 10
  • エラー
x=0;
return
x++;              // 0 が帰る
  • 範囲
println(1..toString());   // 1
  • >>>
  • 12222.22222%-3.222
    • "22">"121" // true
    • "22">121 // false
  • = は 1.2 と 1.3 で入れ替わた。
  • &^| は == より下なのは変…と思ったら C もそうだった。 Ruby に毒されすぎ

(17:41)

本日のツッコミ(全4件) [ツッコミを入れる]

_ nazodane [>コンパイルタイムシンボル つ http://www.digitalmars.com/d/archives/digi..]

_ nazodane [>Ruby に := とかあったっけ。 俺の勘違いです。Makefileの?=と勘違いしてたようです。]

_ bashi [Rubyには||=がありますが、これのことですかね。 ||=がある、というよりは単なるsyntax sugarですが..]

_ shinh [コンパイルタイムシンボルは今のDの雰囲気見てたら誰でも考えるよねえと思いますがやはりあったんですね。 あと ||= ..]


2006-12-24

_ ねむい

(00:58)

_ JSとPF

(18:59)

_ GDC

普通にコンパイルできた

(19:18)

_ Pythonは

JavaScriptをまともにした言語なんじゃないかとか。 delete とかは生きた。

(19:18)

_ カクマルの人って

どのくらい陰謀論を信じてるのかなぁと 結衣ちゃんに言われた。

全く同意

(19:19)

_ CAVE

は四谷地域センターとかにあって謎

(19:20)

_ PF

久々にやると全然できなかった。 技が出ないとかそういうのはどうかと。 極まったカルロかっこえーなぁという感だった。 まぁでも見た感じ当時より すごくなりまくってるということも無さげ。

(19:22)

_ 車オーディオニセ科学

http://blog.livedoor.jp/dqnplus/archives/880979.html

そうなんだよなぁ。

(20:15)

_ Gダラ無理があっていい

http://www.taito.co.jp/ztt/chaku_test.html

(20:44)

_ bibitem

を補完で出したら binary になっていた

(22:20)

_ 全く正しいな

> |ada| を含む日記

http://www.kmonos.net/wlog/68.html#_2116061224

考えてなかったや。 生成されてる html には出てないのが残念だなぁ。

(23:24)

本日のツッコミ(全6件) [ツッコミを入れる]

Before...

_ shinh [あ、たしかに。なるほどありがとうございます。 del とか delete をはじめとして結構共通点が多いように思っ..]

_ odz [> それぞれどういう出自なのか気になるところです。 以下が参考になるかもしれません。 http://www.digi..]

_ sumim [Python の動的な側面は(設計者が言明しているように…)Smalltalk にインスパイアされたものだと思います..]

_ shinh [情報ありがとうございます。私が気になってたのはどっちかというとどうでもいいシンタクスの類似点とかだったんですが、そっ..]

_ shinh [出自の方は、 http://www.levenez.com/lang/history.html なんかをよく見て..]


2006-12-25

_ WebTTY

http://journal.mycom.co.jp/articles/2006/11/30/webtty/

via http://d.hatena.ne.jp/nminoru/20061201/webtty

http://testape.com/webtty_sample.html

前見たヤツより良さそうかも。 前にこいうの探した理由は UM を リモートで触らせてみたかったからだった。

(00:13)

_ bio 100%

むしろあの場でわかんない人とかいるもんなんだろうか。 世代的にギリギリぽい俺でさえわかったしなぁ。

(00:28)

_ zh

http://d.hatena.ne.jp/giveup/20061224#1166971232

うわ知らんかったていうか 昔一瞬知ってた気もするけど…

とりあえず strings =skkinput とかした結果、

skkinput-rom-kana-rule-list:            ( "zh" "" "←" "←" )
skkinput-rom-kana-rule-list:            ( "zj" "" "↓" "↓" )
skkinput-rom-kana-rule-list:            ( "zk" "" "↑" "↑" )
skkinput-rom-kana-rule-list:            ( "zl" "" "→" "→" )

とすれば良いとわかた。

(00:41)

_ シンタクスハイライト

http://d.hatena.ne.jp/ytqwerty/20061224#p1

YTさんが使う決意をしたのはいなばさんが Ada を例に使うという英断をされたからに違いないと思われ、 ああ偉大だなぁと思うのでした

(01:43)

_ Control Up とか。

Control とアローキー叩くと、 ;5D とか出てきてむっちゃ便利、 とかそういう強がりを言っていた時代もあったのですが、 いややはりキツイだろうという結論に達しました。

ここに達するまで数ヶ月。

コンソールに降りて ;5D とか出ないことを確認。 ていうことは X のみ対処すればいいので zsh とかのレイヤじゃない。 X はわけわからんよなぁと思いつつ、 emacs ではそういや問題出ねえよなと思って、 mlterm で対処したらいいかと思った。 .mlterm/key とかを見てみると、

Control+semicolon=INSERT_SELECTION

とかそういう昔やった設定が残っていた。 semicolonってどこから来たねん、と思って、 mlterm のソース見るにそういう文字列無い。 んじゃ、と思って us.map とかそのへんのキーマップ見るとこれみたいだ。

Control+Left=""
Control+Right=""
Control+Up=""
Control+Down=""

カンでこんな感じでやってみたら、 見事消えた。 3分もかからん作業をずっと放置して不便だった…

(01:49)

_ ほうほう

アンテナにはあったのに なんか実際見ると内容消されてたから わくわくしてたんだけど。

d.hatena.ne.jp/Hamachiya2/20061224/1166974795

足あとつくらしいけど本当なのか。 怖くて Firefox で開けないお。

なんかスクリプト見ると onload とかあるので見るだけで ダメなのかなぁと思うけど、 でもリンクになってるから見るだけなら大丈夫なのかもしれない… とか悩みどころだ!

(07:05)

_ cookie

昔の俺は偉大だ。

system("/home/i/bin/w3mcookie2wgetcookie.rb /home/i/.w3m/cookie > cc")
system("curl -F csvfile=@count.csv -b cc 'http://graph.hatena.ne.jp/shinichiro_h/import' >> curl-log")

はてなグラフの自動更新はこうやって行われていたと今知った。 これ安定して動いてるしたいしたもんだ。

(07:36)

_ 継続ベース crontab

少しずつさせたい作業なんかは、 継続ベースで起動するたびに 次の作業するアプリみたいなのが面白いんじゃないかな。

(07:41)

_ 引数つき chop

class String
  alias chop_ chop
  def chop(s=nil)
    if s
      if s.kind_of?(String)
        ss = s.size
        if size < ss || (v = self[size-ss,ss]) != s
          self
        else
          self[0,size-ss]
        end
      elsif s.kind_of?(Numeric)
        if self[-1] == s
          self[0..-2]
        else
          self
        end
      else
        raise TypeError.new("cannot chop with #{s.class}")
      end
    else
      chop_
    end
  end
end

if __FILE__ == $0
  p "abcde".chop("de")
  p "abcdef".chop("de")
  p "abcde".chop(?f)
  p "abcdef".chop(?f)
  p "abcdef".chop
end

こういうのあっても良いのではないかな。

(08:49)

_ EPR

前もメモったと思うんだけど!

http://prola.aps.org/abstract/PR/v47/i10/p777_1

(10:46)

_ やっと

Nielsen がリファレンスに入った。

(10:51)

_ AS だと parseInt が必要

http://www.atdot.net/~ko1/diary/200612.html#cc23-4

あとで

(11:33)

_ HPM

by a factor of

(12:00)

_ おもしろそす

http://d.hatena.ne.jp/TERRAZI/20061224/p1

あとで

(12:45)

_ 予定を考える会

  • 3章直す
  • メール
  • 寝る
  • 起きる
  • 学校
  • 帰る

(16:26)

本日のツッコミ(全1件) [ツッコミを入れる]

_ giveup [ありがとうございます←↑→↓]


2006-12-26

_ Maxwell

http://jp.arxiv.org/pdf/cond-mat/0609085

http://d.hatena.ne.jp/nushio/20061225#p1

おもしろそすと思ったけど WINEで動かん&Windowsマシンイカれてる、 のであとで。

なんか歴史に Bennett 出て来ないんやな。

(03:08)

_ 外部サービス

http://risky-safety.org/~zinnia/d/2006/12/#20061224-t2-h1-p2

予定がどうこうに関してはデータが 使えなくなると悲しいなぁという話はわかるけど、 外部サービス一般に関しては、 まぁどうせ Web があるって言っても10年くらいのスパンで 似たようなありようかどうかは結構わからんし、 まぁつまり遅かれ早かれ切り替えは必要な 可能性は高いので、あとは学習コストに対して 何年使えりゃ満足か、って話なんだろうなぁと。

あと知らない間に変更はたしかに大きい問題。

あと SNS はそっちの理由は弱いかなぁ?という。 僕も SNS 嫌いなので理由は一緒じゃないかもですが 宗教上嫌いなのは理解できるけど、 見るだけなら自分は依存しないし…という。

僕的には存在のイヤさと自分が見られない場所があることの イヤさを比べてみて…ていうような話だった

(03:21)

_ はてな用リファラチェッカ

今度こそだいぶマシなのを作った。 あとは見たサイトは5日くらいは隠すとか そういう機能があるといいかなぁ。 あとこっちへのリンクがあるかのチェックと、 リンクがあったらそこに目印入れとくとか、 あと http://hogehoge/hage/ まで一致したら 折り畳むべきだよなぁたぶんとか。

(04:28)

_ tDiary

バージョン 2.1.4 に。 めんどくせえなぁ。

(04:59)

_ キモい

  • 某〜
  • 〜氏
  • Y田
  • 濃い

情報系の人とかなんでこういうワードが好きなんだろうなぁ。 あと自分とか言う人もキモいと感じることが多いけど 別に言葉自体は問題を感じないなぁとか

(09:41)

_

なんか俺の知らんところで俺の書いたものが 活字になっているという噂を聞いて びびって本屋を見てみるも載ってなかったよかた。

しかし新書ってえらいたくさんあるんやなぁと思った。

(09:42)

_ suEXEC

./configure --enable-mods-shared=all --prefix=/usr/local/apache2 --enable-so --enable-proxy --enable-suexec --enable-cache --with-suexec-docroot=/home --with-suexec-caller=nobody

適当にオンにした

(10:15)

_ 前者は似たようなもの作ってたなあ

http://d.hatena.ne.jp/higepon/20061226/1167098839

wdired と moccur-edit 。知らなんだ。

似たようなものあった http://shinh.skr.jp/koneta/#fne

(11:16)

_ ツッコミメール

2つ来るとは親切だなあ

(16:05)

_ ZAQ

SMTP閉じてるんだな。 前帰った時の設定が残ってたから サックリポートフォワーディング

(16:06)

_ リンク元が色々復活してるなぁ

なんでやねん

(16:18)

_ なんでキモいか

  • 某Y田氏

別にまっとうな用法なら問題ない。 「某社のエンジニアは〜を使っていました」 とかならたいていいいわけだ。

別に重要じゃない名前っていうか それタダのお前の友達やろみたいな 隠してもしゃーない名前がこう変化していることがあまりに多い。 あとぶっちゃけオヤマノタイショウというか、 そういうのにあてられることも多いけどキモいなぁ。

  • 濃い

これに限らず自分のコミュニティに対して こういうの使うのがもうそれはもう嫌いで嫌いで…。 世のコミュニティの8割は 「この界隈は濃い人が多い」とか 口走ってる人がいる気がしてならない。

まぁ、別にいいんだけどね。 俺が一人でがっかりしているだけだし。

(16:39)

_

http://shinh.skr.jp/boost/MPL-tut.txt

自分で文章の概略を書いたらしいが、 全然覚えてない。 昔の俺は偉大っていうより別人だな

(18:18)

_ すたっく

すたっくについてぼんやり考える。

すたっくの位置って指定できないのかなぁと思って、 PT_GNU_STACK を適当にバイナリエディタでいじってみる。

i@u ~/test> cat stacktest.c
int main() {
    int i;
    printf("%p\n", &i);
}
i@u ~/test> readelf -l a.out G GNU_STACK
  GNU_STACK      0x000000 0xbfee3000 0x00000000 0x00000 0x10000 RW  0x4
i@u ~/test> ./a.out
0xbfa80be0
i@u ~/test> ./a.out
0xbfd3be90

あ、そう。なんかたぶん無理みたい。 まぁ PT_LOAD じゃないんだしそりゃそうだろうし わざわざ kernel 見なくてもいいだろう…

んで stack が munmap できない件という話。

http://mkosaki.blog46.fc2.com/blog-entry-246.html

まぁ今回は別に munmap したいわけでもない。

(19:59)

_ はてぶ

ほえー

http://b.hatena.ne.jp/entrylist?url=http://d.hatena.ne.jp/Hamachiya2/

こっちだと無いんだけど、

http://b.hatena.ne.jp/entrylist?url=http%3A%2F%2Fd.hatena.ne.jp%2FHamachiya2%2F&sort=eid

こっちだと 56 users の 「【クリスマス特別企画】mixiの「足あと」をはてなで体験してみようね!!」 があるわけね。 注目エントリ〜からフィルタリングしてあるのかなぁ。

んー相変わらずなんかなぁ。

http://d.hatena.ne.jp/hatenadiary/20061225/1167010250

(20:14)

本日のツッコミ(全5件) [ツッコミを入れる]

_ あろは [>> Kimoi そういえば,こないだ M1 とか一瞬だけ見たとき,アキバ系ドラえもんとかいうネタをやってる漫才師..]

_ shinh [> アキバ系 ある…んですかねえ。まぁ、そこまで露骨にキモいのは見る機会があまり無いので特に問題はないです。 >..]

_ あろは [なるほど,理由を見ていろいろ納得できました. やたら声がデカい (あるいはカン高くて) 特有のアレなしゃべりかたと..]

_ k.inaba [某Y田氏とは言わないけれど、某山田氏とは時々言う私が考えるに…。 >なんでこういうワードが好き ソナー(http:..]

_ shinh [あーそれはわかるんですが。 何がキモいんだっけなぁ、いやいずれにせよキモいんですが。 * 完全内輪でやってるぶん..]


2006-12-27

_ あれー

http://d.hatena.ne.jp/Hamachiya2/20061227/1167141533

そそうなのか。 そうなのか。 うーんはてなのリファラは外部サービスからは取得できるけど 自分で作ったものでは取れねーってことなんだなぁ。

うーんホントはてな逃げてえ。 まぁ逃げないけど。 なんか作ってたリファラチェッカは便利げである

(01:04)

_ GBL

ふむ…

http://d.hatena.ne.jp/ytqwerty/20061226#p3

NYSL が「これタダだからね!使ってね!! 本当に好き勝手使っていいんだよ!!!!!!!!」 っていうことを感嘆符の数くらい全力で public domain であることを表現するためのライセンスであるのと 同様に、 「これ冗談だからね!使わないでね!! 本当にこんなもん使うと死んぢゃうからね!!!!!」 っていう意味で GBL を定義する意味はあるかもしれない、 っていうように理解しました。

… 本当にその意味がありそうなのがおるずです。

しかしマウスカーソルxor特許対策には 使えないんじゃないのかなぁ…とか。 普通に便利だし。

(01:22)

_ w3m

なんかセキュリティホールがあったらしいので cvs up しといた

(19:18)

_ 絶望した!

i@u ~/test> cat print_null.c
int main() {
    printf("%.*s\n", 2, "\0a");
}
i@u ~/test> gcc print_null.c
print_null.c: In function 'main':
print_null.c:2: warning: incompatible implicit declaration of built-in function 'printf'
i@u ~/test> ./a.out

(19:41)

本日のツッコミ(全5件) [ツッコミを入れる]

_ YT [マウスカーソルのxor描画は、その昔、普通に使われていたにもかかわらず、特許を取得して荒稼ぎした企業があったという話..]

_ YT [って、普通に使えるケースでも使えなくなるって話ですね。誤読ごめんなさい。こっそり直しておきます。]

_ shinh [ふと、「GBL は GBL でライセンスされています。 GBL を使うためには 10 おくえんください。ください。」..]

_ kosaki [あれ、マウスXORは逆の話を聞いたことがあるような。 今ではみんな当然のように使っているけども実はIBMが特許をもっ..]

_ shinh [私がXORについて聞いたのは、どっかが持ってるからガクブル、くらいです。マウスじゃなくてボタンって聞いた気がしますが..]


2006-12-28

_ めも

  • > ls
  • cgi
  • コンパイラ

(04:02)

_ YARVのあれについて

(13:55)

_ まとめ

だるいので思い返し。

だるっと思い出すに、

  • 海外行って、「英語にもまれりゃ自然に喋れるように…」的な言動はデキル子の戯言だと確信した。
  • 本書いて雑誌書いて論文書いて、既によく知ってることを知ってしばらくしてから書くことがいかに面白くないかを知った。
  • なんかぐぐるに行くことになった。
  • 今年も実に色んな人に会えた。
  • 研究のネタ増えないっぷりは異常。ツメが甘いというかツメが面白くねえというか。
  • 引越した。自宅サバはまぁ便利。
  • ゴルフに目覚めた。というかイヤなコード系が楽しくなった。ホビーノウハウ。
  • D が面白くなってきた。

だるっと考えるに来年の抱負とかは

  • 引き続きだらだら生きつつ今後のだらだらも確保する
  • 英語。
  • なんか数学なり物理なり勉強したい。
  • なんかコンパイラ書きたい。あと OS も。

そんな感じかなぁ。

(14:21)

_ メタプロ

どうせその後のコンパイラの実行でエラーになるから メタな段階では荒く、ってのは cpp の発想と一緒じゃんねぇとか。

(15:23)

_ 結論だけ読んだけど

http://blogs.yahoo.co.jp/y_ma_su/43194179.html

まぁその結論は賛成。

via http://blog.livedoor.jp/dankogai/archives/50724736.html

あとうひひ

(15:44)

_ exe

i@u ~/res/hpm> google-count ホワイトカラー-{イ,エ}グ{ザ,ゼ}ンプション 497 ホワイトカラー-イグザンプション 113000 ホワイトカラー-イグゼンプション 543 ホワイトカラー-エグザンプション 199000 ホワイトカラー-エグゼンプション i@u ~/res/hpm> google-count {イ,エ}グ{ザ,ゼ}ンプション 620 イグザンプション 131000 イグゼンプション 417 エグザンプション 540000 エグゼンプション

_ exe

i@u ~/res/hpm> google-count ホワイトカラー-{イ,エ}グ{ザ,ゼ}ンプション
497     ホワイトカラー-イグザンプション
113000  ホワイトカラー-イグゼンプション
543     ホワイトカラー-エグザンプション
199000  ホワイトカラー-エグゼンプション
i@u ~/res/hpm> google-count {イ,エ}グ{ザ,ゼ}ンプション
620     イグザンプション
131000  イグゼンプション
417     エグザンプション
540000  エグゼンプション

_ WebTCC

よく考えると /etc/passwd とか include できるんだよなーと思ったので止めておいた。当時もそれは考えたけどたいして情報を持ったエラーメッセージ出ないみたいだったから短期間限定で動かしておくつもりだったような気がする。

_ お金

http://www.kt.rim.or.jp/~kbk/zakkicho/zakkicho18.html#D20061226-1

どんどん高価に〜は確かにあやしいなぁとは思いますが、 どんどん必要性が高くはなってはいるかなぁと。 実家帰って聞くになんかパワポ入りノートPC買うのが義務らしく。 まぁ義務ってことにしておけばたいていは 親から金ひっぱれるだろうから デジタルディバイド減るぜみたいな話なのかなぁと 弟と喋ってました。

あとウィルス対策系に金かかるとか。

まとめると、 ソフトが高くなってるっていう大元の話は どうなんだと思いますけど、 おそらく自分で購入する必要がなかった じうまんえんと比較するのも少し違うかもしれませんね、というか。

入学時ノートPCのじうまんえんて 完全に援助前提の額面だよなぁ… 1台目は3万くらいだったけど、 じうまんくらいした2台目のノート買った時は 2ヶ月くらいの月収が飛ぶわけで、 なんか1年以上溜めてた金が飛んだような。 たぶん1台目が2年目5月くらいで 2台目が3年目11月くらいとか? 今の R40e が

http://d.hatena.ne.jp/shinichiro_h/20040614#p1

だから6年目の6月かぁ。

つまりなんかそろそろ次のマシン買っていいよ的な 時間が経っているのである。 なんか欲しいなぁ。

_ しかし魅力的なマシンなどあっただろうか

B5 マシンはまぁ今のところいらない、とする。 むしろもっと液晶デカくてもいい。 1280x960 だっけ、 1024x768 より解像度いいやつがいいなぁ。 IGP340 はそろそろアレなので 3D の機能もっとあるマシンがいい。 まぁ ARB_fragment_program があればいいんだけど。 あとは x86 じゃないアーキテクチャだといいかも。

  • iMac 。 Linux ぶちこんで使う。むしろ PPC のヤツが欲しいような。
  • Thinkpad 。最近のってあんまし魅力ナシ系?
  • なんかいなばさんが使ってたやつみたいな。 x86-64 のヤツ。

まぁよくわからんので今度アキバふらつこう。

_ まとめると

  • 10万ちょい
  • GeForce
  • 1280x
  • 64bit
  • トラックポイント

どこにそんなマシンあるんだろうか

http://kettya.com/notebook/shopbrand/progress_at.htm

なんかこいうのいいのう


2006-12-29

_ プログラムヘッダ

ET_EXEC な ELF ってバイナリの終着点だなぁと思う。 情報が冗長になってるんだよね。 情報が冗長になってる理由は要するに 情報を引っこぬくことに最適化してるとかそういう話で 逆に正当性を維持しながら さらに編集するのには向いてないんだなぁとか。


2006-12-30

_ w3m

http://d.hatena.ne.jp/mmatsuoka/20061230#1167410021

完全に同意。なんとかできないかな。

_ なんでもゴルフ

週末ゴルフとかイヤだなぁ。

_ アイチー系の仕事

は基本的に詐欺だと思う話が、紳士会で少しあったんだけど。

その場で言ってたのはエクセルに帳簿つけて、よっしゃ全部レシート入力したぜ!という後でおもむろに電卓を取り出してその合計値を電卓で計算して合計の欄に書き込むというようなことをしているところに10万でエクセルの式を書きこんでやったらたぶん感謝されるというような。

まぁそこまで露骨でなくてもあとは程度問題で、バイト週一で働かしただけでこのおねだんですか!みたいな仕事はたくさんあるし、まぁなんか逆にこれやるだけマイナスちゃうんかというプロジェクトとかもあって、うまくバランスしたりしなかったりしてまぁほげほげなんだなぁと。

で、まぁ金取る技術とぷろぐらむの技術ってまぁあんま関係ないのでほげほげと。んだから

http://d.hatena.ne.jp/w_o/20061229#p9

技術を直接お金にしたいっていう考え方はたくさんの悲劇の元…って最近ずっとそんなこと言ってるなぁ。

あと Adsense というより Adwords なのかなとか。

_ はてぶ数に見る

http://b.hatena.ne.jp/entrylist?url=http%3A//d.hatena.ne.jp/shinichiro_h/&threshold=15

19,プロファイラまとめ
こういうまとめ系はやたら増えるよなぁ。本当に後で読むんかいと。
23,RubyFS
まぁウケの良さそうなネタではある。
30,ASCIIプログラミング
まぁウケの良さそうなネタではある。つか /.Jed が強い気もする。
32,Eyedrop
まぁウケの良さそうなネタではある。
40,AJA Chat
Comet ってのはいつ頃初出の概念なんだろうなぁ。結構古そうなんだけど。
55,人狼探知機
非プログラマに伝播したら増えるのかなぁ。

去年の思い出というと sed とかの方が楽しかった気がするんだが。

  • D 言語とかみたいな非メジャーには触れない
  • 「ほげほげまとめ」を書く
  • Web にからめる。

というあたりで SBO ができるようだがどうでもいい。

つかどっちかっていうとブックマークとかより 被リンクの方が嬉しいよねという話が。 なんかブックマーク数とリンク数とアクセス数を 同時にチェックするツールとか書くとたぶんたくさん ぶくまくもらえますよ奥さん。

http://b.hatena.ne.jp/entrylist?url=http%3A//shinh.skr.jp/&threshold=15

こっちもあった。めんどくせえな。

26,オブジェクトファイルについて
これは結構マジメに書いたので嬉しいかな。つまるところまとめ系。
24,よみかたあんけーと
これも結構やりたかったことではある。
27,はてなワードウルフ
はてながらみバイアスが。
27,被はてぶカウンタ
これ本当にどうでもいいと思うんだが。はてながらみバイアス多すぎ。

_ [Perl][JavaScript][Plagger][はてぶ][はてな][Web2.0][まとめ]

大人気確実エントリ〜。

_ だるい

ごろごろころがってるだけだなぁ。

_ TODO

  • げんしけん
  • もやしもん
  • 課題の件

_ ゲルマニウム

http://jukoudou.cocolog-nifty.com/blog/2006/12/post_0160.html

http://ja.wikipedia.org/wiki/%E3%82%B2%E3%83%AB%E3%83%9E%E3%83%8B%E3%82%A6%E3%83%A0

はりかたが重要らしい。

http://jukoudou.cocolog-nifty.com/blog/2006/03/post_de23.html

ゲルマニウムカツラのデメリットは 初期の悪性腫瘍の痛みが取れてしまって気付かなくなること。

http://jukoudou.cocolog-nifty.com/blog/2006/03/post_bf9b.html

よくわからなかったけどいいことばかりでもないらしい。

http://jukoudou.cocolog-nifty.com/blog/2006/03/post_275f.html

_ TODO

  • 記憶喪失の件を思い出す。

_ おかしい…

週末ゴルフを楽しむとかそんな記述が多いぞ。

http://www.google.co.jp/search?q=%E9%80%B1%E6%9C%AB%E3%82%B4%E3%83%AB%E3%83%95&lr=lang_ja

_ HPM

  • 4. 最初
  • 4.3.3 最後

_ Haskell 系譜

http://page.freett.com/shelarcy/log/2006/diary_12.html#shiwasu162006

メモり忘れてたのでありがたやとメモ

本日のツッコミ(全2件) [ツッコミを入れる]

_ wo [あー、AdsenseとAdwordsは区別が付いてませんでした。反省。 悲劇の元というのは、確かにそうかもしれないで..]

_ shinh [おおやはり認めたくないですかー。僕もどっちかと言われればそうなんですがだらだら生きるとかが優先事項としてある場合は、..]


2006-12-31

_ volatile

http://www.dodgson.org/omo/t/?date=20061229#p01

http://mkosaki.blog46.fc2.com/blog-entry-294.html

のあたりを見てて、 俺 volatile 使ったこと無くね?と思った(本題と関係ねー)。 あと面白画像キターと思った(本題と関係ねー)。

_ 続き忘れてた

期待すべきは休日とか今後のダラダラ資金とかまわりの人間とかで、 いのべ〜しょんとかチャレンジブルとかは まぁどうでもいいこともないけど、 1.どうせ仕事でゴルフはできないしたかが知れてる && 2. 前者ほど優先すべきでない 、 かなぁと思うのがここ数年の考えなんだけど、 まぁつまり5年前くらいは考えが違った気がするのは なんか結構僕的にはなんか珍しめな気がするので 今後が楽しみです、と記録したかったのだった。

_ みくしコミュ乗っとり

とかがあるらしい。

http://www.kotono8.com/2006/12/30mixicommujack2.html

ひとしきり眺めて思ったのは コミュ乗っとりっていう攻略が楽しい、 チョイワル達、って感じなのかなぁとか。 洛南高校にいた「不良」みたいなそういう印象というか。

なんか最初見た時はこれなんやろなぁと しばらく混乱した。 よくわからんなぁ。 どういう人たちなのか見てみたくてしょうがない。

あとみくしのこのシステム上、 倫理的な問題を置いておけば管理人は何してもいいぽいので ヘタな委任をした前管理人の罪は重いんじゃないかとか 思うのであった。

_ もやしもんとげんしけん

を読んだんだけどなんか似たようなユルさだなぁと。 どうでもいいけど荻上さんは人間として 不自然な存在に思えてならない。 本当にこんな人存在するもんなのだろうか。 もやしもんの不自然さはもっとマンガマンガしてるから まぁいいんだけど。

_ おぎうえさん

具体的には、 コミケ落選→これは罰です、とか。

_ あと

げんしけん貸してって弟に言ったら 昨日貸したよって言われて、 読んでみると確かに借りた上に読んだことあったのはビビった。 んでさらにカラスヤサトシ買った?って聞いたら 昨日もそれ聞かれたよって言われてビビった。

_ 課題

弟のプログラムの課題を見せてもらったら、 どうも見たことある気がする課題だなぁと思ったんだけど、 確認してみたらやはりみくしの void 氏のコミュに 丸投げされてた問題と同一だった。 おもしろいなぁ。

_ TRPG とちゃっと

やっぱ TRPG とかやってる人って 一般的な Web チャットはきついよなぁとか。

http://d.hatena.ne.jp/accelerator/20061219/p1

_ template __LINE__

TemplateParameters *Parser::parseTemplateParameterList()

Object *TemplateValueParameter::defaultArg(Scope *sc)

をいじったらだいたいいいんだけど、 defaultArg まで Loc を運ぶのがめんどい。

_ NII

帰省から帰った。 あんま来る意味も無かったんだけど

(17:01)

_ まだ忘れてた

モチベーションというかの方はまぁいいとして、 物理に魅力が無いかってーと別にそういうこともそんなに無いわけで、 要するに段階的に挫折してったんだよなーという。 5年くらいかけてゆっくりあームリだーと納得していった感じというか。 そして折れ始めていくとポキポキと、というか、 物理やめる補助的な言い訳は実にたくさんある。 書類めんどいとか論文めんどいとか ずいぶんマシとはいえ権威主義的な雰囲気がほげほげとか。

まぁメインの理由は能力的なもんだし、 未練とかは別に無いけど負け犬ではあるなぁとは思う、 が、まぁそれも負け犬なんて今に始まったことでもなし。 まぁズレた不満というか無いものねだりではあるので なんというか特に何も書くべきことは無いんだけど、 まぁスルっというかヌルっとシフトしたよなぁというような記録を。

(17:16)

_ むーむー

(prototype|scope|call) chain を同一視とか考えてたけど、 どう考えても call chain は同一視しちゃいけないだろという あたりまえのことに気付くのにえらい時間がかかった。 バカというより何も考えてないというか。 それをバカというのだろうが。

(18:51)

_ coreco

なんかスタックもヒープも 別の場所にロードさせんといかん気がする。 あたりまえだが色々大変だなぁ。

(18:52)


2006年
12月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
1.shinh(2014-05-24 02:58) 2.rui(2014-05-24 02:58) 3.YT(2014-05-24 02:58)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h