Method of Programming Languages Analysis (original) (raw)
Related papers
Method of Paradigmatic Analysis of Programming Languages
System Informatics, 2020
The purpose of the article is to describe the method of comparison of programming languages, convenient for assessing the expressive power of languages and the complexity of the programming systems. The method is adapted to substantiate practical, objective criteria of program decomposition, which can be considered as an approach to solving the problem of factorization of very complicated definitions of programming languages and their support systems. In addition, the article presents the results of the analysis of the most well-known programming paradigms and outlines an approach to navigation in the modern expanding space of programming languages, based on the classification of paradigms on the peculiarities of problem statements and semantic characteristics of programming languages and systems with an emphasis on the criteria for the quality of programs and priorities in decision-making in their implementation. The concept of "programming paradigm" is manifested as the ...
The structural analysis of programming languages
1981
: A language's structures are some of its most important characteristics. These include the data structures -- those mechanisms that the language provides for organizing elementary data values. They also include the control structures, which organize the control flow. Less obviously, they include the same structures, which partition and organize the name space. Languages can be compared relative to their structures in the data, control, and name domains. This report describes a syntax-independent method of representing the structures of a language which facilitates visual complexity comparisons and is amenable to measurement. The data, control, and name structures of a number of languages are analyzed, including Pascal, LISP, Algol-60, Algol-68, the lambda calculus, FORTRAN, and Basic. (Author)
Comparative Studies of Six Programming Languages
ArXiv, 2015
Comparison of programming languages is a common topic of discussion among software engineers. Multiple programming languages are designed, specified, and implemented every year in order to keep up with the changing programming paradigms, hardware evolution, etc. In this paper we present a comparative study between six programming languages: C++, PHP, C#, Java, Python, VB ; These languages are compared under the characteristics of reusability, reliability, portability, availability of compilers and tools, readability, efficiency, familiarity and expressiveness.
2010
There are many programming languages in the world today.Each language has their advantage and disavantage. In this paper, we will discuss ten programming languages: C++, C#, Java, Groovy, JavaScript, PHP, Schalar, Scheme, Haskell and AspectJ. We summarize and compare these ten languages on ten different criterion. For example, Default more secure programming practices, Web applications development, OO-based abstraction and etc. At the end, we will give our conclusion that which languages are suitable and which are not for using in some cases. We will also provide evidence and our analysis on why some language are better than other or have advantages over the other on some criterion. we present our analysis of the criteria in Section 2 for pair-wise comparison of the assigned languages. We then move on to macro analysis and synthesis of our results in a consolidated form in Section 3. We conclude and outline our future work plans in Section 4 and Section 4.1 respectively.
Performance Based Evaluation of Programming Languages
IJSER, 2019
In the computer science curriculum, programming language holds a central importance as it enables the programmers to develop software more effectively. Every year, multiple programming languages are proposed, designed and implemented to keep up with the changing programming paradigms, hardware evolution, etc. The current article presents a comparative study of three programming languages C, Java, and PHP. Different aspects of the languages were studied in order to know their structure. Additionally, t he results received from all three languages were implemented on a medical theory to analyze the performance.
Performance Based Evoluation of Programming Languages
2019
In the computer science curriculum, programming language holds a central importance as it enables the programmers to develop software more effectively. Every year, multiple programming languages are proposed, designed and implemented to keep up with the changing programming paradigms, hardware evolution, etc. The current article presents a comparative study of three programming languages C, Java, and PHP. Different aspects of the languages were studied in order to know their structure. Additionally, the results received from all three languages were implemented on a medical theory to analyze the performance.
A comparative study of the lexicographical complexity of Java, Python and C languages based on program characteristics, 2023
In software engineering, software complexity measures how complicated it is to design, test, maintain, and comprehend a system or a program. Metrics have been appreciated over time as a measure of various attributes of software products. Some of the most well-known languages for scientific, object-oriented, and imperative programming are Python, Java, and C, respectively. However, it is not easy to distinguish the structural complexity of these programming languages and the existing studies have overlooked this issue. This study, therefore, uses a technique based on Halstead Software Science to conduct a comparative investigation to evaluate the lexicographical complexity of sequence, selection, and looping program structures in object-oriented, scientific, and imperative programming languages. Halstead Complexity Metrics were implemented utilizing sequence, selection, and loop control structures in Java, C, and Python to accomplish the study's goal. When subjected to the Halstead software science comprising of nine measurement criteria, the findings of the experiment demonstrated that in sequence and Loops program structures C language has the highest lexicographical complexity followed by Java, while in Selection program structures Java is more slightly complex than C. Python on the other hand, had the least lexicographical complexity across all three essential program structures-sequence, selection, and loops during the comparative study, therefore, it is the most appropriate programming language among the three that are being studied here in terms of program complexity. Using the results of this study, we intend to use effort prediction models in the future to estimate the programming effort. We also intend to do additional experiments with the same program structures using larger program samples in the future. A replication of the study using different programming languages is also suggested.
Performance Evaluation of Programming Languages
—In the world of computer, languages used for the purpose of communication are known as programming languages. These languages are used to do the interaction between various other parts of computer and other machines. There is the long list of such languages which are widely used in this field, some of them are existing from long time while some are developed and were used for certain period of time and right now some of them are out of use. Here in this paper we basically did the comparison between array programming language and compiled programming languages besides this we also discussed about the concurrent, imperative and declarative languages. We further classified the imperative and declarative languages. We saw the dependency of languages on memory as we took the program of factorial in various languages as a result some of the programming languages used here terminated and provided the wrong output on giving the large value as input. As in case of factorial, if we have to perform the computation of nth number then we have to do the computation of (n-1)th term first which takes large memory size in static memory allocation while it can be easily done through dynamic allocation of memory as it does the use of runtime memory allocation concept. So, as we increase the input values most of the languages fails and result to lead wrong output.
Comparative Analysis on the Evaluation of the Complexity of C, C++, Java, PHP and Python Programming Languages based on Halstead Software Science, 2023
Quality plays center stage in any software development industry. Software metrics have proven over time as the best measure to be used to assess and assure the software developers of the quality of their products. Halstead software science is an essential technique for measuring software complexity at the source code. In this study, we present a comparative study using this technique to help the developer by evaluating the code complexity by considering the structural composition of a programming language. In this study, an experiment was done using Halstead metrics to evaluate the complexity of PHP, C++, Java, C and Python programming languages. This study demonstrate that Halstead gives a better approach in evaluating the level of complexity of programming languages at source code level. The results showed that C++ and Java are the most complex programming languages while Python was the least complex warranting less of the programmer's time and effort when developing a similar project. These findings can be used by the software developers to make decisions on the programming language to adopt when they want to come up with less complex software of high quality. In the future, the researchers will advance the study to incorporate other software paradigms and also modify the technique to capture also inter and intra-modular structural complexity of the various programming languages.
Extensible Model for Comparison of Expressiveness of Object-Oriented Programming Languages
Applied Computer Systems, 2016
We consider the problem of comparison of programming languages with respect to their ability to express programmers’ ideas. Our assumption is that the way of programmers’ thinking is reflected in languages used to describe software systems and programs (modelling languages, type theory, pattern languages). We have developed a list of criteria based on these languages and applied it to comparison of a number of widely used programming languages. The obtained result may be used to select a language for a particular task and choose evolution directions of programming languages.