Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!oakhill!steve From: steve@oakhill.UUCP (steve) Newsgroups: comp.lang.misc Subject: Re: Language Design Summary: Don't blame C either, blame YACC. Message-ID: <1923@devsys.oakhill.UUCP> Date: 20 Mar 89 17:58:51 GMT References: <5200040@m.cs.uiuc.edu> <12443@watdragon.waterloo.edu> Organization: Motorola Inc. Austin, Tx Lines: 38 In article <12443@watdragon.waterloo.edu>, gvcormack@watdragon.waterloo.edu (Gordon V. Cormack) writes: > In article <5200040@m.cs.uiuc.edu>, wsmith@m.cs.uiuc.edu writes: > > > > > > (For example, in the language I'm learning now, C++, if you forget to > > declare a class, it is a *syntax* error. Not misuse of identifier or > > undefined class, *syntax* error.) > > > > Don't blame C++. Blame C. > > C is not context-free parsable [actually I believe it is, but not > with any sensible grammar]. > -- > Gordon V. Cormack CS Dept, University of Waterloo, Canada N2L 3G1 > gvcormack@waterloo.EDU gvcormack@uwaterloo.CA gvcormac@water.BITNET Don't blame C either. The real cause of this error is a conspiracy between the compiler writer and YACC. YACC produces this message for every syntax error unless you specifically design your grammer to catch a specific error and output a different message. The writer of your compiler probably used YACC, and then didn't design his grammer to do this in this case. He is probably not too much to blame though. To design a languge to catch every possible generic grammerical error would make the compiler so slow you might as well code in assembly. enough from this mooncalf - Steven ---------------------------------------------------------------------------- To flame someone for bad spelling or grammer is a discouragement to net discussion in a timely fashion. ---------------------------------------------------------------------------- These opinions aren't necessarily Motorola's or Remora's - but I'd like to think we share some common views. ---------------------------------------------------------------------------- Steven R Weintraub cs.utexas.edu!oakhill!devsys!steve Motorola Inc. Austin, Texas (512) 440-3023 (office) (512) 453-6953 (home) ----------------------------------------------------------------------------