Computer Science. The English Language Perspective - Беликова (1176925), страница 9
Текст из файла (страница 9)
It was the first computer language forelectronic devices and it required the programmer to change itsstatements into 0s and 1s by hand. Still, it was the first steptowards the complex languages of today. In 1951, GraceHopper wrote the first compiler, A-0. A compiler is a programthat turns the language’s statements into 0s and 1s for thecomputer to understand. This led to faster programming, as theprogrammer no longer had to do the work by hand.FORTRANIn 1957, the first of the major languages appeared in the form ofFORTRAN.
FORTRAN was the first programming languagethat significantly rose above the level of assembly language. Itsname stands for FORmula TRANslating system. The languagewas designed at IBM for scientific computing. The maininnovation of FORTRAN was that it became possible to useordinary mathematical notation in expressions.
FORTRAN also53had subroutines (a form of procedure or function), arrays,formatted input and output, and declarations that gaveprogrammers explicit control over the placement of variablesand arrays in memory. However, that was about it. Today, thislanguage would be considered restrictive as it only included IF,DO, and GOTO statements, but at the time, these commandswere a big step forward.Nevertheless, the advantages of the abstraction quickly wonover most programmers: quicker and more reliabledevelopment, and less machine dependence since register andmachine instructions are abstracted away.
The basic types ofdata in use today got their start in FORTRAN, these includedlogical variables (TRUE or FALSE), and integer, real, anddouble-precision numbers. Because most early computing wason scientific problems, FORTRAN became the standardlanguage in science and engineering, and is only now beingreplaced by other languages.COBOLThough FORTAN was good at handling numbers, it was not sogood at handling input and output, which mattered most tobusiness computing. Business computing started to take off in1959, and because of this, COBOL was developed. The languagewas designed by a committee consisting of representatives ofthe US Department of Defense, computer manufacturers andcommercial organizations such as insurance companies.
Theprimary designer of COBOL was Grace Murray Hopper, animportant computer pioneer.COBOL was intended to be only a short-range solution until abetter design could be created; instead, the language as definedquickly became the most widespread language in its field (asFORTRAN has in science), and for a similar reason: thelanguage provides a natural means of expressing computationsthat are typical in its field, although current versions ofFORTRAN and COBOL differ substantially from forms of theselanguages of the 1950s. Business data processing is54characterized by the need to do relatively simple calculationson vast numbers of complex data records, and COBOL’s datastructuring capabilities far surpass those of algorithmiclanguages like FORTRAN or C.
It also allowed for these to begrouped into arrays and records, so that data could be trackedand organized better. It is interesting to note that a COBOLprogram is built in a way similar to an essay, with four or fivemajor sections that build into an elegant whole. COBOLstatements also have a very English-like grammar, making itquite easy to learn. All of these features were designed to makeit easier for the average business to learn and adopt it.LISPIn 1958, John McCarthy of MIT created the LISt Processing (orLISP) language.
It was designed for Artificial Intelligence (AI)research. Since it was designed for a specialized field, theoriginal release of LISP had a unique syntax: essentially none.Programmers wrote code in parse trees, which are usually acompiler-generated intermediary between higher syntax (suchas in C or Java) and lower-level code. Another obviousdifference between this language (in original form) and otherlanguages is that the basic and only type of data is the list; inthe mid-1960s, LISP acquired other data types. A LISP list isdenoted by a sequence of items enclosed by parentheses.
LISPprograms themselves are written as a set of lists, so that LISPhas the unique ability to modify itself, and hence grow on itsown. LISP remains in use today because of its highlyspecialized and abstract nature.PascalPascal was begun in 1968 by Niklaus Wirth. Its developmentwas mainly out of necessity for a good teaching tool. Themotivation for Pascal was to create a language that could beused to demonstrate ideas about type declarations and typechecking. In the beginning, the language designers had nohopes for it to enjoy widespread adoption. Instead, they55concentrated on developing good tools for teaching such as adebugger and editing system and support for common earlymicroprocessor machines which were in use in teachinginstitutions.Pascal was designed in a very orderly approach, it combinedmany of the best features of the languages in use at the time,COBOL, FORTRAN, and ALGOL.
While doing so, many of theirregularities and oddball statements of these languages werecleaned up, which helped it gain users. The combination offeatures, input/output and solid mathematical features, made ita highly successful language. Pascal also improved the“pointer” data type, a very powerful feature of any languagethat implements it. It also added a CASE statement, thatallowed instructions to branch like a tree.Pascal also helped the development of dynamic variables,which could be created while a program was being run,through the NEW and DISPOSE commands. However, Pascaldid not implement dynamic arrays, or groups of variables,which proved to be needed and led to its downfall.
Wirth latercreated a successor to Pascal, Modula-2, but by the time itappeared, C was gaining popularity and users at a rapid pace.CC was developed by Dennis Ritchie of Bell Laboratories in theearly 1970s as an implementation language for the UNIXoperating system. Operating systems were traditionally writtenin assembly language because high-level languages wereconsidered inefficient. C abstracts away the details of assemblylanguage programming by offering structured controlstatements and data structures (arrays and records), while atthe same time it retains all the flexibility of low-levelprogramming in assembly language (pointers and bit-leveloperations).Since UNIX was readily available to universities, and since it iswritten in a portable language rather than in raw assemblylanguage, it quickly became the system of choice in academic56and research institutions.
When new computers andapplications moved from these institutions to the commercialmarketplace, they took UNIX and C with them.C is designed to be close to assembly language so it is extremelyflexible; the problem is that this flexibility makes it extremelyeasy to write programs with obscure bugs because unsafeconstructs are not checked by the compiler as they would be inPascal. C is a sharp tool when used expertly on small programs,but can cause serious trouble when used on large softwaresystems developed by teams of varying ability.The C language was standardized in 1989 by the AmericanNational Standards Institute (ANSI); essentially the samestandard was adopted by the International StandardsOrganization (ISO) a year later.C++In the 1980s Bjarne Stroustrup, also from Bell Laboratories, usedC as the basis of the C++ (known as “C With Classes”)language, extending C to include support for object-orientedprogramming similar to that provided by the Simula language.In addition, C++ fixes many mistakes in C and should be usedin preference to C, even on small programs where the objectoriented features may not be needed.C++ is an evolving language and the natural language to usewhen upgrading a system written in C.JavaIn the early 1990s, interactive TV was the technology of thefuture.
Sun Microsystems decided that interactive TV needed aspecial, portable (can run on many types of machines),language. This language eventually became Java. In 1994, theJava project team changed their focus to the Web, which wasbecoming “the cool thing” after interactive TV failed. The nextyear, Netscape licensed Java for use in their internet browser,Navigator.
At this point, Java became the language of the future57and several companies announced applications which would bewritten in Java, none of which came into use.Though Java has very lofty goals and is a text-book example ofa good language, it may be the “language that wasn’t.” It hasserious optimization problems, meaning that programs writtenin it run very slowly. And Sun has hurt Java’s acceptance byengaging in political battles over it with Microsoft. But Javamay wind up as the instructional language of tomorrow as it istruly object-oriented and implements advanced techniques suchas true portability of code and garbage collection.Visual Basic is often taught as a first programming languagetoday as it is based on the BASIC language developed in 1964by John Kemeny and Thomas Kurtz.