再帰つーか、末尾再帰な。schemeは末尾再帰を最適化する典型例だ罠
953 :
仕様書無しさん :2008/05/14(水) 20:29:40
fib って末尾再帰ってやつなの?
じゃ、みなさん再帰なしバージョンを・・
955 :
仕様書無しさん :2008/05/14(水) 20:34:46
俺もだけどなぜか盛り上がるねw
956 :
仕様書無しさん :2008/05/14(水) 20:42:02
奥氏は実績ですげぇなって思ってたけど、他にもすごい人いるんだな。
誰?>すごい人
再帰なしmoshまだー
960 :
仕様書無しさん :2008/05/14(水) 20:51:10
再起なしfibも書けないスレ住人
コンパイル時計算なので0秒 #include <iostream> template <int N> struct Fib{ enum{ value = Fib<N - 1>::value + Fib<N - 2>::value }; }; template <> struct Fib<2>{ enum{ value = 1 }; }; template <> struct Fib<1>{ public: enum{ value = 1 }; }; int main(){ std::cout << Fib<32>::value << std::endl; }
これはひどいw
?解説キボンヌ
>>954 % cat fib2.py
def fib(n):
a = 1; b = 0
for i in range(1, n):
c = b; b = a; a += c
return a
print "fib(32)=%d" % fib(32)
% time python fib2.py
fib(32)=2178309
python fib2.py 0.06s user 0.03s system 120% cpu 0.078 total
966 :
仕様書無しさん :2008/05/14(水) 21:00:26
967 :
た :2008/05/14(水) 21:02:16
おっ、西尾さん登場!
my %fib_cache = (); sub fib { my $n = @_[0]; if (defined($fib_cache{$n})) { $fib_cache{$n}; } else { if ($n <= 2) { 1; } else { $fib_cache{$n} = fib($n - 1) + fib($n - 2); } } } print fib(32); キャッシュすればいいだろ。
>>968 $ time perl fib2.pl
2178309
real 0m0.029s
user 0m0.000s
sys 0m0.015s
970 :
仕様書無しさん :2008/05/14(水) 21:04:56
言語の性能のベンチマークでキャッシュ(ニヤニヤ
% cat fib2.pl sub fib { $n = shift; $a = 1; for ($i = 1; $i < $n; $i++) { $c = $b; $b = $a; $a += $c; } return $a; } printf("fib(32)=%d\n", fib(32)); % time perl fib2.pl fib(32)=2178309 perl fib2.pl 0.03s user 0.01s system 147% cpu 0.031 total
>>962 ワロタ。C++が言語の頂点にいる理由が時々わかる瞬間。
メインストリームの言語が一番マニアックってのもどうかと思うけど。
これ以上Schemeなんていらないから template使いまくってもコンパイルの遅くならないC++が欲しい 買い物行って帰ってきてまだコンパイル終わらん
Core2Duo搭載のPCに買い替えろよ
975 :
仕様書無しさん :2008/05/14(水) 21:12:49
C++最強はまあ正しい。 問題はLLの中で速いってことか?
C++なんか使うからいけないんだよ
C++はバカであり、バカな言語で賢いシステムを書くことはできない。 言語は世界を形作る。バカな言語はバカな世界を作る。
いつまでi486DXなんだよ
>>973 PCHとStaticLibをうまく使うと実はほとんど困らないことになるよ
そろそろ次スレ立てろよ
ひげぽんはcpanのScheme版を作り Schemeをメジャー言語にひきあげイノベーションを起こす
いきなり962を見せられたら977の反応はある意味正しい。 メタテンプレートの世界はまだ実用性が不透明
>>948 moshの使い方わかんね
phpで勘弁して
% cat fib.php
<?
function fib($n) {
if ($n <= 2) return 1;
return fib($n - 1) + fib($n - 2);
}
printf("fib(32)=%d\n", fib(32));
?>
% time php fib.php
fib(32)=2178309
php fib.php 6.22s user 0.01s system 99% cpu 6.234 total
おせーw
>>983 お前の糞コードの影響で
スレも止まったジャねーかボケ
ASがSchemeの略だとかw FlashがActionScriptじゃなくてScheme採用してたら 一夜にしてSilverlightに取って代わられるわなw
次スレたてたら、ひげぽんスレのときのように過疎りだすんじゃね
ちょっとでもリロード怠ると 一日50レス以上も更新があるのだから それはないだろう。 でもウォッチするほどの価値のある企業なのかここは
microsoftとgoogleと並んで取り上げられる企業だぞ
禿ラボじゃなくてひげぽんとかa******gをヲチしているんだよ
あのdankogaiが自宅を差し出す程の連中だからな
これからの時代はひげさまが 作っていく会社だから
趣味で作ってたんじゃないのか まあ基盤となる技術がないのに よく明らかに流行らないと わかっていることやらせてるよな
記念パピコ
↓次スレよろ
995 :
仕様書無しさん :2008/05/14(水) 22:43:11
奥さま、ひげさま、あまさま が御三家ということでよろしいか?
1000だったら禿ラボ廃業
999 :
仕様書無しさん :2008/05/14(水) 22:46:06
1000 :
仕様書無しさん :2008/05/14(水) 22:46:17
西尾様は神
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。