ToDo:
(00:39)
http://blog.japan.cnet.com/kenn/archives/003431.html
via http://blog.livedoor.jp/dankogai/archives/50716491.html
そういえばセンセは レスポンスの速度が何故あんなに速いのか、 と気にしてたみたいだ。 ハッシュとか転置インデックスがほげほげとか説明した。 んでページランクがほげほげとかは全然興味ないみたいだった。
(02:37)
http://lispuser.net/memo/lisp/2006-03-30-23-58.html
前も見たけどメモ。
括弧の無い SRFI ってあったと思うんだけどどこだっけなぁ。
(04:23)
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)
movl 8(%ebp), %esi
でオケ。 他環境でもこうなってるのかしら。
さっきのでうまくいかん理由は
call *8(%ebp)
で main に飛んできてるからだった。
(07:51)
http://www.jeannettevejarano.com/games/tower-defence.html
via http://d.hatena.ne.jp/otsune/20061218/TowerDefence
(07:59)
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
i@u ~> file /usr/lib/libc.so /usr/lib/libc.so: ASCII C program text
Windows 一般
Cygwin/MinGW
OMF (Borland)
OMF (Digitalmars)
COFF (VC)
Mach-O
総括
(17:28)
(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)
僕が今までで一番面白かったのは ○○さんでぐぐったら、 ○○さんの日記サイトが、
○○さん - [ このページを訳す BETA ]
的に採用されていたというか。
つまりなんというか、 自分の日記の title を○○さんにしてるのか! と思ったらぐぐるマジックだったというか。
(06:54)
http://www.cave.co.jp/gcommerce/2006fes/index.html
via http://garakuta.homelinux.org/~nosuke/diary/diary.html?y=2006&m=12&d=15&n=1#15-1
25-29 帰省とか。ありえんかなぁ。
(06:56)
hamaji@www491 ~> ./hello_small ELF binary type "0" not known. zsh: abort ./hello_small
おおお情報多いなすばらしい
(06:58)
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)
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)
大人気気味。
http://homepage1.nifty.com/herumi/diary/latest.html#15
http://d.hatena.ne.jp/y-hamigaki/20061215#1166193310
woさんえらい。
(10:20)
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)
やってるひまあああああ
あるかな
ないかな
しりとりと言えば、
web
binary
なので次は y からスタートです。 僕の予想は ytqwerty 2.0 です。 その次も ytqwerty だと思います。
どうでもE
(04:10)
ttp://www.atdot.net/~ko1/img/2006/DSCF2252.JPG
via http://www.atdot.net/~ko1/diary/200612.html#d14
(20:49)
今日の話で、 やっぱ既にあるんだなーと思った。
echo Hello | cat@host1 > file@host2
って話。
名前空間がどうこう言ってたのは、 この @... の部分を省略とかこう、 できないとインストールとかをシームレスに、 とかはキツいなぁとかなんとか。
(21:28)
http://d.hatena.ne.jp/arn/20050214#p1
via http://page.freett.com/shelarcy/log/2006/diary_12.html#mistrust_econophysics
(00:43)
ふらたんが言ってたこと。
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)
1st kinaba 51 Ruby 10,000 (v13) 2nd flagitious 52 Ruby 9,807 (v26) 3rd shinh 52 Ruby 9,807 (v14)
縮む気しねえええ
(15:20)
(15:33)
http://arcadestg.jpn.org/wiki/wiki.cgi?page=%C5%EC%B5%FE%C5%D4%2823%B6%E8%29
これはべんり
via http://www5.ocn.ne.jp/~yoc/gra.html#20061213
(17:32)
http://mkosaki.blog46.fc2.com/blog-entry-288.html
久々に面白画像キターと思ったら前もこれ見たような気がするよ! さみしい!
(22:43)
http://www.namikilab.tuat.ac.jp/~sasada/diary/200505.html#d10
eval 無いとかマジック…と思ったら lave だった。
(03:34)
http://www.rubyinside.com/advent2006/2-erubis.html
via http://www.rubyinside.com/advent2006/
(03:37)
昔はこういうのも
19:49 <codegolf> zeriod submits 1B of Php for Paint By Numbers, ranking 1st (10000pts) in Php and 1st (10000pts) overall.
これはバグでした
(05:08)
http://d.hatena.ne.jp/Cryolite/20061210#c1165857299
そして書き下す作業は面白くないと思うんだよなぁ。 少なくとも僕には面白くない
(05:51)
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)
むずかしいっていうけど、 あせんぶりとかわかってたらそんなにむずかしくない部分も 多いんじゃないかなぁとか思う今日このごろ。
こんぱいらのきもちになって考えれば自明な部分も多いような…
で、そいうことが Write Great Code 2 のイントロに 書いてなくて少し残念。 「この本を読めばアセンブリの雰囲気がわかるので、 コンパイラの気持ちになれるので、 普段から高速なコードを選択できるようになります」 だと動機が弱い気がして。 コンパイラの気持ちになれば なぜ特に C/C++ がこの言語仕様になってるかもわかる、 ってのも重要な点だと思うんだよなぁ。
たとえばわかりやすいとこでは C で if あれば switch いらないじゃん break キモい、みたいな話とか、 mst さんがキモいとおっしゃってた C++ の初期化リストとか。 キモいものをわざわざ入れてる理由がわかるなんて素敵なことじゃない。
(15:52)
true_return_type.d(30): static assert (is(long == long)) is false
こんなステキなメッセージもらったことない
(00:52)
http://garakuta.homelinux.org/~nosuke/diary/diary.html?y=2006&m=12&d=10&n=1#10-1
mjsk
(04:37)
#!/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)
(08:18)
http://www-06.ibm.com/jp/developerworks/java/051021/j_j-pg09205.shtml
ほえー。全然途中までしか読んでないんだけど MOP て method_missing のことなんかいな?
(09:41)
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)
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)
結局ほとんどは三つに分類できるような気がする。 アカデミックとビジネスと、コンパイラ屋と。 でもそろそろ、エディタ実装の実経験に裏打ちされた 新しい言語が生まれる時なんだろうね。
こういうの見てると、 OCaml の推論した型とか 自動的に書き込まれててもいいよなぁとか 思ったりするわけですなぁ。
でも } (while) はダメだろお
(20:42)
http://gogen-allguide.com/ho/bonus.html
http://ja.wikipedia.org/wiki/%E8%B3%9E%E4%B8%8E
(04:26)
さすが5分ですばらしい洞察です
http://d.hatena.ne.jp/ytqwerty/20061208#p2
いいところの評価も同感する感じなのですが、 特に悪いところとか謎なところがまさにその通りだと思いまして。
つまり inout どうするんだろうなーというのは 全くもってその通りというか最近関数系で 遊んでる人々は inout 考えてねーよな。
ただ instance の方が好みというのは!
とりあえずいもう5分お願いしますそしてそのままずるずると。
(04:43)
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)
と思って HDD 内探すも見つからず。
http://maideriapress.web.fc2.com/UoT/UoT03.html
民青として?
そして新とかあるらしい。 微妙。
ttp://maideriapress.web.fc2.com/UoT/img/newanti.jpg
(07:32)
なんかこの機能はじめて見た気がするんだ… と思ってみんパイ見たら載ってなかった。 他の文章も読んでみた方がよさそうだなぁ。
しかしデコレータも文法的になんかきもいなぁ。 いやこれはこれでいいんだけど、 節操が無いとは感じるというか。 というわけで以下に妙に違和感が。 言ってることはわかるんだけど。
http://tabesugi.net/memo/2004/92.html#120951
(12:49)
このシンボルをどう得るか。なかなかむずかしいなぁ。
前半部分は typeid(TypeTuple!(int, int)); でいいはず。 んでこれいったい全体なんなんだ。
(14:02)
(14:15)
前 | 2025年 9月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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 |
全てリンクフリーです。 コード片は自由に使用していただいて構いません。 その他のものはGPL扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ rui [「カッコのないLisp」のSRFIはきっとこれのことですね。 SRFI-49: Indentation-sensi..]
_ shinh [ああそれですそれです。ありがとうございました。]