完全不科学的基准:几种编程语言(JavaScript,Kotlin,Rust,Swift,Nim,Python,Go,Haske...

完全不科学的基准在此基准测试中,我们以几种经典(C ++,Java,Python)和炒作(JavaScript,Kotlin,Swift,Rust)编程语言实现了,并测试了它们在Linux,Mac OS和Windows(均在不同硬件上运行)的性能,因此不应在平台之间比较结果)。事实证明,这是内存密集型操作的良好基准,应该将内存管理实现推到极致。首先,我们尝试使用垃圾收集语言的规则,因此存在C ++和Rust的“引用计数”版本的实现,但随后我们仍想将结果与针对以下情况的惯用(又称为通用实践)实现进行比较C ++(“原始指针”)和Rust(“惯用语言”)。我必须说,大多数实现(C ++,Haskell和OCaml除外)都是通过大部分改编自Kotlin中算法的第一个实现的语法实现的。甚至被认为在测试语言中学习曲线最陡的Rust,也不需要任何“黑魔法”(该解决方案既不需要不安全的代码,也不需要使用生命周期的注释)。 C ++是单独实现的,因此它有一些捷径,因此它可能不是一个完全公平的比较(我将尝试实现“公平”的C ++解决方案以及“ C ++”之类的Rust解决方案,以查看
folder
完全不科学的基准:几种编程语言(JavaScript,Kotlin,Rust,Swift,Nim,Python,Go,Haskell,D,C ++,Java,C#,Object Pascal,Ada,Lua,Ruby)的幼稚性能比较 预估大小:130个文件
file
main-naive.fsx 2KB
file
main-naive.cr 2KB
file
main-tuned.cr 2KB
file
tree_naive_pointers.adb 2KB
file
main_naive_pointers.adb 739B
file
tree_naive_pointers.ads 966B
file
main_full_gc.d 3KB
file
main_naive_pointers.d 2KB
file
main_tuned_no_rt.d 3KB
file
main-naive-raw.cpp 3KB
file
main-naive-java-like.cpp 3KB
file
main-tuned-raw.cpp 3KB
file
main-naive-shared_ptr.cpp 3KB
file
main-tuned-unique_ptr.cpp 3KB
file
main-tuned-raw-with-pool.cpp 3KB
file
main.clj 2KB
file
Time.c 622B
file
unscientific.cabal 650B
file
Program.cs 3KB
file
Benchmark.csproj 206B
zip 文件大小:96.54KB