A Study of C, Go, Rust, Julia, TypeScript, and Python Performance
This repo houses scripts and resources for a thorough examination of performance characteristics across programming languages including C, Go, Rust, Julia, TypeScript, and Python. Our primary aim is to analyze and compare execution speed and other relevant performance metrics in various scenarios.
-
benches: This directory contains source code benchmark files written in each of the studied programming languages. Each language has its file/subdirectory within
benches
. -
plots: The results obtained from the performance analysis are stored in this directory. It includes data files, charts, and reports summarizing the findings of the study.
-
Fork and clone the repository to your local machine:
git clone https://github.com/your-username/truster.git
-
Navigate to the repository directory:
cd truster
-
Explore the source code in the
benches
directory to understand the implementations in each programming language. -
Run the scripts measure performance metrics.
-
Analyze the results stored in the
plots
directory to understand the performance characteristics of each language.
After running the benchmarks and plotting the results, C fib algorithm had the fastest execution times, followed by Rust, Go, Julia, TypeScript, and Python.
Contributions to this study are welcome! If you have suggestions for improvements, additional benchmarks, or insights to share, feel free to open an issue or submit a pull request.
This repository is licensed under the MIT License. See the LICENSE file for more information.
Refer to this article for more info.
Disclaimer: This study aims to offer insights into the performance characteristics of various programming languages and should not be solely relied upon for language selection in real-world projects. The performance of a language may vary depending on numerous factors, such as hardware specifications, compiler optimizations, and specific use cases.