ToDo:
といえばドラクエ4のバグ2つの印象が強いよなあと見てみたら
http://b.hatena.ne.jp/entry/s/note.mu/ruiu/n/n89d18450b1bb
やっぱり言及されてた。
片方は、3章5章のカジノで838861枚コインを買うとすごく安く買えるというやつ。5章だとコインが1枚20Gで、838861*20=16777220でこれは24bit整数として4Gだけオーバーフローしてるので、4Gになってしまう、っていう。
子供の時になんかすごい裏技だなあと思っていて、大学の時に、ふとどういうことだったんだろ、て計算してみて、ああなんだか知らないけど2**24をちょっと越えるからなんだな、と自分で理解できて感動した記憶がある。2章だとこの裏技使えないんだけど、それはコインが1枚10Gだからオーバーフローしないんだなあ、とか。なんで24bitやねん、ていうのはよくわかってないけど、アドレス計算が24bitらしいから24bit計算するために色々ある感じなのかな。
もう一つは8回逃げると会心の一撃しか出なくなる、っていうやつ。なんか戦闘中のアレコレをbitfield的なもので持ってたという話だと思う。ドラクエ4は4回だったか逃げると必ず逃げられる、みたいな救済措置があった。それは3bitで逃げた回数を数えてて、普通は途中で必ず逃げられるので問題ないのだけど、ボス戦だと逃げられないので、8回目で隣のbitにオーバーフローしてしまう。隣のbitは何かというと、パルプンテの効果で会心の一撃が必ず出るようになる、っていうbitだった、ていう。
これは友人に教えてもらって、なるほどなあと思った。だから16回逃げると会心の一撃が出なくなるし、128回逃げると同じくパルプンテ効果の呪文がきかなくなるやつが出る、と教わって、なるほどなるほどなあ、と思った。
ファイナルファンタジー派ではあったけど、バグはドラクエの方が好きだな。なんかFFは毎度アイテム欄が無茶苦茶なことになってた(「た5」からドリル装備まで…)のは、今思えばなんで毎度やらかすんだって感じで面白いけど、まあワンパターン感があった。
ドラクエ3にある、「ACアダプタを抜く」という動作を伴うバグとか最高だったと思う。あれはSRAMにPCだかなんだかがあるから再開できるとかだったか
(16:15)
やることは素直だけど壁無いとか色々変則的なのでメモ。狂エアロスパーク喰らったら終了
(20:45)
知ってるプログラム言語はまあだいたい好きで、でも一つ嫌いな言語があってそれはPython、と長年言ってた。しかし僕が社会人になってから仕事で書いたコードの半分はPythonであろう。同じ内容の仕事に使っていたらRubyも同様に嫌いになっていた、というのが公平な評価だと思う。
さてしかし、なんか最近Pythonも嫌いじゃない。いや好きじゃないけど、最近はその好きじゃない感は全てのスクリプト言語に等しく持っているように思う。
なんで好きになったかっていうと……Lisp-1てところがいいのかな、と思った。Ruby基本的には好きだけど、Lisp-2ていうところは微妙な気がしているように思う。Lisp-2だと激しくDSLなことする時とかゴルフする時はハッピーなんだけど、なんかこう、ひょろっと無名関数渡すみたいなのが、いちいちProcオブジェクト受けるべきか、&引数でイテレータでやるか、みたいなことを考えるとかなんとか。単にPythonに洗脳されてきてるだけかもしれぬ
あと最近、Tensorflowの影響でオブジェクト指向をあまり使わないPython、クラスを作るとしてもコンストラクタ以外ではメンバをほとんどいじらないようなPython、をよく書くわけだけど、このスタイルはなかなか良さがあるなと思ったりする。なんとなく全域的にstatelessになって、この関数を呼ぶ前はこの関数を呼ぶこと、みたいな注意が減るので。悪さもあるが。関数内クロージャを返して状態を持つみたいなことになって、それ自体はスーパー悪くはないが、すぐ関数が長くなってリファクタリングがしにくいとかなんとか。あと関数から2つの関数とか返ってくる関数とかはまあ微妙
(01:43)
http://blogos.com/article/256652/
長いけどまあそうだよなあとか思ったというか、そういうのがだいぶ良くなってきてはいる、という話だと聞いていた
(03:41)
https://note.mu/ruiu/n/n3378b4169ad8
この手の話で印象に残ってるのは2つあるな
1つ目は会社入ってネットワーク越しの別マシンのメモリに乗ってるデータの方がディスクよりはるかに速いと実感した時。知識としてはわかってたはずだけど、実際感じるとびびった。
2つ目はコア間のメモリ転送が遅いと気付いた時。なんかマルチスレッドのプログラムなのにCPUの数を1つに固定した方がはるかに速く動いたりと。タスクパラレルはイマイチで、やっぱデータパラレルサイコーと思った。
あとまあ細かいけど「凝ったアルゴリズムは局所性が悪い」、はおかしいと言って良いと思う。キャッシュラインにまとめて乗せるために複数ノードをゴチャっとくっつけるツリーとかあるわけで……人生において必要になったことは無いが
RRAMてやつとかはどうなるんだろうな。
(01:34)
http://shinh.skr.jp/m/?date=20160227#p03
と比較すると、コストはコルーチンとだいたい一致する感じかな。一見どうなんだこれって思ったけど、なんかむしろいいものぽい気がしてきた
(13:41)
http://park5.wakwak.com/~rasen/cap.html
ふとこんな遊びがあったなあと思い出した。名前が見当もつかなかったので、結構探すのに苦労したり
(23:28)
手順がややこしい上に安定しないのでメモっておく
(12:41)
https://www.ft.com/content/987dddda-bbe2-11e6-8b45-b8b81dd5d080
日本もポピュリズムぽい気がしてたんだけど、ハタから見ると
Nevertheless, its immunity from the populist political tide remains remarkable.
なんだなあ
(04:35)
http://www.newsweekjapan.jp/stories/world/2017/10/post-8722.php
実感として間違いなくあるな……
(10:01)
https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=819703;filename=patch.txt;msg=5
@@ -1663,6 +1663,8 @@ stop_the_insanity (saver_preferences *p) Bool senescent_p (void) { + return 0; + /* If you are in here because you're planning on disabling this warning before redistributing my software, please don't.
このコメントガンムシぷり面白いやろ
ネタ元
https://www.jwz.org/blog/2016/04/i-would-like-debian-to-stop-shipping-xscreensaver/
xscreensaver の作者はマジメな人で、バグ報告があるとマジメに返事してしまって両者不幸になるので、バグ報告こないようにアップデートされてなければwarningが出るようにした。けど、distro的にはstableてのはsecurityアップデート以外しないことに価値があるわけで…と平行線
マジレスすると、作者にバグ報告しないで下さい、て書くべきなんだろうかなあ。まあていうかバグ報告無視すればいいと思うけどね
(20:33)
$ cat clang_opt_bool_lib.c #include <stdbool.h> int func(_Bool b) { return b ? 10 : 5; }
というライブラリがあり、
$ cat clang_opt_bool.c #include <stdbool.h> #include <stdio.h> int main() { printf("%d\n", func(2)); }
このように使います。
$ clang -std=c89 -O clang_opt_bool.c clang_opt_bool_lib.c $ ./a.out 15
b ? 10 : 5 なのに 15 が出ました
(13:20)
前 | 2024年 5月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。