ToDo:
ニコニコで複数行 AA とか流さないのかなーとか 思ってたらあった。
http://www.nicovideo.jp/watch/sm500873
しかも想像してたよりはるかにすごかった。
(02:33)
そういうつもりだったんですよね。
http://www.nmt.ne.jp/~ysas/diary/?200706c&to=200706302#200706302
もちろん実装してもいいんだけどランダム勝負とかが怖いとか テスト用のスクリプトが遅いとか困るなとかそういう。
(02:58)
のではじめてというのは意外。
http://d.hatena.ne.jp/syd_syd/20070701#p1
どうでもいいけど
あとはstrutsを使っているときにActionFormとテーブルオブジェクトの中身をいち いち移し替えるコードの嵐とか.もういやです.単に僕が下手なのか?web開発の宿 命か?strutsだけ?RoRではどうなの?
に同意*999くらい
(13:33)
http://d.hatena.ne.jp/sumii/20070702/p2
sumiiさんって「OCaml自体が普及するより〜」みたいな見方される人だったんだ! と嬉しくなった。
誰か OCaml のかっこいい標準ライブラリ書かないものかしら。
あと元記事は読んでないのでさっぱりわからない。
(13:38)
http://yowaken.dip.jp/tdiary/20070703.html#p01
テトCPUは僕も長年 (高校3年くらいからなので構想8年規模) 作ろうと思ってたので やろうかなー。
そいや Code Golf の carldr 氏も作ってました。
(13:41)
http://www.atdot.net/~ko1/diary/200707.html#d3
一個 p :ok するために 192行必要なのだろうか それともなんか指数的に増えてくのだろうか。
(13:45)
obstack はこう結構何するのかイマイチわからん関数 (1grow とかそのへん) があって、怖いなーと思って objalloc を使い始めて うーんやっぱ obstack の方がいいや… と思って obstack に戻る、っていう作業を何度もしていると思う。
cparser もそんな経緯だったとおもう。
http://d.hatena.ne.jp/shinichiro_h/20070521#1179728233
結論は apr 使おう、ということで。
(13:48)
_ あろは [確かに Apache Portable Runtime はなかなか良さげですね.ポータブルなスレッドとかロックとか ..]
http://natu.txt-nifty.com/natsutan/2007/07/sicp_stream.html
うーむ。娘さんにするとなんでもすばらしくなるなぁ。
おにいちゃんのばか! int なんて型宣言書いたら 4 バイト増えるじゃない!!
いまいち萌えないな。
(15:22)
きっと blanco framework だとおもうんだ
http://hp.vector.co.jp/authors/VA027994/blanco/blanco.ja.html
うそですごめんなさい。
(04:13)
http://itpro.nikkeibp.co.jp/article/COLUMN/20070604/273175/
via http://d.hatena.ne.jp/odz/20070704/1183577715
それはそうと最後の記者紹介見ると99年には 技術職やめておられるようで。
(08:43)
一郎二郎三郎の三兄弟がいました。 以下から彼らの年齢を当ててください。
一郎「5歳年下の弟がいるよ」
二郎「7歳年下の弟がいるよ」
三郎「長男は10歳だよ」
イマイチ。 なんかもう少し工夫できないものか
(20:11)
_ YT [二郎10歳、一郎8歳、三郎3歳かと思ったのですが、3歳の三郎君に「長男は10歳だよ」なんて台詞が言えるとは思えないの..]
_ shinh [一郎連れ子だとすると二郎さんの方の一郎は亡くなったんですかね… あと YT さんは深読みしすぎなのですが、仮に..]
_ shinh [で、一郎二郎ともに女性だった場合も連れ子はまぬがれないですね。 {1: 15, 2: 17, 3: 10} ]
_ YT [長女に二郎、次女に一郎と名づける酔狂な親がいてもおかしくないと思います。 ええと、厳密な条件としては、全員男、年齢..]
_ shinh [あーすいませんすいません。二郎10歳というYTさんが最初におっしゃっていたのが想定解でした。]
http://alohakun.blog7.fc2.com/blog-entry-777.html
GNU 拡張に頼らなくても。
#include <stdio.h> int add1(int x) {puts("use function def");return x + 1;} #define add1(x) ((puts("use macro def") * 0) + (x) + 1) int main() { printf("%d\n", add1(9)); printf("%d\n", (add1)(9)); }
だからどうした
(03:28)
http://d.hatena.ne.jp/giveup/20070706#1183672750
とか思った俺はゴルフに毒されすぎだと思った。 全体括弧で囲ってるから問題無いですねそうですね…
(15:03)
def f(a,b,c) l=[a,b,c] *q=[[a,0,0],[]] m={} until q.empty? s,h=q.shift next if m[s] m[s]=1 3.times{|f| 3.times{|t| x=s.dup x[t]+=y=[s[f],l[t]-x[t]].min x[f]-=y q.push([x,n=h+[[f,t]]]) if x.all?{|v|v<1||v==a*0.5} n.each do |f,t| puts %w(a b c)[f]+'=>'+%w(a b c)[t] end return end } } end end f(10,7,3)
こんなもんか。 ムダな計算しまくるけどメモアイズしてるからオッケー方針。
(01:34)
http://karetta.jp/article/blog/ll-spirit/033840
なんか一瞬答え違うなーと思ったけど、 一応 return 外すと同じ答え出てたからたぶん OK だろう。
(01:35)
http://alohakun.blog7.fc2.com/blog-entry-776.html
ここの syd_syd さんに同意だな。
結局皆さんが気にしてるのは〜からどの辺が「筋が良い」のか?
のあたり。
何がしたいか、っていう What はたぶんそれなりに 想像がつくというか割とプログラム書きの妄想の一つだと 思うんだけど、 How がよくわからないという。
という質問に対して返答が基本的に ふたたび What なのでよくわからなくなるんだな。 「できたプログラムの正しさが全て保証されるという点がブレイクスルーです」 とかそいう。 で How を知りたければ論文読むしか無いらしいのだけど、 それは残念なことで僕は文章読んでもコード書かないと さっぱりわからない人間らしいので。
(01:56)
アルファベットくらいだと甘いと思うので、 alnum の重複無しかつバイナリ無しくらいだとどんなもんだろうな。 まぁ記号ゴルフよりは簡単なので解けるのは間違いない。
(15:49)
初のフルタイム労働はまぁどうだったかなー と思い出してみる。
まぁ職場としては間違いなくいいんだろうな。 行く時間とか(俺は)適当だし 帰る時間とかも(俺は)適当だし (俺は)なんか斑鳩やってたりしたし。 結局クリアできんかったというか最後の方やってねえ。
で作業内容自体はまぁ(俺が)思ってたより 俺ちゃんと働くなーっていうか まぁそれなりにはやったような気が(俺は)した。 一応(俺は)今日で区切りをつけた気になってるし。 ただ内容自体は間違いなく Quine 書いたり ゴルフしたりしてる方がはるかに面白いんだよな。 まぁそんなもん元々期待してない。
あと飯とかボールとかスペースシップとかそのへんはまぁ、 どうでもいいや。 待遇は間違いなく豚に真珠的な感じとしか。
まぁそんなことよりやはり技術的な環境というか。 回りの人間が普通に話がわかる以上の エンジニヤばっかってのは嬉しいことだよなぁというのと、 あと次点は社内インフラに触れられることかなぁと。
話がわかるエンジニヤと仕事できるのが どのくらい良いことかっていうと、 つまり具体的に言うと不条理な要求があんまり来ないわけで。 あとちゃんとわかってる人に 評価されるってのは嬉しいことだよね、とかそういう。
気に喰わんのはアメリカぽいとかアメリカにあるとか デカいとか。
(16:19)
http://www.math.sansu.org/u/diary/?date=20070707#p01
OCaml はちゅ〜りんぐこんぷり〜とじゃなかったのか!! Brainf*ck にすら表現力が負けてるじゃないか!!!
(00:05)
一応復活はさせた。
けど DNS の設定間違えたのでまだアクセスはできぬー 121.1.133.104 をじかうちすれば触れる。
まあなんにせよ死亡原因は熱暴走ぽい上に 帰ってきてちょっと触ってたら既に一度 固まったので結構やばい状況かも。 まぁ明日以降深く考えようとおもう
(23:25)
ねむいとしか言えない感じだ。
だいたいまとめると
ゼルダのことしか書いてない。
そんなもんか。
あーだるいなー。
(05:57)
そういえば読み終わってたのだけど、あまり面白くなかった。
だいたい僕は SF 読んでて無理なところのゴマかせてなさが 気に入らないようだ。
あとがきにマイクルクライトンはゴマかしがうまいとか書いてあったのだけど、 うまいとは思えないなー
(23:19)
(07:55)
やるかな。
あたりか。 2個めはなんか作りかけがあった気がするので Thinkpad 復活に依存している。 3個めはまぁすぐなんじゃないかな。 4個めは人狼詳細戦績とかもそうだけど僕そいうの見るの好きなので。
1個めは結構めんどくて、 プロトコル定義をしないといけないし、 普通に考えて既に作った問題の編集機能とセットなんじゃないかな。
まず問題投稿者の IP は問題に記録しておいて、 同一 IP なら編集できるってことにする。 これはまぁ普通にできそうな気がする。 それ以外の認証とかはナシの方向で。 まぁ Typekey でもいいけど。
プロトコルは標準入力からソースコード受け取って 標準出力にランダム生成したテスト input/output を 吐かせる、ってのが一番ラクかな。 ただテスト input/output の区切り文字を 定めないといけないのは既に少しめんどい。 ゴルフの今までの問題を見ると空行が入力の最中に入るものは無い気がするので 一番わかりやすくてラクなのは最初の空行で区切る、って感じかな。 ただこれだと複数の解答を許容するってのはできない。
だとすると、解答 output が "WILL BE VERIFIED BY THIS SCRIPT" とかそんな感じだと プログラム実行結果を、
./prog | ./verifier -v > ok_or_failed
とかいう形式で再度確認するとかそいう仕様かなーと思う。
わりとめんどいな。 とりあえず体調悪いしなぁ…
(11:21)
http://www.atdot.net/~ko1/diary/200707.html#d13
i@um ~> touch .A・ ・ ・ ・ i@um ~> chmod 000 .A・ ・ ・ ・ i@um ~> sudo chown root .A・ ・ ・ ・
何度か書いてるけどこれは結構オススメ。
(00:15)
コンパイル時のコード変換っていうのは世にも珍しいことに 基本的には副作用が無くていい、 から純粋関数型でも問題はないわけだ。 C++ はたぶん純粋関数型なんだろうけど、 C++ はただ単に副作用が無いだけで、 全く純粋型の型チェックによって 強力なエラーチェック、みたいなことは全くしないので、 純粋関数型のメリットは生かしてないようにおもう。
「C++ template と Java generics は sementics が全然違う ── C++ template には sementics は無い」みたいな 話を聞いたことがある気がするけど まぁまさになんもやってないわけだと思う。
でも強力なエラーチェックが欲しいかというと C++ なんかを見てると別にあまり欲しくもない気がする。 どうせコード変換のプロセスの後の、 本当のコードのコンパイル時に 強い型付けつきでエラーチェックされるから。
だからまぁ、 D なんか見てると、ファイル入力なんかもサポートしちゃったし、 今後も副作用バリバリにしていっちゃってもいいんじゃないかなぁとおもう。
でもなんかコンパイル前に Haskell が走って その後に普通のコンパイラが走る、 っていうような言語を考えてみるのも面白いのかも。 頭悪い子にはそれにメリットがあるのかはさっぱりわからないけど。
ってそれが Haskell と DanoMoi の関係なのかな。 となると DanoMoi の方をもっと表に出した言語があれば 好きになれそうな気がするのに。
http://www.kmonos.net/wlog/65.html#_1549060908
ふーむ。 DanoMoi の方を表に出さない理由はめんどくさいから、か。 なるほどなぁ。プログラムってむずかしいね。
要約すると時差ボケきつい。 気にしないけどな!
(07:46)
これはすばらしいなー
http://d.hatena.ne.jp/yshl/20060511#1147371819
「このニュースは嘘ニュースです」とかが 最初から見えてたりすると屈辱だ。
どうでもいいけど w3m に密かに足りないものは 軽い強調ではないかな、と思う。 アンダーラインよりちょっと弱いくらいの 強調と、軽く弱くする感じの設定が欲しいんだよね。 弱くするのはグレイあたりでいいとして、 軽く強調に適した色が無いのが問題ではある。 端末いじってあんまり使わない色を変えるのが早いかな。
あと端末の色調べる方法のメモ
i@um ~> ruby -e 'puts ".A・x1b[01;30m hoge ・x1b[0m"'
(20:35)
http://zinnia.dyndns.org/~hiki/SandBox/?2007%C7%AF%B2%C6-1%A1%CA%B4%D8%C5%EC%A1%CB
なのでなんか作ろうかと思う次第です
(17:09)
12時間くらい寝たと思うがまだ体調悪い。 眠けはさすがに無いけど。
だいたい俺らしくなく忙しいというか用事が多い。
土日飛行機で移動、日曜49日、月曜泊まり、 土曜泊まり、月曜SDL、月曜晩知人来た、 とかそんなので今週末 ICFPC かー、という。
とりあえず
あたりをなんとか。
(10:28)
http://karetta.jp/article/blog/ll-spirit/034942
ほえほえ
*a='1' ('2'..'9').map{|x|b=[] a.map{|v|5.times{|i|b<<v+"+-*/"[i,1]+x}} a=b} puts a.select{|f|100==eval(f)}
(10:52)
(5**8).times{|v| f='1' '2'.upto('9'){|x| f+='+-*/'[v%5,1]+x v/=5 } puts f if 100==eval(f) }
とりあえずこんなかんじ。
(11:05)
http://lowlife.jp/mft/weblog/2007/07/18.html#P1406
http://d.hatena.ne.jp/odz/20070718/1184769027
ary = [1] ary[1]
これに例外が飛ぶなら、 Python 的には zip って 両方のサイズが等しくなければ例外飛んでもいいんじゃないかとか思うのだけどな。 こいういうところでなかなか Python の整合的な哲学というか なんというかが見えて来なくて、どうも好きになれないというか。
Ruby ならとりあえず動く方に倒す、ってことで nil が帰るのは納得だし、 C++ なら C との互換圧倒的に重要、って ことで ary[1] が落ちたりわけわかんないことが起きるのもわかる。 ary.at(1) などという長いメンバの方が安全、というのも (ダメなデザインだとは思うけど) C++ としては理解可能ではあるわけだ。
(23:44)
The current top 20 (in random order) Team icfp_onlooker shinh just me ProactiveApathy Optimistic Lambda Lover fix error internetsdotorg camelimelo Warlords Frodnix Bloody Camls Gathering Gleegers The Church of the Least Fixed Point seversk Moliere Vaincra! Rhinos Red Hot Curry Peppers Pretend Robot Pants Side Effects May Include...
入りますた記念パピコ
(03:16)
最後の最後でっ…!
http://b.hatena.ne.jp/entrylist?sort=eid&url=http%3A%2F%2Fshinh.skr.jp%2F
僕のはてぶパラパラマンガがっ…!
この2日間アンテナも回さなかったのが敗因!
(14:55)
via http://d.hatena.ne.jp/uskz/20070724/p1
http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200707/07070029.txt
おもしろいなぁ。
この手の fj 文化的(なのかは知らんけど)はまだ生きてるんだなぁと。
まぁ質問者がアレなのはいいとして、 回答者もアレに見える理由を少し考えてみた。
途中にあった「説明が趣味」っていうのはわかりやすいな。 説明が趣味な連中はブログに説明を書くようになったのもあって ML が死にたえたりこの手の伝統的なやりとりを見る量が減ってきたのかもしれない。
でなんというか、このログ見てる限りでは、 途中から明らかに答えだけが知りたいような雰囲気の子だから、 どう考えてもスルーするか答えだけポンと投げるか以外だと お互い不幸になるっていうか少なくとも 説明しても相手は喜ばないし何も学ばないのは自明に見える。
でもわざわざ説明を喜ばない相手に説明するってのは、 こいう教えて君死ね文化の再生成とかそんなことのためなのかもしれないなぁとか。
(10:51)
http://kzk9.net/blog/2007/07/icfp_2007.html
ノイズが大変だと言及してくださってうれしかった。 僕もみなさんの 1/1000 くらいは頭使ったんだ!!
それはそうと画像調べるに Risk は僕の半分強か。 なるほどなぁ。
(11:24)
http://www.kmonos.net/wlog/75.html#_2341070724
原因は rope 側にあると躊躇無く決めつけてデバッグすることができました。
これ言いたい!
(01:48)
画像公開は実質点数公開だと思うんだけど、 いいのかな。
って俺こそ書いて良かったんだろうか。 まぁ明らかに勝ってないし、 こう早く「ゴメン俺まともにゲームやってない!!」と言いたかったし。
あーでもなんか俺だけ明らかにおかしい点数の増えかたしてたと思うんだけど、 なんか案外まともじゃない方法だとは気付かれなかったらしいので、 完全に黙秘して「あーアセンブラ?それそれ、俺それで解いたお!!」 とか言ってたら立派な功績になったかもしれない。
でもそれじゃネタにならない
(13:52)
基本的に mk_prefix.rb は可能な限り抽象化せずに書いて、 細かい最適化の可能性を意識できるようにしてたんだけど、 まぁあんまり意味なかったかもしれない。
それはそうと、
goto[0,0] chdir[:E] goto[150,150]
なんかの3つ目は、
strong_compress(MOVE,150) cw[] strong_compress(MOVE,150)
とかに展開されるはずだけど、
strong_compress(MOVE+CW+MOVE+CCW,150)
の方が短いに決まっている。 あと色の指定とかも甘すぎた。 前回の bucket を有効利用できるシーンとかも あったはずだし。
このへん時間があればちゃんとやりたかったけど、 どうせ10000くらいしか点数変わらんし それなら細かいとこ埋めた方が良いのであった。
(14:09)
x += 'IIPIP' + asnat(l) + 'IIFIIF' + 'IFPP' + protect(c) + 'IFPPIIF' + 'C' * (i-2)
とかでいいだろアホー、と思った。
が
おそろしいことに protect が実装できない、というか 試しにやってみても 6000B くらいしか縮まん。 まぁそんなもんか && そんだけ縮んだら十分か
(01:31)
http://www.rubyist.net/~matz/20070713.html#p01
それ3つとも「Prologぽいから」じゃないのだろうかと思った。
(01:59)
http://two-wugs.net/emacs/mode-tutorial.html
hmhm
(23:57)
http://blog.livedoor.jp/dankogai/archives/50881558.html
よくわからんけど、なんでその二択しかないんだよという。
だらだら闘争しつつだらだらしたいんだけど。 あとだらだらしたい。
あとオリジナルの jkondo さんのよりはるかに dankogai さんの方が気にいらないのはたぶん、 jkondo さんのは仕事好きなら好きにすりゃいいじゃんと思ったけど dankogai さんのは若者よ働けチックだったからかな。
(14:14)
何度か書いてる気もするけど、 仕事好きなら好きにすりゃいいじゃん てのも雇用側なら好きにすればいいんだけど、 働く側に極端にマジメに働く子がいると あいつが頑張ってるんだからお前も頑張れ的な 暗黙の強制が生まれてよろしくないという話が。
勝手に頑張って勝手にたくさん稼ぐだけなら無問題なんだけど、 他の子の時給落としちゃうのよね、 という。
この話か。
http://d.hatena.ne.jp/sumii/20060731/1154301189
(23:28)
師匠が書いてた文章読み飛ばしてたなーと思って読んだ
http://morihyphen.hp.infoseek.co.jp/log2/200707.html#2007-07-22
ら、前ざっと見た時と同じ疑問が生まれてきたんだけど、 最後に
と思ったけど、これって最初にサイズ調べておくのとどう違うの?
書いてあった。
興味あるのは今の環境だとどっちが速いのかなぁということかな。 なんか realloc の方が速いくらいなんじゃないかとか思うけど、 なんとなく realloc がイヤなのは激しく同感で、 C++ とか realloc を隠して罪悪感を隠蔽してくれるのはすばらしい。
カプセル化ってのは罪悪感を encap なんとか (←なぜかつづれない)していると言ってよい。
#include <stdlib.h> #include <time.h> #include <set> #include <vector> using namespace std; int main() { set<int> m; for (int i = 0; i < 10000; i++) { for (int j = 0; j < 100; j++) { m.insert(rand()); } } vector<int> v; clock_t s = clock(); for (int i = 0; i < 10; i++) { //copy(m.begin(), m.end(), back_inserter(v)); v.resize(m.size()); copy(m.begin(), m.end(), v.begin()); } printf("%f\n", 1.0 * (clock()-s) / CLOCKS_PER_SEC); }
とかだと前者 1.6 秒後者 1.3 秒か。 set::size は O(1) でできちゃうので まぁ realloc があると少しはパフォーマンスに影響するってことだろう。
えーとつまりツリー構造にはサイズを保持しとくっていう結論に。
いや個々の要素の長さが固定で 1 だからっていうような話もあるけど まぁそれも中身の長さの総量を記録しておけばいいのだけど まぁそれも pretty print とかのためにそんな情報残しておくわけがない。
にしてもまぁ 100万回もランダム生成して木構造につっこんでバランスツリー調整して、 その100万要素のツリーを10回もなめつつ1000万要素のvectorを 文句も言わず作ってくれるコンピュータさんはえらいと思う。
俺はこういう偉い人に対して 「お前のようなヤツがいるから他の子への仕事の要求が上がるんだよ!」 とか言ってるわけで、 まぁなかなかむずかしいところ。
(01:40)
http://shinh.skr.jp/m/?date=20070730#c03
まぁめどいのでとりあえずさっきのコードを Linux on Celeron 1.7GHz で。
size を外部に持つずるいヤツが 4.37 秒で、 realloc しまくるヤツが 5.15 秒で、 最初に数えとくやつが 8.57 秒。
さっきの Core2Duo とかよりキャッシュの乗り方とか 悪かったりすると変わるかなーと思ったんだけどだいたい似たような割合やね。
さっきのはまとめると 1.3秒 1.6秒 2.6秒 。
直感的に同じメモリに対して realloc 繰り返すのは 速そう(だしなんか速いと聞いた気もする) んだけどそれにしても、直感的に差がありすぎてうさんくさい。
まぁカンばっかりなのでまた今度。
(21:57)
やっぱりそうなのか!
http://arena.nikkeibp.co.jp/article/column/20070607/1000581/?P=2
Windows XPと同じように、Windows Vistaも使い込むと遅くて重くなる。特に、
で、それなんでなの。というのが長年の疑問。
95系みたいに使い込むと不安定になるとかよりはマシなのかもしれないけど。
(22:02)
_ wo [「罪悪感をencap なんとか」、いい言葉ですね。僕も今後使っていきます。(使う場面無いですが) 「最初にサイズ調..]
_ Ozy [「通常」って書いてしまうと、きっと良くないですね…。書き直したほうがいいような気がしてきました。]
_ shinh [あ、はい先に長さだけ記録して行く、ってのはわかってたんですが、とりあえず malloc*1 と realloc*lo..]
_ wo [うえー。数えるよりreallocするほうがだいぶ速い、というのは結構意外ですね。ちゃんとベンチマークしましょう。> ..]
_ shinh [意外というより正直うさんくさいと思ったので自前の tree でもうちょい確実に比較してみた方が良さげですね。]
前 | 2007年 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扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ syd_syd [どうも〜.言及リンクをいただいたのはこれがはじめてかなと思ったのでした(かなり昔に一度頂いたかもですが).同意thx..]
_ shinh [なんと。基本的にヨタ満載なのでご注意を…ってわかってますね。それはそうとゴルフはやると良いと思われます。 ]