Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #120515

Re: Lexical Elements

Path csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From Keith Thompson <kst-u@mib.org>
Newsgroups comp.lang.c
Subject Re: Lexical Elements
Date Thu, 28 Sep 2017 18:39:59 -0700
Organization None to speak of
Lines 54
Message-ID <lning2uvtc.fsf@kst-u.example.com> (permalink)
References <cc7eadf6-6c89-4139-9050-3606d3c0ab01@googlegroups.com> <m2o9pv33am.fsf@despina.home> <oqht8d$ke3$1@dont-email.me> <e1753783-684f-45a1-8600-e0230fa9ba81@googlegroups.com> <lnmv5eyh4k.fsf@kst-u.example.com> <d7b80520-7c0a-461f-99db-1b58dac1ee15@googlegroups.com> <lnk20iwr59.fsf@kst-u.example.com> <d1352da5-c14d-445d-953a-b623686873f2@googlegroups.com>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Injection-Info reader02.eternal-september.org; posting-host="61a8d29e3e3ce5c1ce3f75578cd619a7"; logging-data="8613"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18PVk07hVOjffZq10CokI3W"
User-Agent Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)
Cancel-Lock sha1:7+TTb+hND57+S5uTDsNP+TwERdo= sha1:Sij9u/MwUEHB4xCS+grhSeqSDhI=
Xref csiph.com comp.lang.c:120515

Show key headers only | View raw


David Kleinecke <dkleinecke@gmail.com> writes:
> On Thursday, September 28, 2017 at 12:38:02 PM UTC-7, Keith Thompson wrote:
>> 
>> A compiler typically treats syntax and semantics separately.  Syntactic
>> analysis, or parsing, is often semi-automated, with the parser generated
>> programatically from a forma grammar -- or it might be written manually.
>> If parsing fails, that's a syntax error.  Other errors, like trying to
>> apply a shift operator to a pointer value, have to be detected during
>> semantic analysis.  As far as typical compiler internals are concerned,
>> they're fundamentally different kinds of errors.  Tweaking the grammar
>> to treat some syntax errors as semantic errors can enable better
>> diagnostics in some csaes.
>  
> My compilers also treat syntax and semantics separately. The
> question is whether the constraints are part of syntax or part
> of semantics. 

Semantics, I'd say.

> You imply that some are and some aren't.

Did I?

>                                          Quite possible
> although I have no examples. I have concluded that what
> I called the spirit of C expects them with the syntax but
> I had them coded with the semantics. I have only begun
> moving the constraints and haven't yet found any that
> don't fit rather easily into the syntax. 

I suspect I really don't undrestand what you're saying.

Here's an example.  C11 6.8.4.2p1 specifies the following constraint:

    The controlling expression of a switch statement shall have integer
    type.

Unless you extend the meaning of "syntax" beyond (my) recognition, you
won't be able to enforce that constraint using only syntax information.

Roughly, a syntax error is a failure to parse the source code in
accordance with a grammar that can be defined, for example, in BNF
(Backus-Naur Form).  (C's treatment of typedefs punches a small hole in
this model.)  Any errors that are not syntax errors are what I think of
as semantic errors.  In C, this is more or less expressed as syntax
rules vs. constraints.

[...]

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

Back to comp.lang.c | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-27 19:03 -0700
  Re: Lexical Elements "Pascal J. Bourguignon" <pjb@informatimago.com> - 2017-09-28 05:33 +0200
    Re: Lexical Elements James Kuyper <jameskuyper@verizon.net> - 2017-09-28 00:19 -0400
      Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-27 22:09 -0700
        Re: Lexical Elements Keith Thompson <kst-u@mib.org> - 2017-09-28 08:31 -0700
          Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 11:53 -0700
            Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 12:16 -0700
              Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 15:51 -0700
                Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 16:42 -0700
            Re: Lexical Elements Keith Thompson <kst-u@mib.org> - 2017-09-28 12:37 -0700
              Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 16:16 -0700
                Re: Lexical Elements Keith Thompson <kst-u@mib.org> - 2017-09-28 18:39 -0700
                Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 19:47 -0700
                Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 20:29 -0700
                Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 22:36 -0700
                Re: Lexical Elements Keith Thompson <kst-u@mib.org> - 2017-09-29 08:47 -0700
                Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-29 11:23 -0700
                Re: Lexical Elements Ben Bacarisse <ben.usenet@bsb.me.uk> - 2017-09-29 18:27 +0100
        Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 09:13 -0700
    Re: Lexical Elements Richard Damon <Richard@Damon-Family.org> - 2017-09-28 08:15 -0400
  Re: Lexical Elements jameskuyper@verizon.net - 2017-09-27 21:03 -0700
    Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-27 22:16 -0700
      Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 09:45 -0700
        Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 11:58 -0700
          Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 12:29 -0700
            Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 15:52 -0700
              Re: Lexical Elements Joe Pfeiffer <pfeiffer@cs.nmsu.edu> - 2017-09-28 17:40 -0600
              Re: Lexical Elements jameskuyper@verizon.net - 2017-09-28 16:54 -0700
          Re: Lexical Elements Keith Thompson <kst-u@mib.org> - 2017-09-28 12:40 -0700
            Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 16:12 -0700
          Re: Lexical Elements bartc <bc@freeuk.com> - 2017-09-28 21:04 +0100
            Re: Lexical Elements bartc <bc@freeuk.com> - 2017-09-28 22:12 +0100
            Re: Lexical Elements David Kleinecke <dkleinecke@gmail.com> - 2017-09-28 16:15 -0700
              Re: Lexical Elements bartc <bc@freeuk.com> - 2017-09-29 01:19 +0100

csiph-web