k-nucleotide First, here are half-a-dozen naive un-optimised single-thread #8 programs transliterated line-by-line literal style into different programming languages from the same original — source secs mem gz Go #8 61.38 558,379 752 PHP #8 79.70 649,593 571 Java #8 79.72 1,484,460 786 Node.js #8 107.03 736,874 678 Python 3 #8 234.08 642,265 525 Ruby #8 8 min 872,055 529 Here are the crowd sourced programs — × source secs mem gz cpu secs 1.0 C++g++ #2 2.02 162,349 1634 6.00 1.3 Rust #7 2.57 139,088 1585 8.01 1.4 Rust #6 2.79 165,048 1697 10.05 1.5 C# naot 3.12 160,424 2046 10.66 1.6 Rust #3 3.28 142,631 1549 9.69 1.8 C gcc 3.58 135,234 1512 11.88 1.9 F# #6 3.77 200,847 1913 11.90 1.9 Rust #5 3.88 143,155 1745 11.53 2.1 C++ g++ #3 4.19 171,622 1280 13.94 2.3 F# #5 4.74 213,168 1964 16.14 2.4 F# #2 4.75 212,804 1932 16.18 2.5 C# naot #6 5.02 158,015 1615 12.82 2.5 Chapel #4 5.02 197,980 1074 17.16 3.0 Chapel #3 5.99 190,841 1044 20.89 3.0 Rust #2 6.00 142,946 1350 15.54 3.1 Java naot 6.25 366,531 1821 20.44 3.1 Rust #9 6.33 141,099 1850 17.45 3.3 Rust #4 6.69 142,090 1755 17.99 3.4 Julia #6 6.82 524,403 965 14.36 3.5 C++ g++ 7.04 778,510 1452 14.94 3.8 Go #7 7.58 168,186 1613 28.88 3.9 Ada 2012 GNAT #2 7.82 269,390 4911 16.64 4.1 Go #3 8.20 150,413 1729 29.84 4.1 Go #6 8.30 150,442 1596 30.04 4.1 Java naot #3 8.31 363,635 1642 28.17 4.1 Java naot #6 8.35 397,414 1614 28.29 4.4 Lisp SBCL #6 8.79 536,506 2485 31.50 4.6 Go #4 9.27 144,650 1552 30.77 4.9 Julia #7 9.91 576,082 1379 24.88 5.3 Lisp SBCL 10.80 589,226 2431 33.59 5.6 F# #4 11.38 1,356,919 1522 29.39 6.4 F# #3 13.00 1,357,251 1124 28.94 6.4 C# naot #4 13.01 523,211 1725 45.59 7.8 Lisp SBCL #4 15.75 168,317 2292 15.73 7.8 Lisp SBCL #5 15.84 169,165 2323 15.82 8.1 Node.js #3 16.44 452,764 1817 45.22 9.2 Dart aot #3 18.55 229,372 1526 55.86 10 Rust 21.08 161,219 1086 64.57 11 Java naot #5 22.53 203,649 2225 51.37 12 Haskell GHC 24.42 435,479 1067 86.37 13 PHP #4 25.77 270,369 1290 89.30 17 Perl 35.15 1,286,410 659 127.55 18 Java naot #4 36.76 183,878 1887 36.84 19 Node.js #2 37.75 1,894,363 941 112.06 19 Perl #4 38.15 1,101,009 483 131.14 20 Node.js 39.56 1,365,475 1011 115.00 20 F# 39.58 932,966 713 92.45 22 Lisp SBCL #2 44.39 528,470 1291 44.37 22 Lisp SBCL #3 44.68 528,470 1297 44.65 23 Python 3 #3 46.55 674,185 1970 182.00 24 C# naot #7 48.00 593,142 1449 48.33 25 Perl #3 51.38 1,180,799 520 170.72 30 Go #8 61.38 558,379 752 62.02 31 Racket #4 61.86 991,015 893 61.77 33 Python 3 #9 66.67 392,184 614 235.89 38 Python 3 #4 76.67 523,751 663 233.07 39 PHP #8 79.70 649,593 571 79.66 42 C# naot #8 83.91 1,354,269 736 75.22 42 Java naot #8 85.57 1,782,706 786 86.86 43 Ruby 87.55 478,077 583 5 min 49 Lua #2 99.19 612,901 620 99.16 53 Node.js #8 107.03 736,874 678 107.78 56 Perl #2 112.16 678,937 365 112.11 65 Julia 132.16 1,696,596 703 133.09 83 Swift #8 167.99 904,810 658 167.36 96 Racket 194.59 2,679,632 554 194.49 112 Swift #7 225.53 649,970 607 225.47 116 Python 3 #8 234.08 642,265 525 233.99 116 Python 3 234.20 515,047 499 234.09 121 Ruby #7 243.79 399,401 792 244.17 130 Ruby #2 262.22 179,548 426 262.13 130 Ruby #3 263.08 207,466 546 263.47 244 Pharo Smalltalk #2 8 min 671,744 1105 8 min 257 Ruby #8 8 min 872,055 529 8 min 278 Pharo Smalltalk 9 min 671,412 1196 9 min 278 Dart aot 9 min 733,049 628 9 min 281 Dart aot #8 9 min 795,816 676 9 min Erlang #3 1h 29 min 1,306,636 945 1h 33 min Erlang 1h 31 min 4,056,982 944 1h 35 min Intel Fortran Empty Pharo Smalltalk #5 Empty Swift Empty * possible hand-written vector instructions or "unsafe" × source secs mem gz cpu secs 7.2 * Swift #2 14.46 273,932 1373 55.17 8.0 * OCaml #3 16.17 286,568 1839 44.28 12 * Haskell GHC #2 23.63 864,662 1492 91.36 13 * OCaml #2 27.23 363,422 1247 61.88 17 * Haskell GHC #3 35.01 557,658 2266 131.84 23 * OCaml 45.59 348,320 894 45.58 by secs by mem by gz by cpu secs