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

はじめてのにき

ここの位置付け

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:


2007-08-01

_ Window manager

と X がこうアプリから独立してていいことは CPU に負荷かかっててもウィンドウスイッチはできるというような。

で OSX で window switch してると 負荷かかってる時は反応が遅れて来て困る。 んで、 Quick silver から fork => Apple event 送る => Apple event に返事、 のたぶん最後の部分に時間かかってるんじゃないかなと 思ってたんだけど、 本当にそうなのか確認する価値はある、 っていうのと やっぱコアの部分は CGS 系でやれるといいのかなとか。

ああそうか、負荷がかかってるアプリへの情報問い合わせに時間かかるのか。 なら前回値記憶しておいてタイムアウトしたらそっち使うようにすればいいか。

(02:51)

_ うーんかっこいい

http://d.hatena.ne.jp/i-saint/20070801#p1

(12:14)


2007-08-02

_ なんか

fork と thread の件はもうちょい深追いしたい気もする。

それはそうと死ぬほど寝る病はなんとかならんのか。 昨日とかたぶんそうとう寝てる。

(00:02)


2007-08-03

_ C つーか

http://d.hatena.ne.jp/niha/20070802#1186070742

いや C もだけど、 初心者の敵度で言うと Unix のたいがいさはたいがいだろうなぁ。 pipe とか select とか。 あと sigpipe とかですか。 wait 忘れるとか。

未だになんも見ずにデーモン作れないよ。

(01:13)

_ そいや

とりあえず SIGINT ほってから しばらくして止まってなかったら諦めて SIGKILL とかどうするのとか。

いや普通にできるのかもしれんけど、 ゴルフ場でうまいこと実装できんかった気がする。

(01:16)

_ でまぁ

古いものはこうまぁ色々ほころんでるから 老害とか言うんは簡単で実際そいう側面はまぁ強いのはいいとして。

まぁよりベターなものを生む礎になれば良いのじゃー というのはあるんだろうけど、 そのわりには POSIX API をちゃんとラップするような ライブラリってあんま無いよな的な。

いやあるんだけどな。 libruby とかそういうヤツ。

(01:28)

_ でまぁ

Java puzzlers はそいう論調で Java を擁護するのだよな。 曰く、色々クソな点はたしかにあるけど、 そのクソな点が十分研究されて発見されてるのは 十分に受け入れられて吟味されているからだし、 Java は比較的クソな点が少ないからこそ受け入れられたのじゃとかなんとか。

同じ論理が C に適用された時、僕は C を許すのだけど、 Java はこう許せないのだよな。 Java ってほころびるほど古い言語じゃないじゃん。 もうちょいなんか検討しとけよ、とか。

short x = 0;
int i = 123456;
x = x + i;  // コンパイルエラー
x += i;     // 無問題

とか見てると何がしたかったの君、的な。

(01:38)

_ 体調

クソ悪いなんてもんじゃないなぁ。

(19:34)

_ 8分

うーん時間足りんな。無理だ。

(20:13)

_ とりあえず

http://d.hatena.ne.jp/soutaro/20070803/1186130441

あー別スレッドから殺すのいいですね。

現状のゴルフ場見てみた。

    `pgrep -P #{pid}`.each do |l|
       puts "kill #{l}"
       Process.kill(:KILL, l.to_i) rescue puts "already died? #{l}"
    end
    puts "kill #{pid}"
#    Process::kill(:INT, pid)
    Process::kill(:KILL, pid) rescue puts "already died? #{pid}"
    Process::wait(pid)

SIGINT の後はなんか色々試した記憶はあるけど なんかそのへんのコードは今は全く残ってないみたいだ。

(21:52)

_ あー

OCaml 本出たんだっけ。

(21:54)

_ まっくぽーつ

入れてみることに。

ビルドするのはなんかイヤなんだけどねえ。

(23:40)

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

_ niha [Unixのたいがいさも初心者(とにはさん)の敵ですね。]

_ shinh [正直 C は別にキツくない。]


2007-08-04

_ do_fork

http://hira.main.jp/wiki/pukiwiki.php?do_fork()%2Flinux2.6

とりゃーずめも

(00:33)

_ ねむい

それにしんどい。

にしても基調講演1時間とかあるのホントかよ。 俺にあと2分寄越しなYO

それはそうといつから入れるの?

(06:54)

_ ねむい

やっとゴルフプレゼンかきはじめ

(08:48)

_ まよった

山の手のろうとする

半蔵門

銀座線

やっぱ半蔵門でいいんじゃん

逆方面に10分以上乗った 余裕もちまくりで出発したはずなんだが

(10:02)


2007-08-05

_ 再帰判定

http://d.hatena.ne.jp/higepon/20070804/1186241590

#include <stdio.h>

int is_tail_opt() {
    return __builtin_return_address(1) != __builtin_return_address(2);
}

int fact(int x) {
    printf("%s\n", is_tail_opt() ? "tail opt" : "not opt");
    return x == 1 ? 1 : fact(x-1) * x;
}

int main() {
    printf("%d\n", fact(5));
}

超いいかげんにこんなんを考えた。

i@um ~/test> gcc -O2 tail_opt.c
i@um ~/test> ./a.out
tail opt
tail opt
tail opt
tail opt
tail opt
120
i@um ~/test> gcc tail_opt.c
i@um ~/test> ./a.out
tail opt
tail opt
not opt
not opt
not opt
120

どのへんがいいかげんかというと、全部 tail opt って出れば最適化されてて、ひとつでも not opt って出れば最適化されてない、っていうあやしげな判断を人間がしなければならないところ。

(00:54)

_ どう書く

荒らすぞ! という心意気とかそのへんを胸に秘めて帰宅したのだけど、 お題が難しすぎるよ…

JPEG を取得して色反転だなんて、 僕の好きな(荒らすのに適切な)言語ではできそうもない。

(01:01)

_ うーん

  • malloc
  • w3m
  • oprofile
  • linux binary

最近 TODO がこなせない。

(23:55)

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

_ ひげぽん [>__builtin_return_address(1) おお。知らなかった。]

_ nonovesyvet [Swimming and playing in the pool is preferably oddziajwujケ..]


2007-08-06

_ PostScript すごいな…

http://d.hatena.ne.jp/yshl/20070805#1186310067

それはそうと言語のほげほげ指標チェックとかあるといいんじゃないかなー

その言語は

  • if を自分で定義できますか
  • 汎用の swap を書けますか
  • 関数の途中から復帰できますか
  • int n を受け取って n を加算する関数をかえす関数を書けますか
  • int32 と同じインターフェイスで多倍長整数を表現できますか
  • リストと同じインターフェイスで無限リストが表現できますか

みたいな感じで一通り質問項目考えると面白いかもな。

(00:05)

_ 既にけっこうグダグダだから

http://www.dodgson.org/omo/t/?date=20070804#p02

これはあるなー。 w3m とか何やっても罪の意識とか芽生えないよね。

(00:09)

_ エディタ

http://d.hatena.ne.jp/higepon/20070805/1186319223

いいな

(01:03)

_ はてなスター

なんか実物はたまに見るのと、 あと勝手に日記についててウザいです取り外したいです>< みたいな意見をよく見たんだけど、 なんか僕のはてなダイアリ〜にはついてないな〜と ずっと思ってたんだけど、 さっき Firefox で見たらついてた。

また俺のアクセスできない情報だったか。

てかこのページは自分がスターした ところ一覧じゃなくて スターされたところと相手一覧だといいんだけど。

http://s.hatena.ne.jp/shinichiro_h/

なんかスターした覚えがないものがあるなぁと思ったら そういえば前はまちちゃんにやられたのであった。 w3m で見てもよくわからんなーと思ったので 無防備に Firefox で見た。

(01:19)

_ TODO追加

  • 全力で読書

(01:20)

_ Perl

Language Update を聞く限り、 say はなんか include 的なことしにゃならんのだよねたぶん。

まぁなんにせよ Perl, Ruby, GCJ あたりは バージョン上げないとかな。 Ruby は 1.9 入れたいんだけど旧バージョンも残すべきかとか 考えるのめどいね。 どうしたもんかな。

(01:25)


2007-08-07

_ comprehension

包含、理解、了解。

なるほどな。 昨日 comprehension とっさにわからんくて、 というのはなんか包含の方に毒されていた。

(06:50)

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

_ あろは [Comprehending monads (wadler の,モナドの解説論文) と,Monad Comprehen..]

_ siokoshou [List Comprehension は内包表記ですね。ややこすぃ]


2007-08-08

_ またひとつ

かしこくなった

http://alohakun.blog7.fc2.com/blog-entry-812.html#comment

これは末尾再帰じゃないらしい。

(02:46)

_ ひどい日常

なんか遊んだりほげほげとかで 5日間働く週が全然無いとか。

今日は6時に起きて7時に出社して 仕事したりして17:45くらいに脱出して 普通に遅刻しつつごめんなさい なんかいろいろ話して 会社戻ってプレゼン作って プリンタと格闘して印刷して今にいたる。

なんか色々無理だな。

まぁとりあえず Pen4 最高とか すばらしい話がいろいろ聞けて非常に良かった。

(03:33)

_ そういえば

結局いつ起きればいいかどこに行けばいいかなど不明だった

(03:55)

_ 思い出した理由

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

10:24に東京か。 つまり9:30とかに出る必要があって 8:30とかに起きればいいのか。

http://www.atdot.net/s-prosym2007/

(03:57)

_ 副作用

http://d.hatena.ne.jp/misky/20070808#1186522983

バイナリになんらかのアノテーションを残せるとしたら、

  • 副作用のある関数を呼んだ
  • スタック以外の変数をいじった
  • 特定の関数 (fopen とか) を呼んだ

とかをチェックすれば余裕で静的解析できるのかしら。

(08:36)

_

渋谷から直接大宮ってとこ行った方が速いじゃないか。

あと上田ってwoさんからよく聞いたような地名。 たぶんゲーセンがあるとか無いとかの文脈で。

にしてもトランジットが見るからに不審だ。

渋谷から池袋まで 3260 円とかokasii。

3,260円JR埼京線乗車
9:15	渋谷駅(東京) 発
9:26	池袋 着

まぁまとめると、埼京線とかで赤羽とか大宮まで、 大宮から上田まで新幹線あさま、 最後しなの鉄道で戸倉まで、か。

まぁぐぐるすててekitanとか。

10:06発 	発駅 	渋谷 [PASMOin] 	周辺情報 | 地図 | 時刻表 
[ 34分 ] 		電車JR湘南新宿ライン(特別快速) [高崎(JR)行き] 	 
10:40着
10:50発 	乗り換え駅 	大宮(埼玉) [PASMOout] 	周辺情報 | 地図 | 時刻表 
[ 57分 ] 		電車あさま515号 [長野(JR)行き] 	3,260 円
特急
11:47着
11:54発 	乗り換え駅 	上田 	周辺情報 | 地図 | 時刻表 
[ 15分 ] 		電車しなの鉄道(普通) [長野(JR)行き] 	330 円
△12:09着 	着駅 	戸倉 	周辺情報 | 地図 

つまり渋谷10時ねー

(09:08)

_ 5900

(10:40)

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

_ k.inaba [再帰呼出の後にする処理がreturn以外何もない掛け算一つないのが末尾再帰という認識でした。]

_ あろは [再帰呼び出しの返り値を使わない → だったら引数上書きして goto でいいじゃない,というのが末尾再帰の概念だと思..]

_ shinh [はい、正式名称難しい単語わからない症候群通称アホなので、なんとなく最後の方で関数呼んだら末尾とか適当に思ってました。..]

_ YT [家は出たものの路線調べてなくて、携帯から、どうしよう状態でしたが、時刻表、本気で助かります! それではゴルフ講義楽し..]


2007-08-09

_ だるい

つかねむい

(08:34)


2007-08-11

_ 気持ち悪いなぁ

全然うまくなくなってるのに酒飲んだくれてるとか 頭悪すぎだよなぁとは思う。

(00:31)

_ とりあえずメモ

ゴルフでアルゴリズムが綺麗な問題、 を聞かれてぱっと答えられなかったのだけど、

http://golf.shinh.org/p.rb?Sierpinski+Fractal#Perl

なんかはコードは綺麗だよな。 だけどまぁアルゴリズムってわけでもない。 そして説明がめんどくさい。

まぁ delete words が例としてはわかりやすいかなぁと思った。 この問題、普通に解けと言われても サックリ実装したいシーンなら 僕は transpose 4 回すると思う。

http://golf.shinh.org/p.rb?delete+words

ただそんなにインパクト無いんだよな。

こうどうしても main 再帰とかの小手先の方が インパクトが。

(00:35)

_ 印象に残った言葉

ムーアの法則が正しければ、NP問題は線形で解ける

(00:44)

_ うるう

yyYY として、 YY%40 と YY0 を見れば yyYY%40 と yyYY%1000 は評価できる。 あとはYY0かつyy%40なら yyYY%400==0 と。

つまり

(YY0&&yy%40)||(YY!=0&&YY%4==0)

となる。 なんかちょっと綺麗だな。

(01:37)

_ うおお

今目の前でゴルフ場の電源落ちた。

理由は Thinkpad のアダプタがはずれてたから

(02:46)

_ ステップ数ゴルフ

はどうか、という話があったんだけど、 少し考えると全てのループはアンロールすべきになってしまって、 それはつまらんなと思ったことがあったのであった

(03:00)

_ Don't write code like my brother

とか言ってたっけ。 これ公開されてたんだね。

http://video.google.com/googleplayer.swf?docId=9214177555401838409&hl=en

むこうで聞いたテックトークの中でもトップ3には入るので 暇な人はお勧めなかんじだった。

via http://www.sodan.org/~penny/blosxom.cgi/2007/07/30#java-puzzler6

(13:02)

_ 末尾再帰

http://d.hatena.ne.jp/odz/20070809/1186679264

言い訳としてはそもそもまともな教育受けてないから 末尾再帰にかかわらず用語とか適当にしか把握しとらんのだよなー。

こないだも ICFPC2006 の ADVIS とか理攻めで 解けるらしいとか聞いてそういうもんだなぁとか。

どう思ってたかというと、 GCC が最後かけ算があるくらいなら 最適化するとは知ってたので、 関数型は末尾再帰で書けば問題ありません! とかを見てたぶん GCC が最適化できるくらいの ヤツはなんか理論化されてて最適化できるんだろー、 そしてそれを末尾再帰というのだろーと 勝手に思ってた。

むしろなんか今さっき OCaml で fact 書いたら 最適化されてないのを見て愕然としたレベル。 こんなの

let rec fact n = if n = 1 then 1 else n * fact (n - 1);;
print_int (fact 5);;

カンスウガタとかたいしたことないなぁとか。

それはそうと、末尾再帰って話を始めて知ったのは ocaml.jp だったと思う。 その時 ocaml.jp 眺めながら OCaml という言語のすごさに感心しつつ 末尾再帰とかいうのが なんなのかもよくわからんかったし なんで最適化されるかとかもわからんかったので、 こんな難しそうなことがわかる これ書いた人はものすごいとんでもない人なんだろうなぁ とか思ったことを思い出した。

で、そいうやんごとなき人々と話せたりできてる 今ってのは幸せなのかな。 そんな気もそうでもない気も。

(15:15)

_ SSHした先から

クリップボードを共有したい。 ざっくりやるのはたぶん簡単だ。

(21:51)

_ かっこE

http://www.youtube.com/user/itojun

あとで全部見よう。

(22:35)

_ 何がかっこいいかというと

とりあえずカストロTシャツが

(22:55)


2007-08-12

_ libc_start_main

わけわからねえよ!

STATIC int
LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
                 int argc, char *__unbounded *__unbounded ubp_av,
#ifdef LIBC_START_MAIN_AUXVEC_ARG
                 ElfW(auxv_t) *__unbounded auxvec,
#endif
                 __typeof (main) init,
                 void (*fini) (void),
                 void (*rtld_fini) (void), void *__unbounded stack_end)
{

(01:05)

_ なんか

http://alohakun.blog7.fc2.com/blog-entry-816.html

まとめたらCSSのキャッシュ効かんくなるような

(11:25)

_

やっと 1337 からなんか進んだぞ。 数字の意味は相変わらず謎気味だが。

(15:09)

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

_ 匿名 [1337は 'leet' の文字の形をもじったものですね。 英語圏のクラッカー気取りのガキどもが、自分たちをエリート..]

_ shinh [あーそういえば最近はまちやさんとこで見た気がしたのですが結びついてませんでした。それはそうと ICFP 的な 133..]


2007-08-13

_ わかっちゃえば

わりとほげほげ。とりあえずマニュアルは出せるっぽい。

(04:01)

_ twin primes

BF で実装してみた。 750B と短いのはいいんだが timeout 。 これを高速化か…

(07:38)

_ ケーブル

(21:30)


2007-08-14

_ へんゆめ

なんか知らんがバカゲーがあるみたいな。 ベッドみたいなんに寝ると ヘンな精霊だかなんだかが湧いてきて お帰りなさいませご主人様、的なことを言われて 首固定されてギロチンで首落とされてゲームスタート。 具体的なゲームの内容は全く覚えてないけど、 そのゲームスタートのシーンは なんか繰り返し繰り返し起こるんだけど その状況はなんか微妙。 なんかお前はクズだ死んだ方がいい的なことを 自分及びなんか自分の仲間に対して言いながら 殺しに来るヤツから逃れて ギロチン喰らいに行く。

なんでか知らんけど、悪夢じゃないらしい。

(08:03)

_ アメリカンドッグ

http://www.ecorient.co.jp/cgi-bin/design/2board/messages/2042.html

前、この皮はパンなんだろうかなんだろうと思った と思い出したのでぐぐってみた。

ホットケーキミックスとかで作るのか…

http://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%A1%E3%83%AA%E3%82%AB%E3%83%B3%E3%83%89%E3%83%83%E3%82%B0

うーんアメリカで見た記憶無いけど アメリカ発祥なんだな…

(08:08)


2007-08-15

_ あつい…

あついとしか思えないくてだるくて、 だるくて。

ゴルフくらいしかやる気起きないので とりあえず codegolf の古い問題を見直してみたり。 なんかしょぼしょぼ縮む。

(01:59)

_ Pyramid Quine

http://d.hatena.ne.jp/KeisukeNakano/20070814/1187070401

あれこれ考えてたけどできなくて悔しかった。 悔しかったので答え見て縮められんか考えたけど、

      "
     #K#
    $><<(
   '%7c' %
  34+$'<<34
 )+'=~//;e'+
%q(val$')"=~//;eval$'

難しい。時間の無駄という言葉が似合う男。

(04:24)

_ なんとかならんものか

      "
     $>.
    <<  [
   '%7c' %
  34+$'<<34
 ]+%w(=~//;e
val$')"=~//;eval$'

(04:44)

_ 俺ルール

最初に改行入れていいとする

      "
     $>.
    << ['
   %4c'%34,
  $'<<34]+%w(
 [//];eval$'
)"[//];eval$'

こう見ると絶望的であることがよくわかる。

(04:59)

_ なにこれ

      "
     $>.
    << ['
   %4c'%34,
  $'<<34, %
 [//];eval$'
]" [//];eval$'

(05:53)

_ 微妙に

      "
     $>.
    << ['
   %4c'%34,
  $'<<34 ,%
 [//];eval$'
]" [//];eval$'

空白の位置がおかしかった。 まぁはみ出てるのが , と ' とかなので 目立たない…

(06:01)

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

_ ku-ma-me [下から二行目の % 記法に感動したのでこんなの書いてみました。どうにもならないですかねえ。 0 ..]

_ ku-ma-me [わ、空白が飛んだ。\ 0\n \ の行に適当に空白足してやってください。右端の \ が右に 4 文字ほど飛び出る感じ..]

_ shinh [おおこれは賢いですね。ちなみにツッコミ通知メールでは空白入ってたので問題なく読めてましたという。 mame さんチェ..]


2007-08-16

_ ふと気付いた

なんか長い問題はたいてい フラたんに大差つけられてるのだが、 圧縮アルゴリズムで大幅に負けてる可能性は無いだろうか…

(02:17)

_ なんか

ホントにそうじゃねえかな。

(02:34)

_ フック

  • exec ファミリー全て (l,le,lp,v,ve,vp)
  • system
  • open, fopen, open64, fopen64, freopen, freopen64, openat, openat64, _IO_file_fopen, _IO_file_open, _IO_fopen, __open, __open64
  • _IO_proc_open, popen
  • posix_spawn, posix_spawnp
  • syscall

(11:05)

_ スマートというか

http://d.hatena.ne.jp/sshi/20070805/p1

明日には死にそうとかが正しげ。

(11:19)


2007-08-17

_ 少なくとも

Lite2 って普通のキーボードだよなぁという。 あれなんかいいことあるんかな。

http://d.hatena.ne.jp/ranha/20070816#1187247523

(00:15)

_ C++

C++ で HogeHogeManager というクラスを書いたとする。 HogeHogeManager はすんごいクラスで色々やってくれるんだ。 んでシングルトンでもある。 HogeHogeManager はその名の通り Hoge クラスのオブジェクトを管理するんだ。 HogeHogeManager から Hoge に少し プログラム全体に関係してるような情報を伝えたいなぁ と思ったとする。 Enemy オブジェクトに Screen オブジェクトを渡すような。

class Hoge {
  Hoge(class HogeHogeManager* mgr);
}
class HogeHogeManager {
  void addHoge() {
    hoge_vector_.push_back(new Hoge(this));
  }
}

とかするのが一案。 引数一個で済むのがいいところだけど、 HogeHogeManager のカプセル化が弱くなるのと、 依存関係が循環ぽくなって少しキモく感じるのが難点。

でもう一つは必要な情報だけ渡す。

class Hoge {
  Hoge(const HogeInfoA& info_a, const HogeInfoB& info_b, const HogeInfoC& info_c);
}
class HogeHogeManager {
  void addHoge() {
    hoge_vector_.push_back(new Hoge(info_a_, info_b_, info_c_));
  }
}

こっちはキャプセル化いじらないけど引数増やしまくるのが面倒だ!

まぁ後者がいいことが多いんだろうなーと思う。 そっちがいいんならまぁ引数増えるたびにいじりまくって めどいのはまぁ許せなくはない。

ただなんか気になるのが、 Hoge が結構数あるオブジェクトだったりすると、 それぞれの Hoge に同じ Info 群を持つと 結構な量のメモリが無駄になる気がすること。

いやまぁポインタなんか仮に10個くらいあっても 40B とか 80B で万が一 100万オブジェクトあっても 80MB とかでおさまるんだけど…

単に気のせいというだけの話 (((((((^o^)))))))))

(01:59)

_

http://arton.no-ip.info/diary/20070817.html#c01

IO.foreach ってあるのね。いつも悩むのでこれは良さげ。

(10:51)

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

_ takkanm [macbook買うまで使ってましたが、デフォでctrlの位置がいいと小さいという部分と英語配列選べるというのはよかっ..]

_ shinh [あー確かになんだかんだで最初っから理想の配列に近い方がいいっちゃいいですね。使ってた時を思い返してみると普通に問題の..]

_ 紫月飴 [「配列やキーサイズに余裕のあるミニキーボード」というのが珍しい上に入手しやすいので選択肢としてはよく挙がるような。あ..]

_ shinh [ああゲームとかで Esc 重要ですね! 僕の Thinkpad は F1 とか F2 とか半角とかあのへん一帯が全部..]

_ shinh [ただそういう用途にしては Lite2 でも中途半端に高いような。少しこだわる気無いと 5000 円はキーボードに出な..]


2007-08-18

_ _CrtDumpMemoryLeaks

http://www.f13g.com/?blog%2F2007-08-07#ze8adc6b

メモっておく。

http://msdn.microsoft.com/library/ja/jpdnvc60/htm/MemLeaks.asp?frame=true

 * 孫子著『兵法』、取扱出版社多数。
   メモリリークのデバッグにはまったく関係ありませんが、ホワイトペーパーを書い
   ていて、昔の中国の哲学者の言葉を引用したいと思っている読者には役に立つかも
   しれません。

原理は malloc 乗っ取りかな。

(22:25)

_ 回答埋め込み対策

ファイル名とかに保存されたら普通にイヤだな…

(22:26)


2007-08-19

_ exec filter

たぶんできた。 どうやって適用するか。

  • とりあえず新しい問題から
  • 終了後に watch.log を確認してほげる
  • exec は相変わらずカウントで弾けば良い
  • open は書き込まれたファイルを実行後で容赦なく削除
  • ただホントにそれで mono とか大丈夫?
  • つかサブミットサバのプロトコル作りなおした方がいい

(12:20)

_ fexecve

http://man.cx/fexecve(3)/ja

sys/time.h にあるってのは間違いかな

(15:05)

_ ゴルフ場

なんか /bin/sh が dash をさしてたので bash にかえた。 たぶん影響無いとおもうが

(17:47)


2007-08-22

_ いやホント

http://mixi.jp/view_bbs.pl?id=21787051&comm_id=665545&page=all

ヘッダじゃなくて .c の方でプロトタイプ書く意味ってなんなんかな。

(00:31)

_ 配列とポインタ

なんかはやってるなぁ

http://d.hatena.ne.jp/odz/20070817/1187345969

char *a = "abc";
char b[] = "abc";
int main() {
  char *c = "abc";
  char d[] = "abc";
}

の違いとか完璧に説明できる自信が無いことは 前確認した。

(01:22)

_ これの

http://d.hatena.ne.jp/yupo5656/20060907/p1

続編として面白いと前から思ってたんだよな。

(01:25)

_ proto

http://d.hatena.ne.jp/odz/20070821/1187714305

あ、相互参照は(滅多にない気もしますが)わかるんですが、 そうでなくてもvoid師がいつもプロトタイプ必ず書いてる気がするのは なんでだろうなぁという。

まぁ僕はヘッダ自体がめどいのでどうでも良いのですが。

(02:32)

_ 好きなもの嫌いなもの

好きなもの:

  • 他人の書いたヘッダファイル
  • 他人の書いたユニットテスト
  • 他人の書いた Makefile

嫌いなもの:

  • 自分の書くヘッダファイル
  • 自分の書くユニットテスト
  • 自分の書く Makefile

このへんのことはいつも考える。 いやここ2年は考えてなかったのだが それはバイトしてなかったからなのであって つまり職業になると再び考えている気がする。

グッドラッパラー的には .c から .h も Makefile も man も生成されるべきであり Python の doctest はかなりいいセンいってる気がする。

てーか一時期は kati ( http://shinh.skr.jp/koneta/#kati ) とか ide (koneta に上がってないみたいだけど なんか .cc から .h と _test.cc を作るもの) とかで コード書いてたんだよな本気で。

doctest はなんかもう少し頑張れる子な気がするんだがにゃー。

とりあえず testdoc っていう感じの方がいい気はするんだよな。 なんかまぁ様々な理由から、 test からドキュメント生成されるくらいでいいよっていうね。

(02:43)

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

_ あかぎ [> kati make に デフォルトで % : %.c のルールが入っているので Makefile なしで mak..]

_ shinh [おおこれできたんですね今まで知りませんでした…]

_ odz [関数の記述順序を考えるのが面倒くさいから、とりあえずつけるようにしているとか、規約だからとか。]

_ shinh [あー一応 void 師なのでなんかもう少し哲学的な理由はありそうかなぁと。]


2007-08-23

_ module.sh

こういうの便利そうだなーとか。

http://morihyphen.hp.infoseek.co.jp/log2/200708.html#2007-08-21

(06:55)


2007-08-24

_ だるいだるいだるい

だるくて生産性が低いのはまぁ良くないけどいいとして、 なんか人様に迷惑かけるくらいクオリティ落ちちゃだめだよなー、 とか思った。

でもだるー。

来週くらいには日本が冷えてりゃいいのだが。

(23:24)


2007-08-25

_ 新しい商売を考えた

個人情報を同意の上で売買する。

なんかメアド100円住所1000円とかみたいな感じで 金に困った人が身売りみたいな感じで売る。

どう考えてももうからない。 もうからない理由は100個くらいあるけど、 金に困った人の個人情報なんていらんというのが。

(01:02)

_ つまり

スパムとかもうなんか別にいいよって気分になってはや数年なので、 もうむしろメアドとかの情報売れねーかなーとか思ったのだが。

(01:03)

_ Y

http://d.hatena.ne.jp/giveup/20070821#c1188016322

Berlin とかどうなったのかなぁ。

http://www.fresco.org/

名前変わった後死んだって感じか。

(13:35)

_ 2ちゃんねるはなぜ潰れないのか

こうなんか気分で買ったんだけど意外と面白かった、 どっちかっていうと悪い意味の方で。

なんかひろゆきってすごい人なんかなーと 思ってたけどこの本読んでみるとなんか 普通のアルファブロガーみたいな感じかぁという。

なんかとりあえず文章が日本語として崩壊してるし 論理も無茶苦茶だなーとか思ってたんだけど、 あとがきによるとインタビューから他人が書いたらしい。 なるほど。

にしても言ってる内容がやっぱ アルファブロガーがカンとハッタリで喋ってるだけ感ばかりでにんともかんとも。

ぐぐるはオープンソースでなんも出してねーって書いてあったけど flags とかそのへんはそんくらいマイナーなんだなぁ。

内容もなんかとりあえずなんでも悲観的に言ってみる芸一本って感じで、 とてもつまらないのが逆になんか面白いというか。

あとなんかインタビューがいくつかあったけど これもなんかブロガーな感じだった。 お互い相手の知らんことを知識ひけらかして出すけど お互いスルーしあうみたいなそういうアレ。 まぁでもそれも編集入ってるみたいなのでよくわからんのであった。

まとめると案外普通のこと言ってるんだなーというのが面白かった。

(14:04)

_ へー

http://natu.txt-nifty.com/natsutan/2007/08/c_858f.html

普通に「 main() が最後にあるのが気持ち悪い」っていう 感性がありえるんですね。

僕は main が最後にないのが気持ち悪い。

そいうタイプの人って C++ とかでも

class Hoge;
class HogeMgr {
  // ...
  std::vector<Hoge*> hoges_;
};
class Hoge {
  // ...
};

みたいな順序になるのかしら。

(14:07)

_ main オーバーロードできない

http://gusmachine.blog49.fc2.com/blog-entry-213.html

とかの理由はリンカの都合だろうけど、 再帰とかに使用しちゃいかんってのは理由なんだっけという。

(22:49)

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

_ なつたん [shinhさんのC++の例は、下のコードに近いのでプロトタイプ宣言とはびみょーに違うと思います。 #include..]

_ shinh [むむクラスの前方宣言とは少し違うのですねむずかしい。なんかクラスとかとりあえず全部前方宣言するスタイルも見たことがあ..]


2007-08-26

_ あと

private static な関数とかも .cc の匿名名前空間につっこんじゃえよと思うんだよなー。 private 関数とか多くなる時に

// hoge.h
class Hoge {
public:
  void f();
private:
  void f_helper1();
  void f_helper2();
  void f_helper3();
};

とかなってるのを

// hoge.h
class Hoge {
public:
  virtual void f() = 0;
};
// hoge.cc
class HogeImpl : Hoge {
public:
  virtual void f() {
  }
private:
  void f_helper1() {
  }
  void f_helper2() {
  }
  void f_helper3() {
  }
};

とかしちゃうのも手間がはぶけてよい。

(00:55)

_ めどいってのもあるけど

リファクタリングが少ししやすくなる、 っていう弁護も一応可能。

(00:56)

_ マジスパ

http://www.google.co.jp/search?q=%E3%83%9E%E3%82%B8%E3%82%B9%E3%83%91&lr=lang_ja

関連検索が興味深いな。

(01:10)

_ 東方永夜

最後の一文字はうまく出せないので諦めた。

とりあえず Extra はクリア。 まぁ東方は Extra が一番面白い気がするっていうか 本編長ったらしくてやる気起きないのでこんなもんで良いであろう。

スペルプラクティスはなかなか良いね。

あとなんかラストワードとかあるんだけどこんなん集めるんはめどいな。

(02:59)

_ D vs Ruby

http://codeblog.palos.ro/2007/08/10/d-vs-ruby/

via http://www.rubyist.net/~matz/20070818.html#p02

D のヨイショか。外人は好きなものは貶す精神が足りないね。

とりあえず CONNECTIVITY (いや特にC++は結構めんどいだろ) かなんかを 7 くらいで、 EXTENSIBILITY (Ruby と並べられる気がしない) を 8 で LICENSE (DMD のコアが無いのは結構痛い) を 6 で LIBRARIES (えーとえーと…) を 3 で CROSS-PLATFORM (GDC は 2.0 のアレが無いおとか) を 5 とかにすると Ruby が勝つな。

おめでとう! Ruby! おめでとう!!

(12:20)

_ 驚き最大の法則

http://natu.txt-nifty.com/natsutan/2007/08/sicp_4_4034.html

いい言葉だなー

(14:40)

_ 燃えてるなー

http://d.hatena.ne.jp/odz/20070825/1188043605

めらめら

http://d.hatena.ne.jp/sanjapo/20070826

なんかまぁ学費消えてもまだ色んな意味でマイナスは あるだろ的なのもわかるんだけど、 なんかしらバイトもせずにチャラく大学行ってチェケラ(適当) という選択肢が消えるってだけでもやっぱ不利だよなー的な。

逆にそのへんどうでもいくて種々の方法で学費消せば 適当に思い出しても寮系じゃなくて一番やばいにゃー系だったので 食費ゴルフ系してた時系で系 バイト55000-家賃25000-メシ15000 とかで まだ遊興費とかあるねって感じだったけど 今思うに食費ゴルフしたくないし、 そいう意味でも幻想ってのもなーという。

裕福でないとだるくて行く気がなくなるという事実とかはきっと間違いなくあるよね。

(17:44)

_ notify サーバ

とかどうかな。 Ajax 的につないでおいて、 なんか通知が必要なイベントがあったら それを送ることだけをするサーバ。 それだけをするWebサーバならなんか 効率的な実装とかもありそうな気もするし。

クロスドメインがどうこうがめどいかな。

(17:47)

_ とりあえずゴルフ場なんとかしよう

週末なんもしなかった事件を回避したい。

とりあえず submit.rb は脳がとろけた人が作ったとしか思えない事件があるので それをなんとかしよう。 まぁたぶん普通にコロン区切りで一行一項目送るべきな気がする。

でそれができたら適当に追加フィールドとか作って、 そんでからほげほげ。

(17:56)

_ の前に

unit test 書こう。

(18:07)

_ ぎょー

「MP」を「やる気」に変えるパッチを DQ3 あたりに適用 →ベビーサタンと格闘、とかしたい

(22:05)

_ そういえば神が

http://golf.shinh.org/p.rb?Quine#Brainfuck

(22:14)

_ cppll

見ててなんとなく思うところが

(22:50)


2007-08-27

_ 乱数

むずかしいな

http://www.freeml.com/cppll/13052/latest?sid=a9d75932bdf9899cf90f525c9f2ad097

要は index_mask がバレたら終わるので その値を調べたいのだけど、 なんか単純に xor 取ってるだけとかだから なんとなく 2^32 個も値使わんでも予測できる気がするんだけど、 無理かな。

(00:09)

_ ades

なんか Google map とか見れててすごいなーと思った。 Windows mobile のマシンなら動くらしい。 ほえー。

値段とか見てもさすがケータイだけあってお手頃だなぁ。

(00:46)

_ OCaml

OCaml の +. -. とかがめどいというと 「それこそが素晴らしいところじゃないか!」 って言われるわけだけど、 たぶんそいうこと言う子は 浮動小数点演算とかしないという法則を妄想した。

(01:01)

_ ゴルフ会

都心部でできないかなーと最近なんとなく思う。

(01:45)

_ ひどいなー

       if ((execnt > 2 && dexec == 'on' && ext != 'sh' && ext != 'di') &&
           (ext != 'erl') &&
           (ext != 'ijs' || execnt > 4) &&
           (ext != 'vhdl' || execnt > 3) &&
           (ext != 'out' || execnt > 3) &&
           (ext != 'l' || execnt > 3))

まとめると、 execnt が 2 以上だったら基本的にアウト。 Bash と D compile time と Erlang は OK 。 J は 4 回まで OK 。 VHDL と ELF と Common LISP は 3 回まで。

J と VHDL と ELF はまだこれでいいのか調べるテストケース作ってない。 ELF はともかく VHDL と J はつらいな…!

Erlang はなんかまぁ Erlang でチートするヤツもいなさげだしまぁいいことにさせて…

(02:16)

_ ふむ

やはり J で exec する方法とかわからんな。 まぁいいや ELF だけ見とこ。

(02:30)

_ まぁ

とりあえず unit test できたので明日はリファクタリング。

(02:38)


2007-08-28

_ Dice

http://golf.shinh.org/p.rb?Two+Dice+of+A+sides

letter さんの気付きが何なのか気になるところだなー。 この総ナメっぷりはアルゴリズム的なものとしか思えない。

http://d.hatena.ne.jp/letter/20070822#1187751412

(13:41)

_ 殺されブーム

http://d.hatena.ne.jp/sumim/20070827/p2

きっとsumimさんの愛を確認するために殺したがるツンデレです…とかはともかく。

殺されブームみたいなのはある気がする。

Ada: 昔のハッカーは殺すのがクールな雰囲気だったような雰囲気 (最近殺されない。殺すまでもなく存在忘却気味とか?)

PASCAL: 昔のハッカーは殺すのがクールな雰囲気だったような雰囲気 (最近殺されないけどなんだろ)

C++: 昔のハッカーは殺すのがクールな雰囲気だったような雰囲気 (けど復権?)

Smalltalk: なんかよく殺されてる

LISP: いつの時代もたまに殺されてる気がする

PHP: 最近色んな人に殺されすぎ

Perl: PythonとRubyの人が殺したがる気がする。案外殺されないような

VB: VCやC#の人に殺される

Prolog: 第五

Java: 僕が殺す。強い子だから死なない

こう見ると溺愛している人が一定数いる言語が多いように思える。 人が愛してるものを潰すのが快感説とかはそれなりに正しそうな。

単に無名な言語だからとかじゃなくて、 C#, JavaScript, OCaml なんかは殺そうとしてる人 あんまりいないような気がする。 んでこのへんはあんまり溺愛されにくい子なような気がする。

そうでもないか

(13:56)

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

_ sumim [確かに、殺されやすいキャラ、殺されにくいキャラというのはありそうです。w 振り返れば、どうやら私は前者を愛する傾向に..]

_ shinh [殺されてる以上忘れられてはいないというポジティブな見方も。]


2007-08-29

_ 数学ゴルフ

http://www.jmuk.org/diary/2007/08/27/0

を見てなんか買うかーと思ってブックファースト寄って 会社に行く最中に考えたのを紙に書いたら 29 両だったので 理解あってるんかいやと思いつつ回りの子に 教えたら 21 両とか 20 両とか言ってて 仕事がゴルフになる人はいるけど仕事中にゴルフしたらあかんやろとか思いつつ。

んで帰ったのでインタプリタ兼テスタ書いてみたら とりあえずぬるっと縮んで 22 両。

とりあえずあと2両か。 コーナーケースの処理が適当なのでそのへん考えたら縮む気はする。

(00:39)

_ 21

(00:57)

_ 19

(00:58)

_ 自慢しに行った

(00:59)

_ 19 別解

(01:12)

_ 18

別解出るのは縮む証拠

(01:14)

_ ゴルフの法則

  • 別解思いつけば縮む
  • もうこれが理想形だと思う
  • でも他の子が縮めた後なら縮む

(01:23)

_ 追加

  • 他の子に追いつけない場合、ヤツは俺の知らない何かを知っていると思い込む

(01:24)

_ xor shift

http://pc11.2ch.net/test/read.cgi/tech/1146071975/18

18 :デフォルトの名無しさん:2006/04/28(金) 23:53:29
   軽さで言えばXorShiftとか。
   unsigned long xor128(){
   static unsigned long x=123456789,y=362436069,z=521288629,w=88675123;
   unsigned long t;
   t=(x^(x<<11));x=y;y=z;z=w; return( w=(w^(w>>19))^(t^(t>>8)) );
   }

めも

(23:13)

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

_ には [数学セミナー探したのになくてショックでした。]

_ shinh [問題教えるので #mazop に]


2007-08-30

_ おー

http://gauc.no-ip.org/wiki.cgi/private?page=Blog%2F2007%2D8%2D28

なんかやるかーと思いつつだるい

(00:31)

_ 既に

http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/shinichiro_h/20060821%231156097713

「LDRize的なアイデア」は w3m NEXT_(UP|DOWN|RIGHT|LEFT) が きっと最初だと思うんだ…! w3m まんせー

(12:19)

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

_ Takayama Fumihiko [まんせー。 ちなみに僕が始めてみたのは Listbrowser が最初でしょうか。 残念ながら世間的に流行ってなさ..]


2007-08-31

_ ゴルフ会

9/8, 9/9 のどっちかで東京付近でやることをさっき適当に決めました。 やることは何も考えてないのでたぶんただの呑み会です。 日程は今週土曜くらいに fix することにします。

適当にメール投げまくろうかと思ったのですが ぶろぐとかだとメアド書いてない人多数でよくわからん。

とりあえず codegolf.com の上の方とか色々適当に拾ってきた

http://www.nmt.ne.jp/~ysas/diary/

http://www.typemiss.net/blog/kounoike/

http://www.kmonos.net/wlog/

http://d.hatena.ne.jp/ku-ma-me/

http://d.hatena.ne.jp/kikx/

http://yowaken.dip.jp/tdiary/

http://d.hatena.ne.jp/KeisukeNakano/

http://d.hatena.ne.jp/yshl/

http://www.math.sansu.org/u/diary/

http://d.hatena.ne.jp/ytqwerty/

http://gauc.no-ip.org/wiki.cgi/private?page=Blog%2F2007%2D8%2D28

あたりの方ご検討くださいませ。 上記本当に適当に拾ってきただけなので それ以外の人とかも、 特にあなごるの正体不明のすごい人(複数)とか適当にご参加ください。 そもそも今リンクはった人で東京付近にいるんか知らん人結構いるし。

参加表明は gmail へのメールとかここへのコメントとかに参加可能日/希望日つきで。

したら今週の土曜あたりに8,9どっちかを私が適当に決めて通知します。

(00:02)

_ よし頑張って

全部リファラ残してきたよ!

(00:04)

_ あと

たぶん18時とかくらいからとかかな知らんけど。

(00:52)

_ 今見れんがー

http://www.amusement-center.com/index_ac0828.htm

ザンファインサントラらしいので後で見る。

(00:56)

_ BEGIN

あーこれ

http://d.hatena.ne.jp/oto-oto-oto/20070830/1188490973

BEGIN-END 書くか悩んでいつも手が止まるんだよなー。

ruby -e 'i=0; $<.map{i+=1}; p i'

とかの方が短いのはわかるけど既に書いてしまった n を消したくないという。

まぁこのケースなら

ruby -e '$<.map{$.+=1};p$.'
ruby -e '1while gets;p$.'
ruby -e 'p [*$<].size'

ふむ…

(02:08)

_ おー

http://d.hatena.ne.jp/Hamachiya2/20070831/Port801

関西弁いいなあ

(03:32)

_ 関西弁ブロガー

とかえーかもしれんなー。

知ってる範囲では tomotaco さんとこがあるけど 京都人やから上品なのが難点。

http://d.hatena.ne.jp/logion/

まぁ関西弁思い出すんが割と無理。

(03:35)

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

Before...

_ ySas [残念ですが不参加で。次の機会にはぜひ。]

_ YT [ゴルフ話をする自信が全くないのでギャラリーでの参加希望です。日付はどちらでも構いませんです。]

_ shinh [なにやら適当な告知で反応していただいてありがとうございます。 > ySasさん 残念です! まあなんかきっと次とか..]

_ ょゎ [引きこもりなので不参加です><]

_ shinh [むむゴルフ場に引きこもると良いですぞ]


2007年
8月
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:17) 2.shinh(2014-05-24 02:17) 3.紫月飴(2014-05-24 02:17)
search / home / index

全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。

shinichiro.hamaji _at_ gmail.com / shinichiro.h