[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Improving aesthetics & readability of backquote

From: Alan Mackenzie
Subject: Re: Improving aesthetics & readability of backquote
Date: Mon, 20 May 2019 14:02:16 +0000
User-agent: Mutt/1.10.1 (2018-07-13)

Hello, Paul.

On Mon, May 20, 2019 at 23:25:13 +1000, Paul W. Rankin wrote:

> On Mon, May 20 2019, Alan Mackenzie wrote:

> > Sorry, I can't make anything out of that paragraph.  What meaning?
> > What relation to what?  Which code alone?

> The \` symbol is an alias to backquote, and the word "backquote" 
> only describes the symbol, i.e. circular semantics.

OK, thanks.  "Backquote" partially describes what the operator does,
i.e. it quotes.  Sort of.

> >> I suggest that we could introduce some aliases and augment the
> >> reader constucts a little to make them more aesthetically pleasing
> >> and more readable.

> > I don't agree with you that (quote foo) is more readable than 'foo.
> > I would find (quote foo) tiring to write, and (more importantly)
> > tiring to read.  I believe very early lisps were lacking the '
> > operator.  (quoteval foo) would be even worse for me.

> I'm using "readability" in the sense of reader comprehension, not 
> eyestrain.

So was I.

> >> If it remains unclear, my suggestion is not to supplant the
> >> original syntax; I position this suggestion in a similar vein as
> >> the rx library.

The two are different.  Regexp strings, like

   "\\([{}();:,<]+\\)\\|^\\s *\\(#\\)\\s *define[ 

are hard to read and decipher.  rx is an attempt to make it clearer to
read regexps.  On the contrary, ` and , and ,@ are easy to read, the
difficulty being in their semantics.

Back in the 1950s, the language Cobol was invented with just this
premise.  It was thought that


would be easier for beginners (i.e. managers) to understand than

    Y = X + 2;

Language design has gone firmly in the opposite direction since then,
emphasising conciseness.

> > But code has to be maintained, and everybody would have to know the
> > meaning of these new aliases, and be practiced with them, to be able
> > to maintain code using them.

> Hence the choice of clear, easily understandable aliases.

I don't think they're easily understandable.  They lack the clarity and
distinctiveness of `, ,, and ,@.

> > I'm afraid I'm against such changes.

> I'm proposing an addition, not changes.

An addition is a change, and it would affect all project members.  As I
said, I'm against this change.

> See the aforementioned rx library; its relationship to regular
> expression in Emacs Lisp should be instructive.

> -- 
> https://www.paulwrankin.com

Alan Mackenzie (Nuremberg, Germany).

reply via email to

[Prev in Thread] Current Thread [Next in Thread]