ToDo:
A, B, C, D and E って文法はなんか非対称でおかしいと思うんだよ。 A and B and C and D and E でいいじゃん…と思うけど これは確かに結構うざいな。
(00:52)
なんかさっきの、 「ある革新的な新技術 == Java の interface」 「それに対する先駆的なアイデアや技術 == ObjC とか Sather」とか って対応なのか。
まぁ「Java の interface == 革新的な新技術」 という文章は革新的かもしれない。
(01:15)
http://d.hatena.ne.jp/JavaBlack/20071202/p2
自分の間違いを認めるのがなんでそんなにイヤなのだろうか?
間違いを認めるのが「好きな人」なんていないと思いますよ.
このへんが全然僕的には異質なんだろうな。
(01:04)
http://shinh.org/kocha/index.cgi
http://shinh.org/ryokucha/ryoku.html
いつのまに dyndns からひっこしたんだ俺。
(21:10)
http://b.hatena.ne.jp/entry/http://www.atmarkit.co.jp/news/200708/06/weekly.html
こいうのよく聞くけど具体的に誰、とか思うんだけど どうなんだろう。
(01:06)
http://b.hatena.ne.jp/kmachu/20071203#bookmark-6676231
認めないと先に進めないから好きってのはわかるんだけど、 個人的にはやはり悔しい側面もあるので好きでもないなという。
そのへんの尺度は人によって色々あると思うんだけど、 「イヤなのか」に「好きな人はいない」と答えるのは なにかすごいものを感じたのでした。
(01:40)
去年をふりかえる。
http://shinh.skr.jp/m/?date=20070102#p04
GPUとか触ってねー。
まぁ来年の目標としては IP 以下とか UNIX とか Postscript とか。
(01:48)
factor out といいこの英語は苦手だと思う。
factor it out とか check it out なんだよね、たぶん。 なんというか factor out it とか check out it と書きたくなる。 特に it が長いと、ていうか既に書いた後のまつり。
チェケラ
(01:44)
(14:16)
R61 買って 6000*2 でメモリ 4GB 買って差して、 bluetooth のイアホン買えば良い。 メモリは tmpfs で 3GB くらいマウントしてビルドとかに使ってみたいんだ。
R61 は bluetooth 無いらしいけどまぁ問題無いか。
(14:27)
http://tokyocabinet.sourceforge.net/spex-ja.html#tcbdbapi
こっちの B+ 木はちゃんと外部にカーソルがあるぽくてえらい。
しかし villa の vl くらいの prefix ならいいけど tcbdbtune とかは相当つらいものが無いか…
(02:54)
オリジナルデータが 330 万個くらいキーがあって 110MB で圧縮したら 13MB になったというようなデータ。
villa & lzo だと 140MB だったのが tcb & deflate だと 31MB で tcb & tcbs だと 35MB だと。
http://alpha.mixi.co.jp/blog/?p=98
このへん見るにとりあえず zlib の方でいいんかな。
(03:16)
なんか適当についったながめてたらびびった。
http://twitter.com/hogelog/statuses/472257642
あー自明なもの書くのが億劫になる理由は 確かに明らかにぐぐるが悪いんだよな。 どうでもいいもの書く時はぐぐるのライブラリ使いたくなる。
そういや Rob Pike とかそのへんの向こうの神々の 出力の変化とかはどうなんかいな。 guido とか akpm とかそのへんはたぶんあんま変わってなさそう。
(04:00)
(05:17)
は暇な時に 炎上してる議論を探すためにくまなく見て回るという性癖が。
なんというか流量の多い dankogai さんのブログを 常に見るよりついったをたまに見る方が 炎上センサーとして優秀というライフハック。
いやそんな理由は後付けでどうしようもなく他のことやる気なくて だらだら見てるだけなわけだけど。
あと follow というシステムは個人的にあまり意味があると思えないので トップページは主に itkz さん監視装置として利用させていただいております。
follow 意味わからんってのは見たそうなものって 動的に変わりまくるもんだよなぁというような。 でなんか、 みくしもそうだけどプライオリティつけられたらいいんだけどな。 この人は常に見るあの人は暇な時にとかそういう。 殺伐としたシステムな気もするけど現実世界の知人友人ってそうなってるしなぁ。 毎日会うのはめどいけど何ヶ月かに一度くらい連絡取ってみたりとかそういう。
(03:26)
僕はずっとアンテナっていうか更新チェッカを 2つ使ってて、はてなアンテナはよく見たいところで、 まぁ外出先からとかでも時々見る用途になっていて、 ローカルで動いてる よくこんなクソ物体未だに動いてるな的な コレ http://shinh.skr.jp/koneta/#wwdgwa は しょっちゅう対象を変えつつ おうちから見る専用アンテナとして機能してるというような。
例えばこう、どっか人のところにコメント書いたら それをおうちアンテナに一時的に入れておいて なんか返事もらったら目に入ってその後に消すとか、 まぁ便利だと思うんだけど。
あとちなみに w3m に完全に溶け込んでて 見てる最中に x a とかしたらそのサイトが登録されて x d とかしたらそのサイトが消えるようになっている。
ていうか人んとこに書いたコメントの その後トラッカみたいなのって ずいぶん前からあるべきだと思ってるんだけど、 なんかあんまり見ないような。 みんなどうしてるんだろうな。
(03:34)
なんかやけにしんどい
んなことより昨日カタストロフが起きて大変だった。 なんかノートPCが落下したり色々あったけど、 結論としてはたぶん kernel を中途半端に入れ変えた影響で u3 の ssh が起動時に立ち上がらなくなった。
などという実に中途半端ながら 結論を言えばログインできない感じの状態になった。
復旧法としては USB の HDD で kernel とか適当にほげればいいんだろうけど、 ていうかさすがに 6 年も働いてくれたので捨ててもいいんじゃないかというような。
Duron 800MHz でメモリ 128MB とかだいぶ懐しい感じのスペック。 こんなもんが SVN サーバと IRC プロキシと メインの Web サーバやってくれてたのがアレだなー。
ところでゴルフ場もキーボード効かない&&ディスプレイほぼ見えない という割に過酷な状態のマシンで経営されているとは
(22:23)
800MHz もあるのに懐しいとか贅沢になったもんだね! 昔のアンタはそんなんじゃなかったよ!! 133MHz とかで g++ 使ってコンパイルに30分とかかかってたじゃない!
(22:26)
http://d.hatena.ne.jp/odz/20071214/1197622976
このへんを見た。 オリジナルのコードが変わってるみたいだから内容はよくわかってない。 そこであまり関係ない話。
#include <math.h> int main() { return pow(3, 4); }
が
main: leal 4(%esp), %ecx andl $-16, %esp pushl -4(%ecx) pushl %ebp movl %esp, %ebp pushl %ecx movl $81, %eax popl %ecx popl %ebp leal -4(%ecx), %esp ret
こうなる。 これが __builtin の魔力か! てか -O とかつけんくても消えるんだね。 pow(3.3, 4) とかしちゃうと pow が呼ばれてしまう。
で -ffast-math をつけると
main: leal 4(%esp), %ecx andl $-16, %esp pushl -4(%ecx) pushl %ebp movl %esp, %ebp pushl %ecx movl $118, %eax popl %ecx popl %ebp leal -4(%ecx), %esp ret
わいわい。
あとまぁ pow(argc, 4) とかでも -ffast-math つければ call pow は消えるから 最適化で pow が速くなることはないというわけでもないとか。
TODO(きっとあろはさんが調べるという意味): これ GCC のどこ? builtins.c は微妙に違いげ。
(03:44)
builtins.c か。
/* Attempt to evaluate pow at compile-time. */ if (TREE_CODE (arg0) == REAL_CST && ! TREE_CONSTANT_OVERFLOW (arg0)) { REAL_VALUE_TYPE x; bool inexact;
x = TREE_REAL_CST (arg0); inexact = real_powi (&x, TYPE_MODE (type), &x, n); if (flag_unsafe_math_optimizations || !inexact) return build_real (type, x); }
このへんかね。
にしても fold_builtin_pow は相当アホな感じな最適化がほげってるなぁ。
/* Optimize pow(cbrt(x),y) = pow(x,y/3) iff x is nonnegative. */ if (BUILTIN_CBRT_P (fcode)) { tree arg = TREE_VALUE (TREE_OPERAND (arg0, 1)); if (tree_expr_nonnegative_p (arg)) { const REAL_VALUE_TYPE dconstroot = real_value_truncate (TYPE_MODE (type), dconstthird); tree narg1 = fold_build2 (MULT_EXPR, type, arg1, build_real (type, dconstroot)); arglist = tree_cons (NULL_TREE, arg, build_tree_list (NULL_TREE, narg1)); return build_function_call_expr (fndecl, arglist); } }
/* Optimize pow(pow(x,y),z) = pow(x,y*z). */ if (fcode == BUILT_IN_POW || fcode == BUILT_IN_POWF || fcode == BUILT_IN_POWL) { tree arg00 = TREE_VALUE (TREE_OPERAND (arg0, 1)); tree arg01 = TREE_VALUE (TREE_CHAIN (TREE_OPERAND (arg0, 1))); tree narg1 = fold_build2 (MULT_EXPR, type, arg01, arg1); arglist = tree_cons (NULL_TREE, arg00, build_tree_list (NULL_TREE, narg1)); return build_function_call_expr (fndecl, arglist); }
これとか。
(03:56)
http://www.jmuk.org/diary/2007/12/14/1
似たようなことが w3m で起きてたのだけど なんか inflate ってコマンド無いと w3m の場合ダメなんかなとか ダメなんかなーと思って accept-encoding から deflate 外してから 気付いたんだけど、よく考えると akr さんとこ (http://cvs.m17n.org/~akr/diary/) は 見えてるのであったのでなにかがおかしい。
それはそうと akr さんとこは Accept-Encoding に deflate 無くても DeFLaTe で送ってくるのはエグいような。
echo 'GET http://cvs.m17n.org/~akr/diary/ HTTP/1.0\r\nHost: cvs.m17n.org\r\n\r\n' | netcat cvs.m17n.org 80
http://www.ietf.org/rfc/rfc2616.txt
とかを見て Accept-Coding: identity を送ってみるも通じず。ムネン。
(04:25)
かんどうした
>>(defun f (&optional a b &key k) (list a b k)) F >>(f 1 2) (1 2 NIL) >>(f 1 2 :k 3) (1 2 3) >>(f :k 3) (:K 3 NIL)
(15:34)
gcl
>>(defun nil() (return 1)) NIL >>(nil) 1
clisp
[1]> (defun nil () (return 1)) NIL [2]> (nil) 1
sbcl
* (defun nil() (return 1)) debugger invoked on a SYMBOL-PACKAGE-LOCKED-ERROR in thread #<THREAD "initial thread" {A7BD3F9}>: Lock on package COMMON-LISP violated when setting fdefinition of NIL. See also: The SBCL Manual, Node "Package Locks" The ANSI Standard, Section 11.1.2.1.2
(16:01)
GCL はインタラクティブモードで disassemble しようとするとあわててコンパイルしてから objdump してる感じ。
しかし objdump は読みなれてるので良い。
(17:26)
_ Ashykaju [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]
http://d.hatena.ne.jp/higepon/20071215/1197733211
あるなぁ、
(01:00)
昨日はRHGにいった。 思ってたより面白かった… というか Common LISP が思ってたより面白かった。 これ見るとホント Ruby はよく影響受けた言語なんだなぁと。 この本は買うなぁ。 今の状態見ると翻訳はあまりクオリティ高くなさげだけど、 なんとなく適当にわかるし。 ただプログラム初学者向けでは無さげ。 まぁたぶん初学者は買わんから問題なさげ。
その場で CLISP と GCL と SBCL 入れて 適当に比較しつつ遊んでた。 雰囲気としては
遊ぶなら CLISP でマジメにやるなら SBCL とかなのかな。
(16:18)
Perl golf history book 的なのを 他言語でも欲しいという話が IRC であった。 まったくその通りだと思った。
とりあえず Wiki でも上げてみて、 古い問題については deadline なくてもネタバレアリ、 って感じでまとめていってみるのはアリかな。
考えてるのは
をある程度自動的に作れると良いんだけど。 あとは人気コードランキングとかあるといいのう
(16:35)
_ shinh [ひげぽんさんは僕なんかよりもっとそうだと思うのですけど、正直逆アセって最も手軽かつ確実な方法だったりしません?別に機..]
_ ひげぽん [>ひげぽんさんは僕なんかよりもっとそうだと思うのですけど、正直逆アセって最も手軽かつ確実な方法だったりしません?別に..]
_ shinh [もうちょい応用をきかせて書いてるコードのアセンブリが常に隣に出てる、とかは夢ではありますねえ。]
_ ひげぽん [それは良いですね。 今のマシンパワーならわりと余裕で出来そうですね。]
_ Jcftymkt [この間も俊太郎の詩をお http://www.stlouisbusinesslist.com/business/5..]
(09:50)
http://b.hatena.ne.jp/spiritloose/20071217#bookmark-6831256
perl -e 'print g.o x shift.gle'
かな。
(01:15)
http://b.hatena.ne.jp/totttte/20071217#bookmark-6831256
知らんけど
main(a,b){printf("g%sgle",memset(b,111,atoi(gets(b))));}
とかならたいてい通るんちゃうかな
(01:24)
起きたらなんかえらいだるかった。 でまぁ会社行ってコート脱いだら Tシャツだということに気付いた… けど誰も指摘しなかったので かわいそうな子認定を受けてるのだろうと思った。 あと金月と書いてたどうでもいいコードをかなり捨てて こう久々に大きく無駄なことしてたなぁと悲しくなった。
(20:58)
だるくてニコニコ見る気も起きないので見てまわる。
zinniaさんに見せてもらって こう首にかけるタイプのはなかなか良いなぁとわかった。
たぶんこれなんだけど難点があってソニ〜なのであった。
ソニ〜でよければこれが次の型なのかね。
このへんネックストラップらしいがまだ出てない。
http://hobby10.2ch.net/test/read.cgi/phs/1184127288/313n-
あと知らんけど ad[es] & bluetooth はびみょうらしい。
(17:53)
nanka さいきんたまに (人|物)++ って表現見るけどこれって ギークなおねえさんとかで最初に見たような気がするけど よくある表現なのかな。
とりあえず賛成の意味で +1 はよく見る。
(21:11)
とりあえずかなり簡単な問題とかなり難しい問題を出してみて 反応を眺めてみてどんくらいの問題にしようか決めようかと思って、 今回はかなり難しい方なので難しいはずというか。
(23:44)
ネイティブコードがいるんだろう。 setjmp/longjmp でできると思うんだけど。
http://twitter.com/alohakun/statuses/523538622
(17:41)
の興奮も冷めやらぬタイミングで新しいお知らせが!!
http://zinnia.dyndns.org/~hiki/SandBox/?SDL-2008%C7%AF%BF%B7%BD%D5
(18:05)
_ あろは [確かに,今ちょっと調べてみたら,昔の C++ トランスレータは,例外の実装に setjmp/longjmp を使って..]
いかに Firefox がアホかというような話だったように思う。 kernel 側で Firefox だけ メモリの扱い変えるとか、 Firefox を定期的に再起動する Extension だの Firefox を二つ動かしておいて定期的に swap しつつ 片方を落とすだの、 ができれば良いと、 まぁそんな話だった。
まぁもう Firefox 専用チップとか作ればいいんじゃないかなぁ。 今時のマシンって Core 2 Duo (ただし片方の CPU は Firefox が使用) メモリ 2GB (ただし 1GB は Firefox が使用) とかそんな感じだろうし…
(03:07)
http://mono.kmc.gr.jp/~yhara/d/?date=20071222#p01
こいの見てて思うのはあんまり関係ない二つのことだなぁ… 一つ目はこう shell はもっとステートフルであって欲しいとか zsh には zftpsys っていうのがついてるの知ってましたかとか そんな話で、 shell っていつか作りたいものの一つなのだけど…というようなほげほげ。 二つ目は Smalltalk のアレいいよなぁという。 名前を忘れてしまったのだけど同じレシーバに対して続けて処理する時のアレ。
receiver doFirst . doSecond
とか書けるんだっけ。なんか違う気もするけど。 なんかあれ shell とかにたまに良さそうだよなぁとたまに。 たぶんあの機能自体 Smalltalk でもたぶんたまにあるとたまに 便利的な微妙機能なんじゃないかと予想している。
これは僕の知る限り Bjarne 信者の C++ 屋が
obj.setA(a).setB(b)
とか書くとか頭おかしい Ruby 屋が
5.times{|i|p i}.times{|i|p i}
とか書くくらいのレアなアレ (上のコードの出力をわかった人は懸賞でひゃくえんくらいがあたります) なのであんまり便利なものでもないのかもしれない。
しかし機械語に落とす時にレシーバは常に EAX とかそんな感じで ほげほげすれば割と良いようなよくないような。
(01:43)
カウボーイなんとかに行ってきて色々興味深かった。 たぶん Unix じゃない人が多いのがなかなか色々。 ただ何故カウボーイなのかとかよくわからなかった。
あと sevil とかは 「役に立つものはゴミみたいなクォリティーのコードにする」 という固い信念に基きゴミなのでまぁゴミなのであった。 というかごめんなさい。
自分でもこれ見ると何がしたいのかよくわからなくて戸惑う。
(01:56)
どうなってたら便利なんだろうか… よくあるケースとしては、
親起動→子起動→子停止→親が捕獲して適当にコード注入して PC いじる →子復活→子 SEGV 。
たぶんこんなケースだろう。 うーん、子への他プロセスからの attach を保留する機能と、 その他プロセスに委譲する機能があればいいのかなぁ…
そうすれば、
親起動→子起動→子停止→親が捕獲して適当にコード注入して PC いじる →親が子に対する他プロセスの attach を保留する設定に → gdb で子プロセスに attach →親は新しく attach しようとしてた gdb に委譲して子復活 →子 SEGV → gdb が捕獲。
みたいなことができるのかなぁ。 知らん。 今度コード見る。
(02:19)
http://a-nickels-worth.blogspot.com/2007/11/effective-emacs.html
http://udrepper.livejournal.com/19557.html
(14:06)
例えば SKK-JISYO.L には「こわs」に対して 「怖」とか「恐」とか入ってるわけだけど、 これは要はおそろしいの読み間違え みたいなのも入ってるって感じなんだろうなぁ。
(18:04)
なつたんさんのところでたまに見かける 長門というのは「ちょうもん」ではなくて「ながと」 だとわかった。 あと「らきすたのどれか」という認識だったんだけど ハルヒの左にいる子のことらしい。
(22:58)
ひとつめは libcpp と GCC のハッシュの共有しっぷりで、 共有できるつくりになってるのは CHoP 作った時にわかってたんだけど、 具体的にこれどう使うねんとわかりにくかったのと libcpp ダルーと思ってやめたのだった。 けどまぁ今度見る。
ふたつめは線型探索とバランス木ってどのくらいのサイズから バランス木の方が速くなるねん、 という話とハッシュならどうやねん というような。 キー長にもよるから測るしかないというのが基本的な話だろうけど、 なんか前にささださんが Ruby で 線型にしたとかどうこう言っておられたので 今度見る。
(00:55)
kwskk 動かにゃーという話をあちこちで 聞いたんだけど僕の持ってる環境はたいてい動いてしまった。 IE6, Safari, Firefox(Linux,MacOSX,Windows), w3m(noscript だと XMLHTTPRequest 使わない) 。 まぁ Web とかはどうでもいいから elisp とか勉強してみよう (たぶんしない)。
なんかとりあえずログを見るとひょっとしたら小文字スタートで 入力してみてる人がいるな!と思ったので 警告を入れてみたけどまぁどうでもいい。
(23:35)
相変わらずこんなコードの書き方してやがるのか…! もう21世紀だぜ…!!!!!!
if (PL_minus_E) sv_catpvs(PL_linestr,"use feature ':5.10';");
(00:23)
Perl 5.10 入れようと思ったんだが、 use feature":5.10" とかしないと say とかが使えなくてしょんぼりなのね。 で -E ってのは -e の use feature":5.10" 自動でする バージョンなわけだが、 -e 相当じゃゴルフ場で使えんのよね。 で探してたんだが件の feature をオンにするような オプションは見つからんかった。残念。 そのかわりにさっきの衝撃的な記述を見つけた。
誰か「ゴルフのために入れてくれ!」って言ってやってください。
(00:30)
http://www.nicovideo.jp/watch/sm902467
長門というのは綾波系のキャラらしい。
あと YUKI.N> っていうのはなんか予告かなんかに出てきてた。
(02:24)
http://d.hatena.ne.jp/odz/20071225/1198604692
http://www.kt.rim.or.jp/%7ekbk/zakkicho/07/zakkicho0712c.html#D20071225-6
僕は -A x もつけないと混乱するなぁ。 元の出力見たいことも多いので -A x -t x1z とかが alias されてるみたいだ
(03:07)
前々からわかってたことだけど。
やはり Kernel へのダメージがデカいなぁ。
(03:20)
なんか会社帰ってみると
http://mono.kmc.gr.jp/~oxy/d/?date=20071226#p01
面白そうなのでやってみた。 たぶん 3-4時間ほどでとりあえず20位に名前が出た。
http://www.spoj.pl/ranks/PRIC/
インラインアセンブリ埋めるとだいぶはやくなったんだが、 正直こんなもん全部アセンブリが書いた方が良くないかー と思い始めてきて、ていうか明日も会社あるとかうざいなぁとかそんな。
もちろん論文とか読んだりはしてないんだけど なんかそいうので速くなるんだろうなぁ。
(03:40)
すばらしー。 まずなんか速い。 まくぶくとコアは別に変わらんというか 完全に同じなんだが断然反応が速いな。 まぁやっぱ Parallels 速いつーても束縛されてたんだなぁと。 あとまぁディスプレイデカいのはすばらしすぎる。 1600x1000とかなんかもう人類の夢みたいな解像度だよなぁ。 なんか戦艦とかそんないめーじ。
作業記録
(12:44)
(05:34)
TODO
(14:06)
sudo sh -c 'echo disable > /proc/acpi/ibm/fan' とかすると本当に止まった。
http://www.thinkwiki.org/wiki/How_to_control_fan_speed#Using_a_stock_kernel
このへん見るになんかスクリプトがあるみたい。 とりあえず動かしてみると確かに静かになった。
適当に ruby -e 'loop {}' とかするとファンが動き出したので ちゃんと動いてると見て良さげ。
(15:01)
せいちょうのきろくをめも
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/golf_prelude.rb?view=log
(23:44)
http://d.hatena.ne.jp/nazodane/20071230/1198988898
僕みたいなヘタレはなんでもユーザランドに置いてくれれば夢が広がる! とか考えがちだけど逆になんでもカーネルの方で動かすというのも なんかかっこいいものが。
しかし実用的なメリットは思いつかないような気がしてならない。
(14:16)
http://www.nmt.ne.jp/~ysas/diary/?200712c&to=200712302#200712302
というわけで .upcase つけましたー。
(00:05)
http://www.atdot.net/~ko1/diary/200712.html#cc29-3
Debian って最も楽なディストリビューションの一つなんじゃないかなぁ…
(00:18)
神社とかでこんぴゅーたウィルスにかからなくなるお守りとか みくしのマイミク増加祈願とか HDD の内容を勝手に公開されたりしないようにとか そういうのをスピリチュアルコンピューティングの 一貫としてやったらいいんじゃないかなあ。
(02:11)
mylist は RSS を提供してるみたいだ。 ただ RSS ってロクに使ったことないのだがーという。
Plagger よくわからんというかインストールむずかしそうだったから やめて自分で作ることに。
(19:18)
前 | 2007年 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 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ mokehehe [anarchy golfにZ80を追加してくださって本当にありがとうございます。 昔はガチで1バイト削るために心血..]
_ shinh [そんな感じみたいですね。私は当時のことを全然知らないので少しさみしいです。なんにせよ、提案&&環境の提供をしていただ..]