fasta First, here are half-a-dozen naive un-optimised single-thread #8 programs transliterated lowest-common-denominator style into different programming languages from the same original — source secs mem gz C gcc #8 8.06 19,776 839 Java #8 10.12 182,140 894 Node.js #8 18.42 61,784 742 PHP #8 49.44 19,960 760 Python 3 #8 156.78 19,780 738 Ruby yjit #8 188.45 21,428 700 Here are the crowd sourced programs — × source secs mem gz cpu secs cpu load 1.0 C++ g++ #9 0.78 19,352 2758 1.54 63% 1% 98% 37% 1.0 C gcc #3 0.78 19,772 1469 0.78 0% 2% 0% 98% 1.0 Chapel #6 0.79 19,620 1108 0.80 100% 2% 0% 0% 1.1 C gcc #7 0.82 19,772 2276 3.24 98% 100% 100% 98% 1.1 C++ g++ #7 0.87 19,760 2711 3.05 88% 88% 88% 88% 1.2 Rust #2 0.92 19,624 1910 3.40 95% 91% 92% 91% 1.2 Rust #5 0.93 19,624 1963 3.34 89% 89% 89% 93% 1.2 Rust #9 0.94 19,624 1952 3.22 85% 86% 89% 85% 1.2 C gcc #6 0.94 19,772 1936 2.78 98% 100% 97% 3% 1.2 Chapel #5 0.97 19,620 1391 3.53 99% 89% 89% 89% 1.4 C++ g++ #5 1.06 19,760 2345 3.66 86% 86% 87% 86% 1.4 C++ g++ #6 1.07 19,760 2326 4.01 94% 95% 94% 95% 1.4 F# .NET #3 1.12 64,832 1361 4.03 91% 94% 87% 89% 1.5 Java #6 1.16 49,848 2549 3.71 78% 91% 78% 73% 1.5 Julia #2 1.17 234,156 1094 1.25 0% 0% 89% 19% 1.6 C# .NET #9 1.21 29,432 1512 1.21 100% 0% 0% 2% 1.6 Java #5 1.24 49,640 2478 4.13 80% 87% 85% 83% 1.6 C gcc #5 1.24 19,616 1286 1.24 0% 3% 100% 0% 1.6 Go #2 1.27 19,808 1405 4.06 81% 83% 80% 78% 1.7 Intel Fortran #4 1.34 19,648 1355 1.34 2% 100% 0% 0% 1.8 F# .NET #4 1.40 65,484 1355 5.22 96% 92% 92% 95% 1.9 C# .NET #5 1.48 50,620 1702 5.45 91% 93% 89% 95% 1.9 Go #3 1.51 19,808 1362 4.09 81% 65% 45% 80% 2.2 C# .NET 1.70 36,636 2113 6.23 94% 94% 91% 89% 2.4 C++ g++ #2 1.84 19,760 1129 1.84 1% 0% 0% 100% 2.5 C++ g++ 1.92 19,760 1064 1.92 99% 0% 1% 0% 2.5 Rust #3 1.98 19,624 1235 1.98 1% 0% 99% 0% 3.3 Julia #5 2.57 250,416 957 2.66 0% 99% 0% 3% 3.3 Ada 2012 GNAT #5 2.60 19,772 2220 2.60 1% 0% 100% 0% 3.4 Julia #4 2.62 236,892 1053 2.72 0% 100% 0% 3% 3.4 C++ g++ #3 2.63 19,760 1311 2.63 0% 100% 1% 0% 3.4 Ada 2012 GNAT #2 2.64 19,772 2158 2.63 0% 0% 0% 100% 3.6 C gcc #2 2.77 19,772 1299 2.76 100% 0% 0% 0% 4.0 Dart #5 3.07 403,208 1489 4.90 1% 58% 4% 97% 4.2 Java #4 3.28 44,352 1528 3.40 99% 1% 0% 3% 4.3 C++ g++ #4 3.32 19,760 1291 3.32 0% 100% 0% 0% 4.3 OCaml #6 3.36 201,984 1194 3.36 0% 0% 100% 0% 4.5 Rust #6 3.46 123,848 959 3.46 0% 0% 100% 0% 4.5 Rust #4 3.47 123,848 944 3.46 3% 0% 97% 0% 4.8 C gcc 3.70 19,772 1213 3.70 0% 0% 0% 100% 4.8 Go 3.73 19,808 1055 3.74 0% 0% 0% 100% 5.2 Chapel #3 4.03 19,620 1219 4.04 99% 0% 0% 0% 5.4 Dart #3 4.17 490,192 1114 4.18 0% 98% 0% 1% 5.4 Dart #4 4.19 403,212 1307 4.30 0% 98% 1% 2% 5.5 Rust 4.25 19,624 1240 4.25 0% 100% 0% 0% 5.7 Dart 4.44 19,620 1407 4.44 0% 0% 0% 99% 5.7 Java #2 4.45 48,896 1259 4.60 3% 0% 0% 99% 5.8 Lisp SBCL #6 4.48 19,680 1763 4.48 0% 0% 0% 100% 6.1 OCaml #3 4.71 19,676 1075 4.71 100% 0% 0% 0% 6.8 Lisp SBCL #3 5.24 22,912 1592 5.24 0% 0% 0% 100% 7.0 C# .NET #8 5.40 32,864 904 5.42 2% 98% 1% 0% 7.0 Haskell GHC 5.45 19,804 975 5.54 47% 16% 2% 36% 7.2 Free Pascal #6 5.60 19,636 1196 5.60 100% 0% 0% 1% 7.3 Free Pascal #5 5.65 19,636 1225 5.65 0% 0% 100% 0% 7.5 Intel Fortran 5.83 19,648 1193 5.83 0% 100% 0% 0% 8.0 Intel Fortran #3 6.19 19,648 1217 6.19 0% 100% 0% 0% 8.5 Haskell GHC #2 6.60 440,192 1323 18.63 85% 74% 66% 63% 8.6 Haskell GHC #3 6.68 619,208 1091 6.79 0% 9% 1% 90% 8.9 Ada 2012 GNAT 6.93 19,772 1381 6.92 100% 0% 0% 0% 10 C gcc #8 8.06 19,776 839 8.06 0% 100% 0% 0% 11 Lisp SBCL #2 8.85 23,296 1628 8.84 0% 100% 0% 0% 12 Lisp SBCL 9.02 26,112 1430 9.02 0% 99% 0% 0% 13 Java #8 10.12 182,140 894 10.66 86% 6% 3% 8% 15 Go #8 11.46 19,820 880 11.55 20% 27% 31% 22% 15 Julia #3 11.61 234,416 901 11.70 67% 1% 33% 0% 19 Dart #2 14.46 19,620 1075 14.46 70% 17% 0% 12% 24 Node.js #8 18.42 61,784 742 18.61 76% 23% 0% 0% 24 Racket 18.49 75,628 1071 18.48 83% 17% 0% 0% 24 Swift #8 18.86 19,972 828 18.86 53% 0% 0% 46% 25 Erlang #2 19.29 55,904 1170 21.10 3% 99% 1% 4% 31 Lua #3 24.08 19,652 1065 24.08 0% 100% 0% 0% 31 Lua #2 24.15 19,652 1065 24.14 0% 0% 0% 100% 36 Python 3 #5 27.86 827,284 1951 53.94 73% 48% 45% 27% 39 VW Smalltalk 30.08 55,168 1542 30.07 0% 0% 100% 0% 40 PHP #3 31.09 19,768 1065 31.08 55% 45% 0% 0% 41 Ruby yjit #6 31.90 120,832 1097 31.90 83% 0% 17% 0% 46 Dart #8 36.03 19,780 824 36.09 56% 29% 13% 0% 49 Node.js 38.40 58,880 815 38.77 35% 50% 0% 14% 50 Python 3 #2 39.00 19,312 1126 39.00 95% 0% 0% 4% 50 Python 3 #3 39.12 19,312 1007 39.12 92% 0% 0% 8% 57 Ruby yjit #3 43.90 120,576 1035 43.90 100% 0% 0% 0% 61 PHP #2 47.15 19,768 1054 47.14 64% 35% 0% 0% 64 PHP #8 49.44 19,960 760 49.43 79% 21% 0% 0% 74 Python 3 57.21 19,312 823 57.20 0% 100% 0% 0% 77 Perl 60.07 55,296 875 60.07 100% 0% 0% 0% 108 Erlang 84.14 55,008 1045 170.84 76% 69% 32% 25% 117 Ruby yjit #5 90.76 23,168 1000 90.75 94% 0% 5% 0% 123 Ruby yjit #4 95.10 266,624 864 95.09 0% 100% 0% 0% 137 Ruby yjit #2 106.06 147,176 747 106.05 98% 0% 1% 0% 163 Perl #4 126.60 19,684 969 125.89 0% 0% 0% 99% 202 Python 3 #8 156.78 19,780 738 156.35 39% 45% 0% 15% 243 Ruby yjit #8 188.45 21,428 700 187.83 54% 45% 0% 0% 245 Perl #2 189.89 19,684 926 189.24 0% 99% 0% 0% 417 Matz's Ruby #4 5 min 275,584 864 5 min 97% 2% 0% 0% 470 Matz's Ruby #5 6 min 19,688 1000 6 min 99% 0% 0% 0% 553 Matz's Ruby #2 7 min 248,360 747 7 min 100% 0% 0% 0% Matz's Ruby #8 13 min 19,780 700 13 min 53% 46% 0% 0% C gcc #4 Make Error Matz's Ruby #3 Failed Matz's Ruby #6 Failed * possible hand-written vector instructions | "unsafe" × source secs mem gz cpu secs cpu load 1.0 * Rust #7 0.77 19,624 2533 1.54 100% 39% 62% 1% 1.1 * Haskell GHC #6 0.86 19,936 1885 2.82 82% 82% 83% 83% 1.1 * Haskell GHC #4 0.86 42,752 2017 2.87 83% 83% 83% 83% 1.2 * Haskell GHC #5 0.93 19,808 2004 2.93 81% 78% 78% 78% 2.4 * Julia #7 1.87 348,656 1189 5.33 65% 94% 61% 65% 2.7 * Swift #2 2.11 19,440 1952 3.76 22% 80% 74% 4% 2.7 * Julia #6 2.12 353,084 1213 4.86 49% 63% 53% 65% 2.8 * Swift #3 2.18 31,248 2097 5.40 74% 62% 74% 38% 3.3 * Node.js #5 2.52 112,392 2050 7.08 48% 74% 78% 84% 6.6 * Swift 5.15 19,440 1533 5.14 0% 0% 0% 100% 10 * Racket #3 8.10 76,680 1291 8.09 0% 100% 0% 0% by secs by mem by gz by cpu secs