There are different of ways to solve the same problem, and programming languages are abstractions to these different strategies.
This means that different programming languages are optimized for different problem domains. So if there would be only one programming language, the code produced would be a lot worse that it is now with the option to use the best tool for each job.
Or in other words: We have many different programming languages for the same reason we have many different tools in our
tool-box. If you think you can solve any problem with a single tool, try to bang a nail into a wall with a chain saw.
For example, a language like C can produce very fast code, but it takes comparable long to express your solution in C and the costs for maintainance become high.
But then, a language like Ruby is so abstract that it is well suited for creating large code systems fast. But if you write a device driver or an operating system in Ruby, it will be unusable slow.
As another example, C++ is a very popular language in performance intensive desktop programming, but it is rarely used on web servers or customized business software.
Also, languages influence the creation of other languages. For example, Ruby is influenced by languages like Smalltalk, Python or CLU. Smalltalk was influenced by Lisp. So you could say that Ruby is somehow just a newer version of Lisp. And if you think of it that way, there are not that many languages, but just many dialects of Lisp and Fortran.
2006-08-22 09:17:47
·
answer #1
·
answered by Ben Ferrari 3
·
1⤊
0⤋
Every language has a specific purpose. From your list:
C++: C++ is a fast and versitile language. It's my personal favoriate. This is what Windows, Microsoft Office, and pretty much all the applications you use on a day-to-day basis are written in. It's probably the most difficult of the languages you listed there, but it has huge benefits.
VB: VB is part of a new class of "modern" languages that are easier to use and include garbage collection (ie, they clean up after you without you having to think about it). My preference in this area is C#, but VB is a pretty good language as well. Eventually you'll run into situations where VB is getting in the way (ie, it's trying to make something easier for you, and you have to work around the 'help' it's trying to give you). Still, you can do things using VB, C#, etc. with a few lines of code that would take pages and pages in C++, sometimes. (Provided, of course, you're doing something the language designers expected you to do!)
Javascript is a stripped-down version of Java that is pretty much exclusive to client-side web scripting. That is, it's scripting that runs on your computer after a web page is downloaded. This is normally used to do things like form validation and pop-out menus.
SQL is designed to deal with relational databases. It's pretty much the only way people query databases these days, although there are alternative methods. SQL is declarative rather than procedural (That is, you don't tell the database how to get your data, just what data you need.) Depending on how you draw the lines, this makes SQL the only successful 4th-generation language, the class of languages that people in the 80's wrongly thought was the future of computer programming. Others are 3rd generation.
Each language has good aspects and bad. You choose the language that fits the problem best (with the obvious caveat that you pick a language you know or wish to learn!).
There are many, many languages, and more pop up all the time. I've written several small languages myself for specific needs associated with programs of my own (such as internal configuration scripting and installation support).
The good news is, once you learn one, you can move on to other languages very easily. If you're looking for one to learn, I'd highly suggest either C++ or C#. Stay away from VB. If you learn C# you can downgrade to VB easily later, but VB is not as structured or object-oriented as many other languages.
2006-08-22 07:52:06
·
answer #2
·
answered by Mantis 6
·
0⤊
0⤋
Each language fills a different need. People who want to get close to the processor will use assembly or C for maximum speed. People who want their application done fast will use a higher level language such as Visual Basic. JavaScript is designed specifically for client-side scripting. And of course some langs get made and never used.
2006-08-22 07:41:17
·
answer #3
·
answered by jacinablackbox 4
·
0⤊
0⤋
its a long story...they started with machine language...built assembly language...then high level language...advancements created better languages...eg from ADA to B to C to C++ to visual C++...need for system progs. deleveloped C...database Oracle...graphical interface Visual C++...u understand...
2006-08-22 07:53:06
·
answer #4
·
answered by Deep D 2
·
0⤊
0⤋