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ël (1) I'm using the in English not so common "informatics" instead of "computer science", because Dijkstra greatly disliked the term).
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal