Hi xiaorang,
It's a good question that needs to be answered by looking at not only the
history of programming languages but also the history of the computer
architecture and their users.

Delphi is based on Pascal which was designed by Nicholas Wirth.  Some of the
precursors to Pascal were Fortran, APL, Cobol and Algol and eventually PLM.
Each program was coded on punch cards and read with a reader and output done
on a printer.  The only exception in the above list was APL which stood for
"A Programming Language".  IBM had special video terminals for this language
that used special symbols and Greek letters.  
And of course anything that needed to be fast and compact was written in the
machine assembler language.  This included the compilers and the operating
systems.

So before you look at why not just Delphi and maybe C++ or C# you could ask
why even Pascal?  After all Algol and the later Algol 68 were sufficiently
like Pascal.  And Fortran had huge libraries for any sort of numerical
programming.  The APL language allowed you to multiply two matrixes together
with one operator.  People even had competitions to see who could put the
most powerful program on one line.  Finally Cobol had special features that
lent itself well to data processing.

As  a computer science professor Nicholas Wirth once stated that a
programmer who learned Fortran (or later BASIC) as their first language was
brain damaged for life.   He found that students who did not learn an
algorithmic approach to programming seemed incapable of learning structured
and organized systems and often the programs they wrote were horribly hard
to read or maintain.  Even the compilers had all sorts of bugs because the
languages were so loose.

So he designed Pascal to be easily compiled and required a program to think
ahead about what constants, variables and functions they would require.  And
he enforced that in the language.  He also did not like dynamic string
allocation and all the memory garbage collection that came with that so
strings as we know them in Delphi didn't exist.  It took Borland to change
that.  But in the University world, my first exposure to Pascal was UBC
PASCAL on the Ahmdal 470 at UoA and that was in third year computing
science.  In that 4 month course we wrote 5 programs using 5 different
styles of languages.  One was SNOBOL which was excellent at parsing strings.
Another was LISP which excelled at Artificial Intelligence programming.  I
forget the other two.

By this time I had an S100 Z80 based computer and was running the CP/M
operating system that had been written in a version of PLM-80 and assembler.
The BIOS was the assembler interface between the OS and the hardware and was
pretty easy to write.  Not like the "Halt and Catch Fire" TV program where
the BIOS is difficult.

The Microcomputer world spawned a new series of languages, most gone now and
created some very wealthy individuals from it all.  Bill Gates was smart
enough to license his version of BASIC to anyone who wanted it.  Apple
provided BASIC on their Apple-2.  The new PDP-10 mini-computer and later the
PDP-11 introduced not only BASIC, FORTRAN but started using the C language.
A stack based language called FORTH showed up.  If you liked HP calculators
FORTH was also easy.

And some languages have gone and others have grown or developed into the new
concept of object oriented programming with C++ and Delphi.  Microsoft as
the now dominant producer of Operating Systems was pushing the idea of
charging a price each time a module was run.  Want to spell check a
document, the latest .NET module is loaded from Microsoft in real time and
you get charged a penny.  That didn't go over well.  

Neither did releasing all the library source code the way Borland did with
Delphi.  Theoretically that should have obliterated all other programming
languages but by then the Universities and colleges were migrating from
their PDP-11 mini-computers on which they taught FORTRAN (to Engineers) and
C to Computer Science students onto workstations based on PCs.  Basic and C
became the languages of choice.  Turbo Pascal was never offered on the APPLE
MAC.

In behind the scenes undoubtedly license costs for the compiler prevented
DELPHI from showing up everywhere.  And once WEB pages started moving past
simple HTML the need for script languages (which UNIX and then LINUX had
plenty of) became more important and either C nor Pascal address that style
of programming.

So there's a short history from my perspective.  Sorry to drag it on so long
but each language was often developed to address a specific failing in the
existing set of languages.  The existing set improved and addressed those
failings.  
eg. BASIC had String Handling.  Turbo Pascal added string handling.  Other
specialty language added arrays that could be indexed by a string rather
than a number.  C++ was designed to be augmented so new features like that
could be part of it under the term operator overloading.  And so on.
 
John Dammeyer

--------------
> xiaorang      f
> The discussion trigger a thought in me, why do we so many languages?
> I feel quite at home when using Delphi and I think C# is acceptable.
> I have no good comment on java, I think it's slow and ugly.
> As there are so many people using Java, so that java is so popular, I can
> almost guarantee that the problem is in me.
> Actually, most programming languages are equivalence, I don't see any
> serious difference in the syntax of C# and pascal and java and vb and many
> more.
> (Although I believe there are some noticeable differences in languages
like
> lisp, prolog, javascript, etc.)
> It is far from imposible for us to build a translator between any two
> languages.
> It seems they are made not for solving problems but simply for variety.
> What do you think of it?

_______________________________________________
Delphi mailing list
[email protected]
http://lists.elists.org/cgi-bin/mailman/listinfo/delphi

Reply via email to