A Quick Comparison of Programming Languages [1/10]
A Quick Comparison of Programming Languages
Before starting with an in-depth programming language comparison, one important issue needs to be discussed first.
It is about the choice of the first programming language.
Contrary to what novice programmers think, the choice of the first programming language is not of high importance for learning computer programming.
The reason why the language itself is of lesser importance is that all popular programming languages have very similar basic features. Therefore, learning one language is very similar to learning another one. After a person has acquired the basics of programming in one language, it becomes very easy to switch to another language.
It is much more important to find and follow a high-quality programming tutorial. A high-quality tutorial makes learning computer programming much easier.
The ZedLX tutorial has been specifically designed for young adults. It employs computer graphics from the start, and an easy-to-use learning environment.
2. Comparison by Syntax
Let's compare a few popular programming languages, like C, C++, Java, C#, Javascript, PHP, and Python to ZedLX.
No language on this list besides ZedLX has been designed
with considerations for programming beginners.
[Run the program by clicking the 'Run' button]
The most superficial comparison between languages can be made on a syntactic level. The syntax of a programming language specifies how various language constructs are written.
C-style syntax is very popular among languages and programmers. Almost all languages in the list: C, C++, Java, C#, Javascript, PHP use a C-language alike free-form syntax. This also includes ZedLX, which is a free-form programming language.
Python is the only language on the list that uses somewhat different, but still similar syntax. Python does not have a free-form syntax.
While ZedLX is more similar to the rest of the programming languages, its syntax is not entirely in C-style. Instead, it leans somewhat towards the Python-style syntax.
3. Similarity of Syntax
Since syntax of all popular programming languages in existence
shows only small differences, most people usually don't experience a lot
of syntactic issues when switching between languages.
[Run the program by clicking the 'Run' button]
Syntax of a programming language is easy to learn. The hard thing to learn is how to effectively utilize all the common programming language features. All the mentioned languages have the same basic features: expressions, loops, variables, functions, types, etc. The advanced features are also very similar.
4. Level of Abstraction
The syntax of a programming language is mostly a superficial issue. On a deeper level, we can divide languages by the level of abstraction.
The C programming language has a low level of abstraction.
The C++ programming language has a mix of low level and high-level features.
All other programming languages in this comparison: Java, C#, Javascript, PHP and Python are languages exhibiting a high level of abstraction.
ZedLX is a high-level language. Its level of abstraction is even higher than in the other languages. This is by design, as the authors of the language opine that learning computer programming should start at the highest possible level of abstraction. Some old-school programmers might disagree with such opinions.
5. Static vs Dynamic Type System
A very important distinction among popular programming languages is in type systems.
The languages C, C++, Java and C# use a static type system.
The languages Javascript, PHP and Python use a dynamic type system.
ZedLX uses a static type system.
It helps beginners to detect errors in their programs.
[See the error by clicking the 'Check' button]
6. Argument Passing
For this comparison, we will examine another important distinction among popular programming languages: argument passing convention.
The languages C and C++ use call-by-value.
The languages Java, C#, Javascript, PHP and Python use a mixed convention. Primitive types are passed by value, while other types are passed by object-sharing.
ZedLX always uses call-by-value, therefore
it is more similar to C and C++.
Call-by-value is more beginner-friendly than object-sharing.
[Run the program by clicking the 'Run' button]
In C and C++ the situation is actually a bit more complicated, but let's not get into too many details.
7. Differences Between C and C++
People always wonder what is the difference between C and C++.
C language is much older than C++. The C++ programming language can be thought of as created by adding many useful features to the C language.
Therefore, it is easy to write a C program that is also a valid C++ program. On the opposite, if you were writing a C++ program, the moment you use any C++ feature, the program becomes an invalid C program.
All the added features make C++ a much bigger language than C. Of course, the added features are quite useful, so most programmers prefer to have them available. The number of features in C++ is so big that many of them are commonly unused. In fact, there are very few people who can say that they know the entire C++ language well. The C++ language is so big.
As the added features make the language more elegant, it is much easier to write programs in C++ than in C. It is also much easier to learn programming basics in C++ than in C.
For complete beginners, the C programming language is very hard to master. The language is both very small and hard to learn at the same time, because it is missing many features that make programming easier.
The C language is such a small language that a person can learn the entire language and still be a bad programmer.
8. Learning Computer Programming
Learning computer programming is not the same as learning a programming language. Learning a particular programming language is of lesser importance.
The important thing to learn is how to effectively use various features of programming languages to create programs that have the functionality you have imagined.
Learning computer programming is a long and never-ending process. The more you learn, the better programs you can create.
ZedLX is designed as a programming language for kids and other beginners.
It is a programming language for learning computer programming,
with interactive and colorful graphics.
[Run the program by clicking on the 'Run' button]
ZedLX helps kids and adults to learn programming with very simple, clean and beginner-friendly syntax, error messages designed for beginners, well designed type system, and a lot more.
A person who has mastered ZedLX will have no trouble switching to any other mentioned programming language.
On a superficial level, it can immediately be noticed that ZedLX has built-in computer graphics functions. All other mentioned languages don't have this feature. To use computer graphics in other languages, a suitable library needs to be included and the library initialization procedure must be performed. This task is usually too complex for total beginners, so ZedLX does it all automatically.
The built-in computer graphics is less important for its own sake, but it can be very useful as a visualization aid for other more important programming concepts.
Without computer graphics, too many chapters with nothing else but text and number processing would be required. That sounds boring, doesn't it?
Computer graphics is fun, so why not use it. ZedLX enables using computer graphics from the first lesson onward. Kids love ZedLX.
10. Other Differences
There are, of course, many other differences between programming languages, but this short chapter covers only the most important ones.
The most important thing to remember is that you can start to learn programming in any of the mentioned programming languages.
Of all the mentioned programming languages, ZedLX should be the easiest one to learn for programming beginners.
Click on the 'Articles' button at the top to select another article. We also suggest taking a peak into our main 'Gallery' of programs, and taking a look into 'Overview' of our main programming tutorial for beginners. Have fun!
<< F2:Prev - - F4:Next >>