Sunday, January 16, 2011

Programming language : my take

Its been a while since i first started programming, and it has grown to become a part of me lately.
So i decided to ponder on one of the very basic questions: what is a programming language?

the answer that first comes to my mind is that it is a language used to program.

making a note to myself, lets take a closer look at the two terms : 'program' & 'language'.

Program
In computer science,a program is a set of instructions, used to get a desired result form our beloved computer.While it is certainly not limited to computers(various types of ics - microprocessors, microcontrollers, and various embedded systems are programmed) , but i haven't yet worked on anything other than computers . a program may or may not accept input from user, and may or may not print the output.

Language
A language, simply put, is a social construct used for communication. For two people to communicate, they need a common language.Amongst the many languages that humans converse in, English is a popular alternative.For computers, its the binary number system, 0 or 1.

Thus when we say a 'programming language' we mean a language, which would be common to both the humans and the machine. The very reason for developing a programming language is the incompatibility of language between we humans and the computers(can you talk binary? i can't).

Depending on the type of language we chose to use, the knowledge of the way our system works required varies, low level language requiring the most, and high level language requiring the least.

So what's more to it?

As in real world, one language is never better than the other. All the languages which were developed have there own uses. Thus a certain objective may be easily attained using a language more suited for that purpose, but for a different objective a different language might prove to be better.I have heard a lot  about these languages in particular:

  1. C : This was developed by Dennis Ritchie for the UNIX operating system, later standardized to the present form by ANSI. This language is a mid level language and is an all rounder, all sorts of programs ranging to simple console programs to windowed applications, networking, device drivers , operating systems and so on are written in it.
  2. C++: This is a superset of C. Apart from the features of C, it uses object oriented programming concepts, thus facilitating us with the ability to write larger programs than C.
  3. Java: This is a language of the net(i.e. internet). It provides many options for security, thus empowering programmers to write programs which can be run on websites, without having to worry about security concerns of the end user thanks to It's strictly object oriented nature. Also Java runs on its own platform, thus leading to platform independence.
  4. Perl: It is a server-sided programming language, which is capable of easily handling large amount of text through CGI programs.It is widely used to write web sever programs.
  5. Ruby: An open-source language, its main focus is on simplicity with reliability.
  6. Python: Another open-source language. It main features are reduced syntax, and a great deal of reduced effort as far as writing languages is concerned.
i do mean to learn all these ^^^ languages at some point of time in the future, some i already know, some i don't.

i hope you guys found this little post interesting..


1 comment:

  1. sahi hai yaar..can u upload tutorials...thought by you..

    ReplyDelete