unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Alan Mackenzie <acm@muc.de>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: bug-cc-mode@gnu.org, Peter Dyballa <Peter_Dyballa@Web.DE>,
	Martin Stjernholm <mast@lysator.liu.se>,
	emacs-devel@gnu.org
Subject: Re: Old-style backquotes in cc-vars.el
Date: Sun, 7 Oct 2007 09:40:25 +0000	[thread overview]
Message-ID: <20071007094025.GA1416@muc.de> (raw)
In-Reply-To: <jwv8x6fanwp.fsf-monnier+emacs@gnu.org>

Hi, Stefan,

On Sat, Oct 06, 2007 at 06:27:00PM -0400, Stefan Monnier wrote:
> >> cc-vars uses a mix of old-style a new-style backquotes.
> > I don't think it does.

> The warning indicates that Emacs sees old-style backquotes, aqnd I'm
> pretty sure there are new style backquotes as well, so I'm pretty sure
> you're wrong.

OK.  I've played around with things a bit since yesterday.  In
particular, I've discovered the useful functions `read' and
`backquote-process'.  I'm begining to think you're right and I'm wrong.
:-)

> > He wouldn't knowingly have put in old-style BQs as late as 2001.

> Maybe he did it knowingly: he's using nested backquotes and IIRC they
> didn't always work correctly in older versions of Emacs when used with
> new-style backquotes.  Actually IIRC the problem was with nested
> new-style commas (where the second would not be recognized as
> new-style) which indeed do appear in that code.

Ah.  OK.  That's sounds like a sound reason for not upgrading that code
in cc-vars.el, if it's the case.  (Or, for introducing yet another
difference between the cc-vars.el in Emacs and the standalone CC Mode,
which retains compatibility with older (X)Emacsen.  :-(  )

Probably I'll just scrap the old code and put in Thi's new version of the
function instead (after testing it thoroughly).  It looks a lot cleaner
and easier to understand.

> > I'm not sure whether the rules for nested backquotes are clearly laid
> > out anywhere.

> The problem is not about nesting but about new-style vs old-style: the
> detailed rule about which is which is indeed only specified implicitly in
> the source code.

OK.

> > I think they're formally ambiguous (i.e., RTFS).  I tried
> > replacing "`(` (radio" with both

> >     "`( (` (radio"        (explicitly putting in an "old-style" BQ)

> > , and

> >     "`` (radio"           (replacing the alleged "old-style" BQ with a
> >                            "new-style" one)

> > , but each of these generated results different from the original
> > (checked with macroexpand).

> You need to fix the ,(, part accordingly.

Ah!  I'm still figuring out what ,(, actually means.

> Thien-Thi might be a good start.

Yes.  He's already been very helpful.

> > Who is the bytecomp expert, again?  Could we possibly ask him about the
> > semantics of  `(` (radio ?

> It's (\` (\` (radio

I managed to get that late last night with   (read "`(` (a b c))").  :-)

Thanks for all the help!

>         Stefan

-- 
Alan.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/


  reply	other threads:[~2007-10-07  9:40 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-23 20:51 Old-style backquotes in cc-vars.el Stefan Monnier
2007-09-01 10:18 ` Alan Mackenzie
2007-09-03 20:46   ` Stefan Monnier
2007-09-04  3:14     ` T. V. Raman
2007-09-04 22:57       ` Richard Stallman
2007-09-05  2:21         ` T. V. Raman
2007-09-05  2:44           ` dhruva
2007-09-05  3:26             ` Stefan Monnier
2007-09-05 20:02               ` Richard Stallman
2007-09-06 14:27                 ` Juri Linkov
2007-09-07  6:32                   ` Richard Stallman
2007-09-05 13:29             ` T. V. Raman
2007-10-06 16:31 ` Alan Mackenzie
2007-10-06 18:31   ` Thien-Thi Nguyen
2007-10-06 20:51     ` Alan Mackenzie
2007-10-06 21:46       ` Thien-Thi Nguyen
2007-10-11 17:41     ` Davis Herring
2007-10-19  7:29       ` Thien-Thi Nguyen
2007-10-06 22:27   ` Stefan Monnier
2007-10-07  9:40     ` Alan Mackenzie [this message]
2007-10-07  9:41       ` Thien-Thi Nguyen
2007-10-07 19:40       ` Eli Zaretskii
2007-10-07 13:10   ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20071007094025.GA1416@muc.de \
    --to=acm@muc.de \
    --cc=Peter_Dyballa@Web.DE \
    --cc=bug-cc-mode@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=mast@lysator.liu.se \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).