このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
mae3xx_tips:test_fib_benchmark:start [2019/01/13 09:30] – [node.js] admin | mae3xx_tips:test_fib_benchmark:start [2023/06/23 07:46] (現在) – [Nim] admin | ||
---|---|---|---|
行 122: | 行 122: | ||
Ruby2.0 を追加で導入し、テストしてみました。 | Ruby2.0 を追加で導入し、テストしてみました。 | ||
- | <file ruby fib.rb> | + | <sxh ruby toolbar: |
def fib(n) | def fib(n) | ||
return n if (n < 2) | return n if (n < 2) | ||
行 129: | 行 129: | ||
puts fib(38) | puts fib(38) | ||
- | </file> | + | </sxh> |
実行結果はこのようになりました。 | 実行結果はこのようになりました。 | ||
行 161: | 行 161: | ||
==== PHP5 ==== | ==== PHP5 ==== | ||
- | <file php fib.php> | + | <sxh php toolbar: |
<?php | <?php | ||
function fib($n) { | function fib($n) { | ||
行 171: | 行 171: | ||
print " | print " | ||
?> | ?> | ||
- | </file> | + | </sxh> |
< | < | ||
行 193: | 行 193: | ||
コンパイルする言語なので、速いと思いますが一応。 | コンパイルする言語なので、速いと思いますが一応。 | ||
- | <file java fib.java> | + | <sxh java toolbar: |
public class fib { | public class fib { | ||
static int fib(int n) { | static int fib(int n) { | ||
行 204: | 行 204: | ||
} | } | ||
} | } | ||
- | </file> | + | </sxh> |
実行結果は下記のようになりました。 | 実行結果は下記のようになりました。 | ||
行 222: | 行 222: | ||
\\ | \\ | ||
- | ==== Boo ==== | + | ==== Java (OpenJDK 11) ==== |
- | 型付Python... !?\\ | + | OpenJDK 11 でも試してみます。 |
- | これは。。。 | + | |
- | + | ||
- | <file python fib.boo> | + | |
- | def fib(n as int) as int: | + | |
- | if n < 2: | + | |
- | return n | + | |
- | return fib(n - 2) + fib(n - 1) | + | |
- | + | ||
- | print fib(38) | + | |
- | </ | + | |
< | < | ||
- | user1@plum: | + | user1@plum: |
- | Boo Compiler version 0.9.5.1 (3.2.8 (Debian 3.2.8+dfsg-4ubuntu1)) | + | |
- | user1@plum: | + | |
39088169 | 39088169 | ||
- | real 0m2.954s | + | real 0m7.083s |
- | user 0m2.893s | + | user 0m2.139s |
- | sys 0m0.036s | + | sys 0m4.703s |
+ | user1@plum: | ||
+ | 39088169 | ||
+ | |||
+ | real 0m2.284s | ||
+ | user 0m2.157s | ||
+ | sys 0m0.114s | ||
</ | </ | ||
- | 速い! | + | < |
+ | user1@plum: | ||
+ | openjdk version "11.0.3" 2019-04-16 | ||
+ | OpenJDK Runtime Environment (build 11.0.3+7-Ubuntu-1ubuntu218.04.1) | ||
+ | OpenJDK Server VM (build 11.0.3+7-Ubuntu-1ubuntu218.04.1, | ||
+ | </ | ||
+ | |||
+ | 初回はキャッシュされてないので遅いですが、" | ||
\\ | \\ | ||
行 255: | 行 256: | ||
ネイティブコードにコンパイルする、C言語でも試してみます。 | ネイティブコードにコンパイルする、C言語でも試してみます。 | ||
- | <file C fib.c> | + | <sxh c toolbar: |
#include < | #include < | ||
行 267: | 行 268: | ||
return 0; | return 0; | ||
} | } | ||
- | </file> | + | </sxh> |
実行結果は下記のようになりました。 | 実行結果は下記のようになりました。 | ||
行 288: | 行 289: | ||
いま注目の Nim では? | いま注目の Nim では? | ||
- | <file nim fib.nim> | + | <codify |
proc fib(n: int): int = | proc fib(n: int): int = | ||
if n < 2: | if n < 2: | ||
行 296: | 行 297: | ||
echo(fib(38)) | echo(fib(38)) | ||
- | </file> | + | </codify> |
< | < | ||
行 308: | 行 309: | ||
C よりも速いとは。 | C よりも速いとは。 | ||
- | |||
{{: | {{: |