English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

Which you could use to do everything rather than have lots of them?

And if it is possible is it ever likely to happen?

2006-11-13 10:47:55 · 13 answers · asked by richy 2 in Computers & Internet Programming & Design

13 answers

A computer language is defined by the the CPU instruction set. This is processed by the CPU as a set of binary values. Represented in assembler it gives you commands such as move.l #100, D0 or ld a,#5.
Each family of CPU's e.g. 68k, Z80, ARM, PIC, Intel Pentium have their own instruction set. So unless each manufacturer agreed to impliment a fixed set of instructions into their CPU's then NO there will allways be different computer languages.

As for Programming languages, over the years they have developed from writing code in machine language using numbers to assembler to languages such as Lisp, Basic, Forth, Fortran, Eifel, Cobol, C, C++, C.net etc, etc.
Each one has been developed to make programming certain tasks easier but due to it's capabilities C became the most popular as you could write code to do what all the others do in C but it would be very difficult or even impossible to do the opposite. When you consider that compilers/interpriters for the other languages have at some point been writen in C then you can understand this.
Now, as the science of programming progressed they needed a language to follow, so C++ was born. This is bascally C but built around an Object Oriented Programming architecture.
Now with the internet and possible server based applications, ,NET was born. This is an extension to existing languages such as Visual Basic and C++ to make programming in a networking environment easier. It is also Microsofts way to move people to server based applications. I personally don't think that server based apps is they way to go. The internet is not that reliable at the moment and having pay per use! well what happens if I can't afford to use Word any more? Will I lose access to all my word docs ? anyway, back to this.

.NET is also working to bring different languages together such that you can write some of the program in VisualBasic.NET, some in Java.NET and some in C++.NET.

So having just a single programming language that is suitable to do all the things we want is a little way off, BUT as it would be possible to use C or C++ for this purpose then maybe it is just a case of everyone learning C or C++ and none of the others.

A lot of them are old and their use is dropping, how many Lisp programming jobs have you heard of recently ?

Also, unfortunately for real hardcore programmers, we are moving towards point and click programming. This started with visual basic, visual C++ and especially Borland C++ Builder where it is possible to write a complete app just by drwaing boxes on the screen. Soon everyone will be able to produce any program they want without writing a single line or code.

The END

2006-11-13 21:59:26 · answer #1 · answered by Anonymous · 0 0

Not really. Well, it's highly unlikely.

Binary isn't a language, it's just a numbering system. It's no more a language than logic gates are. Yes, instructions are passed through things in it, but it's more the voice than the language. If it is a language, it's certainly not a programming language, since no-one writes code in it. Besides, it's different for every architecture.

Machine code isn't standard - if it were then Windows would have run on PPC macs, for example. There are so many chips with different, evolving architectures that the closest we're ever likely to get to a 'single standard language' is probably the 80386 instruction set, though that's only because it's in practically every PC - few embedded devices use it, and i don't think any supercomputers do, either.

As for a standard higher-level language, that's never going to happen. It's easier to program in a very high level language (Visual Basic, PHP etc.), and that code is potentially far more portable, but it's far more powerful to do it with a very low level language (2GL), and the mid-level languages (C/C++, Java) offer a good compromise between the two. There's never likely to be even a universally ideal, let alone standard, level of programming, let alone language.

2006-11-13 20:48:49 · answer #2 · answered by lordandmaker 3 · 1 1

Yes, it is binary. Writing in high level languages such as C get compiled to assembly language which gets assembled to binary. The only reason you use a higher level language is that it is easier for us humans to understand what's going on. Different processors have different instruction encoding, so low level languages (such as asembly language) are different for every processor. It might be possible to come up with a 'perfect' high level language, but it would then have to be compiled into every assembly language for every type of processor - a practically impossible task. It's never likely to happen because of this and also because people will always try to make money out of competition between languages, materials, and guides.

2006-11-13 19:11:31 · answer #3 · answered by Jess 2 · 0 1

Anything is possible where math is concerned. Likely to happen? Likewise possible. I think, though, that like an artist who keeps numerous pieces of equipment to render only one image ( the hard way, not Cararra or Toon Boon ) so too programmers probably have to use different languages either for industry encoding and safeguarding or because inherent in the programming language is an adept, resilient, efficient way to operate the whole thing above other languages.

2006-11-13 18:51:33 · answer #4 · answered by vanamont7 7 · 0 1

In my opinion, never going to happen.

Your imaginary "super-language" would have to cover all aspects of all currently existing languages. This would mean markup languages like HTML, script languages like JavaScript, compiled languages like C, OOP languages like C++, the 'odd' languages like Prolog and LISP, query languages like SQL... the list goes on... Eventually you would end up with a language so complicated that it'd be nearly impossible to use, and definitely impossible to create.

So not only do I think it'll never happen - I don't want it to happen. Things are just fine as they are, with different tools for different jobs. Other types of craftsmen don't need "super-tools" that can perform all tasks, they have workshops full of a selection of tools. Why should programmers be any different?

Rawlyn.

2006-11-14 05:44:12 · answer #5 · answered by Anonymous · 0 0

Theortically yes you could have one all purpose language. The reason why there are so many different languages is they are designed to be efficient in one domain. Thus COBOL was good for writing Financial programs but no so good for scientific programs. You could argue that it is happening now with general purpose languages such as Java or C# depend on libraries of pre-written code to provide additional functionality to the program so if you need Scientific functionality you can 'plug-in' the necessary component.

2006-11-14 04:54:29 · answer #6 · answered by Paul B 3 · 0 1

it is possible, but you would have to get all coders to agree to use this single language, and that's not going to happen. The underlying machine-code is the same on almost every computer ( binary) its just the way the we use it that's different

2006-11-14 04:50:41 · answer #7 · answered by Anonymous · 0 1

Yes.

The main language of the computer is Binary.

Every other language is either compiled, or in the early days of the home computer, interpreted by the operating system.

2006-11-13 18:51:44 · answer #8 · answered by footynutguy 4 · 0 1

Yes and no.
Depends on the company. Computer languages are proprietary but if Linux ever goes mainstream being free it will dominate.

Free is the key.

2006-11-13 18:49:49 · answer #9 · answered by Julio Cesar C 2 · 0 2

no. you wouldn't need fortran to program a game, or you can't put a satellite in orbit using visual basic. every language is design for a specific purpose.

2006-11-13 18:52:12 · answer #10 · answered by Splishy 7 · 1 0

fedest.com, questions and answers