ToDo:
http://d.hatena.ne.jp/sumii/20060924/1159058361#c1159065360
日本学生が統計的に 基礎研究/技術が足りてないっていう話の方がはるかに比重大きそうな。
(12:22)
確信犯とかは文化の入る余地も無いといえばないんだけど。
文化or利便性、かなぁ。 適切な単語のない事象があった場合に、 似たよーなのであんま使われてない 単語に割当てられてもまぁそれはいい気はする。 便利になるし。
(13:12)
修正BSDライセンス系列のMITとかそういう ライセンスを一瞬で見分ける方法は無いのだろうか。 最初に通称にもなってるタイトルが書いてある という一点だけをもって GPL はえらいとか。 X のヤツは書いてあったっけ。
(18:28)
たったそれだけでいいらしい。 さらしてるもんだけでもヨユーだろう。 こういう数字を数えておくのは好きなので かぞえてみよー。
半年で越えた。 たぶん下半期はもっと多いしなぁ。
でも、10万読んでは絶対いない。
何やったか思い出すと何やってないか思い出すからすごくいいんだけど、 思い出したのは SDL のネタを全く出してないことだった。 なんか公開しにくい物体ばかりなんだよなぁ。 あとは労力にコード量は全く相関してないので、 やっぱコード量に意味ねえなぁ…
(23:14)
i@u ~/test> wc **/*.{c,cc,d,ml,rb,py} 2> /dev/null | tail -1 49348 145536 1190580 合計
1年はこんな感じ…?
i@u ~/test> wc `find . -mtime -$((365)) -regex ".*c$"` >& /dev/null | tail -1 6568 21917 781027 合計 i@u ~/test> wc `find . -mtime -$((365)) -regex ".*d$"` >& /dev/null | tail -1 15545 88434 2314753 合計 i@u ~/test> wc `find . -mtime -$((365)) -regex ".*cc$"` >& /dev/null | tail -1 1357 3648 26652 合計 i@u ~/test> wc `find . -mtime -$((365)) -regex ".*rb$"` >& /dev/null | tail -1 1102 2145 18752 合計 i@u ~/test> wc `find . -mtime -$((365)) -regex ".*py$"` >& /dev/null | tail -1 405 2158 15222 合計 i@u ~/test> wc `find . -mtime -$((365)) -regex ".*ml$"` >& /dev/null | tail -1 1156 3131 36707 合計 i@u ~/test> wc `find . -mtime -$((365)) -regex ".*hs$"` >& /dev/null | tail -1 667 3033 18059 合計
(00:00)
http://homepage1.nifty.com/herumi/prog/mnemonic.html
http://codezine.jp/a/article.aspx?aid=420
http://min-caml.sourceforge.net/tutorial-mincaml-19.htm
(03:18)
(11:51)
(21:30)
http://video.google.com/videoplay?docid=6419094369756184531
面白かった。こんな楽しげな学会いいなぁ。 C-like-syntax のポップコーンとか。
あと 2D の解がずるいとか。
3位Assembly、2位D、1位2D、ってそれでいいのかICFP。 あ、トップは functional だから別にいいのか。 関数型すげー。
(09:42)
via http://d.hatena.ne.jp/nuc/20060921/p1
面白いかも。
でもなんか男性は出会う可能性にwktkする場として 女性は愚痴言うとなぐさめてくれる場として機能して それは既存SNSの機能とさして変わらんのでわとかそんな。
(13:31)
http://d.hatena.ne.jp/alohakun/
TCCは短いのにえらい大変だった気がします。 覚えてるうちに実装について なんか書こうと思ってたんですが それを忘れててもうあんまり覚えてません。
典型的なデータ構造の使い方わかっちゃえば だいたいわかる系のコードではあると思います。 コード生成部見てないからそうじゃない部分もあるかもしれませんが。
というわけで期待。
(17:47)
例えばシャープのポケコンいじってた子が ○○という言語は始めてのプログラムにも良い、 と言ってもあまり説得力もないし無責任な気がする。 初心者だった人が Perlは挫折したけどRubyは大丈夫でした! と言うのなら説得力があるんだけど、 結局初心者の人の目に入るまで 有名になってなきゃいけない。 そんでもって初心者だった人が Rubyならできたーって言っても その人は初心者だったわけで 他の言語を知らないので それはそれで説得力不足で。
なんか大変だなぁと思っただけ。
(18:02)
http://jp.rubyist.net/magazine/?0016-Hotlinks
それはいいとして、 Symbol#to_proc すばらしいじゃん…と。 なんでやろ
(01:08)
落ち着け…フィボナッチ数列を数えてもげもげ
1,1,2,3,5,
memoizeされてないので止まったとか
そうじゃなくて消してから気付いたけど バックエンドを sqlite にした hiki って 手元に置いてあったっけ…
(04:04)
cat **/*.td2 | ruby -e 'm={}; ARGF.each do |l| if l =~ /\((\d\d):(\d\d)\)/ then; m[$1] = m[$1].to_i + 1 ; end; end; m.keys.sort.each do |i| print "#{i} #{m[i]}\n"; end' > ~/timeplot.dat
gnuplot =(echo -n "set term png \n plot 'timeplot.dat' smooth cspline \n") > timeplot.png
つまり朝は寝てる可能性が高いのだろうか。
夜更しさん→寝る→起きる→通学→通学中に考えたこと書く→書くことなくなる
とかそんな
(05:55)
マイナスイオン米というのがあるらしい。
http://www.akitakomachi.co.jp/minusion/
このひとが指導したらしい。
もともと空気中にはマイナスイオンとプラスイオンの2つがバランス良く存在 しています。それが近年の大気汚染・さまざまな電化製品・OA機器から発生す る電磁波・新建材などの影響でプラスイオンが増え、バランスが崩れた空気環 境となりました。マイナスイオンは森林や滝壺付近に多く発生するイオンで、 自然の生み出した「空気のビタミン」と言われており、このマイナスイオンの 環境を造る事で、ようやく本来の空気中のバランスが整います。マイナスイオ ンの効果・効能については正確に明らかにされておりませんが、21世紀の健康 問題や環境問題の鍵を握る「秘密のエネルギー」として専門家の間で積極的な 調査・研究が行われております。
なんか俺が見たのは抗酸化作用があるとかなんだけど。
うーん。
http://www.1htsn.com/sannsei.html
100年前とかを引用するのはニセ科学の特徴らしい。 つかこのサイトが「酸性 酸化」でぐぐって出てくるのは なにごと。
「アルカリイオン水でマイナスイオン(電子)を供給」するのかぁ。 たくさん呑んでビームとかうてるようになりたいな。
どうでもいいけど俺は酸性と酸化ってなんだっけとかいうレベルです ごめんなさい。
http://ja.wikipedia.org/wiki/%E9%85%B8%E5%8C%96%E9%82%84%E5%85%83%E5%8F%8D%E5%BF%9C
いやそれはわかるんだけど、 いやうーんとわからんというか忘れたのは えーと。
何を忘れたか忘れた。
(12:56)
http://b.hatena.ne.jp/entry/http://www.google.com/
http://b.hatena.ne.jp/entry/http://www.yahoo.com/
した
http://b.hatena.ne.jp/entry/http://b.hatena.ne.jp/
自己主張を書くひともいる。
http://b.hatena.ne.jp/entry/http://b.hatena.ne.jp/entry/http://b.hatena.ne.jp/
はてなブックマークをブックマークする人もいる。
うわーんまだいやがる。
http://d.hatena.ne.jp/nuc/20060315
くそうガイシュツもいいとこだった。
(13:12)
(18:43)
http://www.liarsoft.org/diary/20060921.html#20060921p2
ビクっとしちゃったくせに、 さもギリギリ間に合わなかったかのように ボムボタンを押すのが恥ずかしい。
(20:21)
それなりに苦労して作った
char*n[]={ "imix","ik","akbal","kan","chicchan","cimi", "manik","lamat","muluk","ok","chuen","eb","ben", "ix","mem","cib","caban","eznab","canac","ahau" }; main(d,y,m){ for(puts(gets(y));~scanf("%d.%s%d",&d,&m,&y); printf("%d %s %d\n",d%13+1,n[d%20],d/260)) d+=y*365+20*( m%21?m%7?m%99?m%9?m%80?m%24?m%8?m%5?m%4?m%13?m%17?m%59?m&20?m&10? m%6? m%2? m%9-4?14:7 :3 :m%5-4?10:2 :18:16:11:1:13:4:12:15:5:0:6:8:9:17); }
が通らないみたいだ。悲しいね。 リトルエンディアンだからいいと思うんだけどねぇ。
というかエンディアンもクソもなく通ってなさげ。 おっかしいいなーーー
(01:08)
メシを買いにでかけたが、コンビニで気付いた。 夕飯はすでにたべていた。
しかしたらすぱが喰いたかったので買ってしまった。
たらすぱはおいしくなかった。
あたためる時、「レンジの使用はセルフです」と書いてあった。
うちのエレベータは2基ある方と1基あるところがあって、 2つある方は1階と9階に、1つの方は1階に止まっていると思う。 1階で待機するのは合理的だとして、なんで9階かなと思い。 12階だてなので、一番待たせる平均時間の少ない場所は 8階か9階のどっちかだと思う。 この中で9階が選ばれる根拠はというと、 1階までに下りるワーストケースを短くしてるのかなぁ (9-12-1と8-12-1の経路を比較)、 とか思ったけど、ただ適当なだけかもしれないし、 はまじくんのために気をきかせてくれてるだけかもしれない。
2つの方は少し遠くて、1つの方は近い。 上がる時、 昼だと2つの方を利用した方が待ち時間少なめだけど、 夜なら1つの方はたぶん1階に戻ってきてるだろうと 思って1つの方に行くわけだけど、 どう見ても6階で待機してて、これはなんなのかなぁと。 実は自動で1階には行ってなくて夜は下りる人が 上がる人より多いから勝手に下に行ってた説は 棄却したい気分というか昼も1階でよく見る気がするので、 なんらかの理由で移動した後はしばらく待機するとして、 それは次に呼ばれる可能性があるので、 逆方向に走り出したけどやっぱ戻るぜー みたいなマヌケな事態を回避するために、 一定期間待機してしばらく客がいなかったら1階で待機、 みたいな戦略かなぁとか。
とかいうことを年中考えてるのは 思考力の訓練になるとか盲信しているけど、 それはどっちかというと ただの自分がやってることは悪くはないに違いないと とりあえず思ってしまう、プログラマによくありそうな やつかもしれないなぁとも思う。
なんにせよ自転車こいでる時とかは やめないと死ぬと思う。
(03:08)
l=65;*s; main(c,v){ s=v; for(puts(".text\n.global main\nmain:pushl %ebp;movl %esp,%ebp;movl %esp,%esi;subl $999,%esi"); c=getchar(),~c;){ c-62? c-60? c-43? c-45? c-44? c-46? c==91? printf("%cB:cmpl $0,(%%esi);je %cE;",l,l), *s++=l++ :c==93? v=*--s, printf("jmp %cB;%cE:\n",v,v) :0 :puts("pushl (%esi);call putchar") :puts("call getchar;movl %eax,(%esi)") :puts("decl (%esi)") :puts("incl (%esi)") :puts("decl %esi") :puts("incl %esi") ; } puts("leave;ret"); }
適当に書いておく。
(06:58)
http://web.kyoto-inet.or.jp/people/ray_fyk/diary/dr0010_3.htm#001026
via http://gusmachine.blog49.fc2.com/blog-entry-70.html
(01:46)
http://pc8.2ch.net/test/read.cgi/tech/1158259643/47
obj method(arg1, arg2)
みたいな時の obj と method が実質演算子になっているというのと、
つかふと思ったけど Io の 引数書かないでおいてほげほげーってヤツは あれまさに呼び出し側から見えない lazy だなと。
(03:37)
http://www.jmuk.org/d/?path=2006/09/18#d18t01
D の lazy ってメモ化とセットになってるような意味での 遅延評価をやらせるための機能なんだろかとふと。
(03:40)
すれば再帰関数をなんとかできるんじゃないか… とか思ったんだけどなんかダメな気がする。
class memo_t(T) { alias rettype!(T) RT; alias argtype!(T) AT; this(T t) { fp_ = t; } RT opCall(AT a) { if (a in memo_) return memo_[a]; return memo_[a] = fp_(a); } private: T fp_; RT[AT] memo_; } memo_t!(T) memo(T)(T t) { return new memo_t!(T)(t); } class memo_mt(T) { this(T t) { m_ = memo_memo_(t); } rettype!(T) opCall(argtype!(T) a) { return m_(a); } static memo_t!(memo_t!(T) (*) (T)) memo_memo_; static this() { memo_memo_ = memo(&memo!(T)); } memo_t!(T) m_; } memo_mt!(T) memo_m(T)(T t) { return new memo_mt!(T)(t); }
ちなみにテストはされてない。
(04:55)
なんかロクでもないじゃないか
(05:24)
print_string "Web"; ikunai () in web ikunai
と言いつつメモ
http://tabesugi.net/memo/cur/cur.html
つまりメモ化に限らず 再帰関数に別の関数をかますには いじりたい関数がすごいいい形をしてるか、 あるいは duck typing な感じの 型付けの無い言語じゃねえとなぁみたいな。
でも D はなんとかできる気はする。 あ、 functor を基底にすりゃいいのか。 つーか Boost.function がそれだっけ覚えてにええ。
(14:04)
http://dem.dyn-o-saur.com/ が最初から解いてくとか 始めてたので僕もやっている。 コードはほどほどに縮めつつ。
今1008まで。 1008縮める方針は想像つくけどめんどいなーとか。
1005はひどい事実 (http://d.hatena.ne.jp/Ozy/20060323#c1158512539) があるぽいから123Bとかになってるのな…
1007はトップみたいだ。 1001もCだとトップ。 どっちも適当だから誰かがやればすぐ追いつかれるだろうな。
(21:29)
がいるんだけど、前者の方がロマンがある。 でも実はそんなことはどうでもよくて、 なぜかというと、
が大多数だから
(22:41)
みたいな。
http://d.hatena.ne.jp/shinichiro_h/20051225#1135499616
ごくたまに存在を思い出して使うけど割に便利なこともあったりはする。
(23:55)
i@u ~/test/ruby> cat fun_cl.rb def hoge class C end end i@u ~/test/ruby> ruby fun_cl.rb fun_cl.rb:2: class definition in method body
(00:04)
心動くような。
k.inabaさんの説明 http://www.kmonos.net/wlog/65.html#_1549060908 で突然 unsafePerformIO が素晴らしいものに思えたとか。
Haskell はもう <- が。まぁ僕は
23:47 >i< いやHaskellはパズルゲームじゃないの
とか言ってるわけだが。
結構面白いゲームな気はしますけどね。 無限リストゲームとかポイントフリーゲームとか。
あ、
23:50 >i< Haskellはパーサを書く場合のみ実用品ですね
とも。
IOモナド一個も出てこなくて ghciで実行結果確認するようなコードが一番こう Haskellいいなぁと思うとかなんか。
(04:02)
let (>+++++++++[<++++++++>-]<.>+++++++[<++++>-]<+.+++++++..+++.[-]>++++++++[<++++>-]<.>+++++++++++[<+++++>-]<.>++++++++[<+++>-]<.+++.------.--------.[-]>++++++++[<++++>-]<+.[-]++++++++++.) = print_endline "Hello world!"
とか書こうとしたけどダメだった
(11:56)
実装したことないデータ構造があるのはよろしくないので実装しておいた。
h[10000]; s,t,n; main(i){ for(i=100;--i;) for(h[n=s++]=rand()%100+1;h[n]>h[n/2];n/=2) t=h[n/2],h[n/2]=h[n],h[n]=t; puts("before"); for(i=0;i<s;i++) printf("%d\n",h[i]); puts("after"); for(;s--;printf("%d\n",h[0])) for(h[n=0]=h[s]; i=n*2+(h[n*2]<h[n*2+1]),i<=s&&h[n]<h[i];n=i) t=h[i],h[i]=h[n],h[n]=t; }
ヒープソートってこんな感じだよね。
(15:01)
http://alohakun.blog7.fc2.com/blog-entry-459.html
普通にこういう話じゃないのかしら。
i@u ~/test/ocaml> cat maj.def DEFTSUHAI(0, ton, "東") DEFTSUHAI(1, nan, "南") DEFTSUHAI(2, sya, "西") DEFTSUHAI(3, pe, "北") DEFTSUHAI(4, haku, "白") DEFTSUHAI(5, hatsu, "撥") DEFTSUHAI(6, chun, "中") i@u ~/test/ocaml> cat cpp.ml #define DEFTSUHAI(n, e, s) let e = n;; #include "maj.def" #undef DEFTSUHAI #define DEFTSUHAI(n, e, s) s; let id2str = [| #include "maj.def" |];; #undef DEFTSUHAI let _ = print_endline id2str.(ton); print_endline id2str.(haku); i@u ~/test/ocaml> gcamlopt -pp "cpp -P" cpp.ml i@u ~/test/ocaml> ./a.out 東 白
(20:31)
_ 晩ごはん [抽象構文木上では識別子は文字列ですので、「^」で連結すると良いと思いますです。 >|| #load "camlp4o..]
_ 晩ごはん [あー、しまった。上のコード、CVS版のOCaml(Camlp4)じゃないと動かないです。]
_ shinh [うあーなんでもアリですねぇ。しかしどうもうちだと CVS 版 (3.10+dev8 (2006-06-26) と言わ..]
_ 晩ごはん [上のコード、コンパイルするには END;; の前後でファイル分割しないとです。すみません、すみません。ちゃんと書かか..]
_ shinh [あー分割しなきゃいけなかったのですね。よく考えればあたり前でした…そのアドバイスのおかげでとりあえずコンパイル&実行..]
i@u ~/test> ./hello\ world\! ~/test 18:21 ↑今カーソルがここにある
ここでリターンをポチっとなー。
i@u ~/tsst> ./hello\ world\! i@u ~/test> ~/test 18:22
いくら結果不定とはいえそんなとこに出力する子は始めて見たよ…
test が tsst になってるという話だが
(18:23)
http://japan.maxim-ic.com/products/microcontrollers/maxq.cfm
あーハーバードアーキテクチャなのかー。 なんかそらそうかチックだけどなるほどみたいな。
http://japan.maxim-ic.com/appnotes.cfm/appnote_number/3222
んでこれかー。
すげーすげー
すげー
(18:52)
メールアドレスと一緒に、スパム認定されないための キーワードを書いておく。 例えば hamaji _at_ nii.ac.jp (浜地を含まないメールは全てスパム扱いします) とかそんな感じとか。
(19:26)
http://www.creators.ne.jp/dictionary/extension/c.html
ほえー。 組み込み屋が使うようなものなのだろうか…
(19:32)
13^3 = 1^3*955 + 3^3*46 14^3 = 1^3*752 + 2^3*249 28^3 = 1^3*960 + 8^3*41
これ以降はなんか全然見つからん。
(03:47)
なんか書いてて楽しいんだよなぁ。 なんでやろ。 ある程度理由はわかるが。
でもデータ構造の作り方がイマイチよくわからん。 ていうか OO 以外のデータ構造の作り方できんというか。
んでなぜか麻雀の上がり判定など。 もっと面倒かと思ってたんだけど案外簡単なんだな。 syuntsu がひどいとか List.append は遅いらしいとか色々あるけど。
http://shinh.skr.jp/t/agari.ml
あとは役の判定と点数計算とシャンテン数計算かねー。
(02:04)
camlPervasives__$40_166 ってなんやねん。
time seconds seconds calls ms/call ms/call name 22.22 0.06 0.06 592016 0.00 0.00 camlPervasives__$40_166 18.52 0.11 0.05 1271000 0.00 0.00 compare_val 7.41 0.13 0.02 238000 0.00 0.00 camlAgari__v2p_93 7.41 0.15 0.02 135005 0.00 0.00 camlList__sort_295 7.41 0.17 0.02 581 0.03 0.03 caml_oldify_local_roots
(02:27)
(02:30)
(02:37)
agari_patterns というかその inner に一瞬型書いた記憶が。 というのはコンパイルエラーの意味がよくわからなかったので… たしか
let rec inner te headed (cur : pai list list) =
とかとあとどっかもう一箇所入れた気が。 なんとなく1つだけ型残ってるのが気持ち悪かった上に 一度コンパイル通っちゃったらもう別に型いらないよなぁ とか思って消しちゃったわけですが。
(12:46)
type yaku = TSUMO | RICHI | IPPATSU | PINHU | TANYAO | IPEKO | HAKU | HATSU
とか書き始めて思ったけど、 これはダメな気がする。
だって enum みたいなもんですと言ってるけど数値にできないような。
| TSUMO -> "門前清自摸和" | RICHI -> "立直"
みたいなのは型安全だろうがなんだろうがなんかイヤだ。
type tsuhai = E | S | W | N | H | T | C
もダメだなぁと思いながらやってたわけだが。
範囲型か。 Ada がえらいのか。
(13:05)
# type tsuhai = E | S | W | N | H | T | C;; type tsuhai = E | S | W | N | H | T | C # (Obj.magic T)-(Obj.magic E);; - : int = 5
こうしてもいいよね!
(13:36)
http://acm.pku.edu.cn/JudgeOnline/problemstatus?problem_id=1001&orderby=clen&language=1
多倍長処理とかめんどいね。
(18:27)
http://acm.pku.edu.cn/JudgeOnline/problemstatus?problem_id=1001&orderby=clen&language=1
(21:11)
前 | 2024年 11月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
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扱いであればあらゆる使用に関して文句は言いません。 なにかあれば下記メールアドレスへ。
_ wo [http://rakugake.ninja-x.jp/ こういうのはどうですかね。ノイズばっかりですが。]
_ shinh [おーサッパリしてて面白いですね。しかしやはり書いたようなやわらか出会い系効果が無いと流行らんような気がするのと、あと..]