Welcome! Here you'll find programming ranged from assembly language to modern day standard Query language!

Home
Index

Beginners
Internet Guide
Glossary

Experts
Programming

Recent news
Recent News
Archive

Tips & Tricks
Meta Tag Tips
Search Engines
Links

discussion
Forums

What is a programming language?

A programming language is the instructions the computer needs to work. All computers process instructions using machine code, which uses numeric codes to operate basic instructions such as load, add or multiply. Programmers in the 1940's had no choice to program in this machine code, a slow and tedious codes that is also known as the object code. Later, some programs were constructed that translated statements like 'Add 1 to counter' into this object code. This enabled programmers to write in something more resembling the English language.�

Most computers nowadays do not write programs. Software developers, over the years, have created packages such as word processors, spreadsheets or databases from languages such as C++, BASIC, COBOL etc... People who implement an actual programming language are called system programmers. Low level languages and high level languages range from assembly language to a spreadsheet that enables you to have little or no programming knowledge whatsoever.�

The difference between a programming language and a markup language...

HTML, the markup language used with the Internet writes information to your screen. A browser reads the HTML tags and displays exactly what is specified.�It is not necessarily a programming language.

A programming language allows programmers to state conditions such as 'branch if equal' and 'do.. while'. The do.. while statement is known as a loop and can be repeated infinitely is needed.�

Low and high level languages:

Low level languages are machine orientated. Meaning an assembly language program written for one machine will not work on any other type of machine. Unless of course, it happens to use the same processor chip. Each statement made using an assembly language translates into one machine code instruction. This is done with the help of a compiler or an interpreter. A compiler translates the source code into object code before it is executed. A translator analysis the source code while execution is taking place. Overall programming takes a long time to implement. Assembly language is used when there is a need to manipulate bits and bytes, and code has to be executed as fast as possible. Another reason is it takes up little memory. Sometimes they are used in high level languages. For example a routine can be written in assembly language, saved as a file, then used in a Pascal program.

All high level languages aren't machine orientated. A program written for one machine will generally run on any other machine where an appropriate compiler or interpreter is available. Each high level language is defined to a certain type of problem. COBOL was written for data processing applications whereas FORTRAN was written for, and is used to solve mathematical equations. There are also general purpose languages such as Visual Basic or Pascal. Statements in high level languages usually resemble English sentences or phrases. Therefore it is easier to understand than a low level language. Each statement in a high level language will be translated into a number of machine code instructions.

The Language Generation

This refers to the various advances in computer programming through the years. The latest of the crop are the 4th generation languages. When using a 4GL all the programmer needs to do is specify what needs to be done, and does not need to specify how to do it. An example would be 'delete record' or 'save as'. 4GL's have many facilities such as:

  • Data dictionary
  • Query language
  • Security such as passwords or usernames
  • Backup
  • Sorting facilities
  • Can store graphics as a database field
  • Text editor

So now you know the language generation most recent addition, like me, you'd be interested to learn a little of its origins. For example the tedious work programmers had to go through in the 1940s and 50s to develop what we have today.

First, second and third generation languages...

Over the last 50 years, computers have been evolving, the language generations are used to put certain languages in order of when they were made. Each language gets more advanced therefore easier and quicker as you climb each generation.

First Generation: Late 40's - machine code

This is the binary numbers. If you are not familiar with this, its written in 0's and 1's. Each character on the keyboard has a binary code. For example the letter 'A' has a corresponding code '01000001'. You can see how tedious this looks.

Second Generation: Early 50's - assembly language

This was developed to abolish the use of typing the binary code for each instruction. Some examples are ADD, SUB and BEQ meaning add, subtract and branch if equal respectively.�

Third Generation: Late 50's up to 70's - high level languages

You'll be more familiar with these. They include Pascal and FORTRAN. Statements such as:

begin

if ... then ... else

Fourth Generation: Late 70's - query language and other tools

Includes spreadsheets, databases etc. Simple to learn.

Procedural and declarative languages

Computers may be programmed with either declarative knowledge or procedural knowledge. Languages such as Pascal or FORTRAN are procedural. The written program consists of a series of instructions telling the computer what to do. The instructions have to be written in steps as the computer cannot turn around and read the program statements again. As the statements are executed, the values assigned to the variables are updated in the memory.

To explain a declarative language, we should look at the language Prolog. It stands for PROgramming in LOGic. This time the language doesn't state how the problem is to be solved, it looks at facts that the programmer has provided. A fact is different from a rule so don't get the two confused. A fact is something's that is always unconditionally true, where a rule is only true if it meets a certain condition.

Hosted by www.Geocities.ws

1