ToDo:
始めて500通った、んだけど250とチャレンジでミスったので嬉しくねええ…
250 はコレ、 form は任意の順番で来るもんだとばかり思って、 なんだこれー難しすぎだろーとかちょっとコード書いてみたあと 捨てた。
500はすんなり解けすぎて本当かよと思って びくつきながらサブミットしたら通った。 これは普通に簡単すぎなんじゃ。
そこで1000を見たのが間違いで、 点数少なくてももう一度250考えれば良かったなぁ… 1000は例のごとく問題きっちり読まずに適当に書いたら 全然問題違ってて、あーもう mod とかわかんねーていうか 部屋で誰も解いてねーしこれ難しいんじゃねとか あたりまえのことに気付いて、 もう数分しか無いし challenge 考えるかーと 問題見てたら250の問題勘違いに気付いた。
あとはチャレンジで 500 これ example 通らんだろ ってコード見つけたのでチャレンジしたら失敗した。 全文字列の末尾に 'a' を足してた。賢いなぁ。
てかまぁ常識で考えて Div1 の子は example は通してあるよな…
(02:53)
むずかしいなぁ。 マクロが冗談みたいに多い。 まぁでもマジメに斜め読みすると それなりにわかったり 全然わからんかったりするな。 いや何もわかってないな。
たぶんなんか
ここで
#define __SPECIAL_INSTRUCTION_PREAMBLE \ "roll $3, %%edi ; roll $13, %%edi\n\t" \ "roll $29, %%edi ; roll $19, %%edi\n\t"
これはなんだ!
さすがに 64bit の bit rotate は NOP に過ぎないことはわかるので、 まぁたぶんこの instruction 列を見たら client にビビビっ っていうか simulated CPU における割込みみたいな感じかな。
でめでたく client の世界に戻ってきたとして、 こっちから guest の世界の関数を呼ぶとすぐ死ぬ。 何もせず帰るくらいなら大丈夫なんだけど。 まぁたぶんアドレスがズレてる…とかだと思う。 これがわかれば
Note that you can't use anything from the C library (there are deep reasons for this, trust us).
とかいうナメたアドバイスの意味がわかるのだが。 http://valgrind.org/docs/manual/writing-tools.html#writing-tools.otherinfo
で client の世界から guest の世界のメモリとかは見えてるわけだけど、 データ通信とかはどうやってるねん。 単に client request だけで十分なのか。
意味不明なメモ書いてたら まぁなんとなく整理できてきた…
本当だろうか
(05:00)
valgrind を gdb で走らすと tool の開幕でいきなり sigtrap くらうわけだけど、 これはなんだろうなぁ。
launch するまでには ptrace とかやってるんかなぁ。 コードはあるけど strace では出てこない。
つか gcc に渡してるオプションが既におかしいな…
gcc -Wno-long-long -Wno-pointer-sign -Wdeclaration-after-statement -fno-stack-protector -o rmemcheck-amd64-linux -static -Wl,-defsym,valt_load_address=0x38000000 -nodefaultlibs -nostartfiles -u _start -m64 -Wl,-T,../valt_load_address_amd64_linux.lds rmemcheck_amd64_linux-mc_leakcheck.o rmemcheck_amd64_linux-mc_malloc_wrappers.o rmemcheck_amd64_linux-mc_main.o rmemcheck_amd64_linux-mc_translate.o ../coregrind/libcoregrind_amd64_linux.a ../VEX/libvex_amd64_linux.a -lgcc
tool の直接実行は怒られる、と。
> ./memcheck/memcheck-amd64-linux ls valgrind: You cannot run './memcheck/memcheck-amd64-linux' directly. valgrind: You should use $prefix/bin/valgrind.
もちょいちゃんと追わんとわからんね。
(05:22)
lamさんが人狼作ったとかいう
前見た時は過去ログなかったんだけど、 今はあったから見てたら、 過去ログがにょきにょき伸びてて、どうなってるのかなと見てみると、 カスみたいなHTML + データ + JS を送って JS でデータを整形してるみたいだった。
たぶん進行中も同じシステムで 静的 HTML じゃなくて、 動的にデータ作る感じかなぁ。
(22:13)
http://www.nicovideo.jp/watch/sm2842969
これを見てマジメに人力でプレイすることもなく Rubyスクリプトちょっと書いて勝ってみた。
コードはかなり読みにくい感じ。 こいうの Prolog とか得意だと思うんだけど、 ET とかで書くとなんかメリットあるのかなぁとか、 こいう例のサンプルが見られるといいなぁとか思いましたまる
露骨な要求に見えますがその通りなのですが、 お忙しければ全然無くて良いですはいとかそういう
(01:32)
http://www.icfpcontest.org/results/final/results-by-score-Final-7.html
生きてるってすばらしす。
知ってそうな名前は PFI と kstm.org って感じかな
(12:23)
http://d.hatena.ne.jp/isshiki/20080808/p1
http://risky-safety.org/~zinnia/d/2008/08/#20080809
一般的に標準ライブラリのようなものだと、 間違いなく呼び出し側が正しいんだけど、 一貫しては支持できないあたりいい加減なんだと思う。
理想を言えば C++ 文字列みたいに、 実体はヒープにあるんだけど スタックにあるみたいな扱いができる物体があれば 一番いいんだけど。
C でもやっぱめんどくさくて、 特に小さな物体とかだと平然と malloc した領域を返す 便利関数作っちゃうなぁ。 確かにそういう関数はメモリリークを 起こしやすいんだけど、 一方サイズ指定系の API はバッファ破壊系の バグを起こしやすくて、 昔は逆だったと思うんだけど、 現在の PC 環境では、 前者のバグの方がはるかに発見しやすいように感じる。
リークなんて多少気をつけてても、する時はするわけで、 とりあえずヒープチェッカはかけるからなぁ。
PC 的な環境だと malloc/free が十分速くて、 速度的な問題にはあんまりならない的な話も。
ただ free 以外の解放関数が必要な可能性があると確かにうっとうしいなぁ。 あとデバッグビルドリリースビルド的な問題があるので、 まぁやはりライブラリでは最低限 malloc した領域返す API があるなら その領域を解放する API を用意しにゃならんとかいう話はあると思う。
まとめてないけどざっと
あたりの条件がそろえば内部確保でもいいんじゃないかなぁ。
(11:24)
http://d.digitalmars.com/2.0/changelog.html#new2_018
無事入ったか。 これで pbgd のスレッド実装動くと思うけど だからどうしたってレベルではあるな…
(18:48)
Lightning division 途中結果 via http://d.hatena.ne.jp/KeisukeNakano/20080806/1217981842
http://www.icfpcontest.org/results/lightning/results-by-score-Lightning-7.html
まだ死んでない。 Trial 7 やばすぎだけど!
http://www.icfpcontest.org/results/lightning/results-by-score-Lightning-3.html
この trial はなぜか3位とかにいていわゆる黄金時代。
(12:19)
http://shinh.skr.jp/h/?DuckTyping
うれしいなぁ。 しかし俺はなぜ structural subtyping を static 分類にしてたのかみたいな。 まぁ他にも色々おかしかった気がするけど。
Haskell の template? て TemplateHaskell のことかな。 もしそうなら template? よりは TemplateHaskell? の方が嬉しいので 書いた人だれかたのむ的な。
あと Ada のあのめんどくさいやつはどこなんだろう。 nonintrusive-explicit-static?
型クラスやら implicit conversion と Obj.magic とか C のポインタを ごっちゃに置くのは超違和感だな。 だから推定 kinaba さんが最後のテーブルを 足してくださったんだろうけど。
nonintrusive-implicit のとこに 「普通 duck typing と言うとこれ」 とか足しといた。
(02:54)
http://twitter.com/hajimehoshi/statuses/877740043
だと思う。 ID でひいた先の文字列がずっとあるって話かな
http://i.loveruby.net/ja/rhg/book/object.html
http://i.loveruby.net/ja/rhg/book/name.html
(11:28)
_ k.inaba [たぶん最後のテーブルは推定soutaroさん]
_ YT [おお素晴らしいまとめです。 Adaはnonintrusive-explicit-staticでいいと思いますです。 ..]
_ soutaro [私です。 だから、もう書いてある表を写したやつと、これはさすがに間違えないと思うtyped/untypedしかないと..]
_ shinh [なんと soutaro さんでしたか。編集ありがとうございます。 YTさんもぜひ Ada を表に]
_ みずしま [> まぁ明らかに書いて下さってますが! ご察しの通り、書いてました。Scalaの辺りとか、OCamlの項目 を微妙に..]
http://www.liarsoft.org/diary/20080803.html#20080803p1
なんか僕の方はかなり良くなってる感じで、 良くなってるのが申し訳なく感じるのです。 つくづくヤな病気だと思う。
(01:46)
前 | 2025年 7月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ シンX [棒けしゲーム懐かしいなあ。高校の頃突然流行って、受験勉強そっちのけで戦略を考えてましたよ(←) ある日、「同じ棒数..]
_ shinh [将棋や囲碁と等価どころか、なんで棒けしと等価なのかすらよくわからん程度に単順なゲームですね…]