[fpc-pascal] even linus torvalds prefer pascal over c

Daniël Mantione daniel.mantione at freepascal.org
Sat Dec 2 11:49:35 CET 2006



Op Sat, 2 Dec 2006, schreef Micha Nelissen:

> Bisma Jayadi wrote:
> > Linus concluded, "the C language has scoping rules for a reason. *If I
> > wanted a language that didn't allow me to do anything wrong, I'd be
> > using Pascal.* As it is, it turns out that things that 'look' wrong on a
> > local level are often not wrong after all."
> =

> Well, Linus is not too fond of "standard Pascal" (but neither am I ;-)
> ), read the following about goto and labels:
> (http://kerneltrap.org/node/553/2131)
>
> <quote>
> On 12 Jan 2003, Robert Love wrote:
> > On Sun, 2003-01-12 at 15:22, Linus Torvalds wrote:
> > > No, you've been brainwashed by CS people who thought that Niklaus
> > > Wirth actually knew what he was talking about. He didn't. He
> > > doesn't have a frigging clue.
> >
> > I thought Edsger Dijkstra coined the "gotos are evil" bit in his
> > structured programming push?
> =

> Yeah, he did, but he's dead, and we shouldn't talk ill of the dead. So
> these days I can only rant about Niklaus Wirth, who took the "structured
> programming" thing and enforced it in his languages (Pascal and
> Modula-2), and thus forced his evil on untold generations of poor CS
> students who had to learn langauges that weren't actually useful for
> real work.

Wirth motivated his choices in an article in 2005 about "bad ideas" that =

people came up over the last decades. He still cosiders allowing goto in =

Pascal a mistake, and says he "didn't have the guts at that time" to =

remove goto. (He later removed it from Modula-2).

The reality of the matter is that the original Pascal simply wasn't ready =

for removing goto (for instance, standard Pascal does not have break and =

continue). Looking at the use of goto in the Free Pascal sources, I see =

few situations were a non-goto solution is more attractive than the current =

one.

So in essence, I don't disagree with Linus here.

However, it should be noted, and this is what Linus forgets in his rants, =

is that Dijkstra and Wirth lived in an age were people were coding Cobol, =

Basic and  Fortran programs without any high level structures at all. They =
had =

correctly concluded that in an ideal world, there would be ne need for =

goto, and were trying to design the ideal language. History has proved =

them almost completely right. The fact that in a real world practical =

situation the need for goto sometimes exists, doesn't make their enourmous =

contribution to informatics(1) invalid.

Dani=EBl

(1) I'm using the in English not so common "informatics" instead of =

    "computer science", because Dijkstra greatly disliked the term).



More information about the fpc-pascal mailing list