完全不科学的基准:几种编程语言(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解决方案,以查看                
            
                            
                            完全不科学的基准:几种编程语言(JavaScript,Kotlin,Rust,Swift,Nim,Python,Go,Haskell,D,C ++,Java,C#,Object Pascal,Ada,Lua,Ruby)的幼稚性能比较
                            预估大小:130个文件
                        
                        
                        
                                
                                main-naive.fsx
                                2KB
                            
                                                        
                                
                                main-naive.cr
                                2KB
                            
                                                        
                                
                                main-tuned.cr
                                2KB
                            
                                                        
                                
                                tree_naive_pointers.adb
                                2KB
                            
                                                        
                                
                                main_naive_pointers.adb
                                739B
                            
                                                        
                                
                                tree_naive_pointers.ads
                                966B
                            
                                                        
                                
                                main_full_gc.d
                                3KB
                            
                                                        
                                
                                main_naive_pointers.d
                                2KB
                            
                                                        
                                
                                main_tuned_no_rt.d
                                3KB
                            
                                                        
                                
                                main-naive-raw.cpp
                                3KB
                            
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                                                        
                            
                            
                                                        
                                        
                                    文件大小:96.54KB
                                
                                
                                
                            
评论区