A Pragmatic Comparison of Eight Different Programming Languages

سال انتشار: 1403
نوع سند: مقاله کنفرانسی
زبان: انگلیسی
مشاهده: 74

فایل این مقاله در 11 صفحه با فرمت PDF قابل دریافت می باشد

استخراج به نرم افزارهای پژوهشی:

لینک ثابت به این مقاله:

شناسه ملی سند علمی:

CELCONF04_127

تاریخ نمایه سازی: 21 اسفند 1403

چکیده مقاله:

This paper investigates the performance of eight popular programming languages: Go, Kotlin, Objective-C, Perl, Rust, Python, Ruby, and Swift. To conduct this comparison, a base code implementing the matrix inversion algorithm using the Gauss-Jordan method was written in C++ and then translated into the eight aforementioned languages. The base code involves generating a random matrix, calculating its inverse, and measuring execution time and CPU usage. Additionally, the executable file size of each program was recorded to provide a comprehensive comparison. Based on our findings Go-lang and Rust are the fastest in execution, taking around ۲۳ seconds, while Kotlin, Ruby, Swift, and Perl are significantly slower, with some exceeding ۱۰۰۰ seconds. Python has the lowest CPU usage, showing high efficiency, followed by Go-lang and Rust. Perl, Ruby, and Swift use much more CPU, indicating inefficiency. In terms of executable file size, Rust is the most efficient, producing the smallest files, while Python's files are the largest, likely due to its runtime dependencies. We present the findings of this analysis to assist developers in selecting an appropriate programming language for their projects. Through a detailed analysis and comparison of these eight languages, readers can gain a better understanding of how their choices impact software performance and system efficiency. This study not only highlights the operational differences among the various languages but also identifies the advantages and disadvantages of each in different scenarios.

نویسندگان

Alireza Jomeiri

Faculty of Computer Engineering, Iranian eUniversity, Tehran

Alireza Hosseini Kashani

Faculty of Computer Engineering, Iranian eUniversity, Tehran

Ali Abbasi Bonyadabad

Faculty of Computer Engineering, Iranian eUniversity, Tehran

SaeedReza AlipourFard

Faculty of Computer Engineering, Iranian eUniversity, Tehran

Behzad Fattahi

Faculty of Computer Engineering, Iranian eUniversity, Tehran

Milad Memarian

Faculty of Computer Engineering, Iranian eUniversity, Tehran