If a definition of a computer is that it is a machine that needs to follow various directions in order to carry out the tasks required of it, then the history of computers can be traced back to Charles Babbage's 'analytical engine' of 1837. The directions that these machines or computers, as we call them, follow are written as lines of programming in a programme (UK) or program (USA).
In fact there were several 'programmable' devices before the 'analytical engine'. The was the Al-Jazari castle clock of 1206, which recounted the times of the year, the seasons, the phases of the moon and much more besides and the sequences could be adjusted - a form of early programming.
Another example was the Jacquard loom of 1801, which allowed intricate patterns to be woven automatically by a loom following instructions in the form of holes punched in a series of cards. This kind of programming, using punched cards, was still being used in computing in the Nineteen Sixties and early Seventies.
If these engines can be called computers, it is fair to call them 'single purpose computers'. What most people think of as a computer nowadays is a 'general purpose' machine which can be programmed to perform a wide assortment of tasks from calculating a spreadsheet to displaying a film.
The difficulty with early computers (first quarter of the Twentieth Century) was how to modify the programme and how to input the data quickly. Alan Turing made the first important steps in this direction in 1936 with his formalization of the concepts of the algorithm and computation using the Turing Machine. This item provided a blueprint for the first digital computer.
The creator of the first programmable and therefore multi purpose computer was Konrad Zuse. The Zuse Z3 of 1941 is considered to have been the first programmable fully automatic computer.
The Atasanoff-Berry Computer of 1937 was an early, partially programmable computer and formed the basis of ENIAC (1946). ENIAC was the first general purpose electronic computer.
Two crucial concepts were introduced by John von Neuman in 1945. These concepts radically influenced the writing of programming languages. The first was the 'shared program method', which dictated that programs should not be hard-wired into the machine making it multi-functional and the second was the idea of the 'conditional code transfer' or subroutine, which could be called from any juncture in the program to carry out a function.
Short Code Language came out in 1949 which required programmers to code in binary and Grace Hopper brought out the A-0 compiler in 1951 which greatly speeded up the process of composing code.
FORTRAN was developed for scientific use in 1957 and COBOL in 1959 for office use. LISP is a language that was designed to handle lists in 1958 and is still being used for this purpose today. 1958 also saw the release of ALGOL, which was the springboard from where Pascal, C, C++ and Java emerged. PERL came along in 1987, Java in 1994.
Microsoft is having a great deal of success with its Visual Basic, which makes use of widgets, but who knows what other languages will be developed in the future and what we will be able to do with them?
Source by Owen Jones
Post a Comment