lua-users home
lua-l archive

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


On 06/07/2011 15:07, Roberto Ierusalimschy wrote:
On 06/07/2011 00:20, Luiz Henrique de Figueiredo wrote:
	- '\*' ->   '\z' (so that '\punctuation' always means 'punctuation')

Not sure how to interpret exactly the '\*' ->   '\z' part, but I fear
this change will lead to non consistent behavior, as '\accent',
'\break', '\nobreak', etc. (making these up) won't mean 'accent',
'break', 'nobreak'...

I am not sure we were clear about the change. The only change was that
the new escape sequence for skipping spaces now is written '\z'. There
is no new rule "\punctuation always means puntuaction". This is only a
kind of guideline for choosing escapes. Undefined escape sequences are
still undefined and should be avoided.

Sorry, I misunderstood the line, it was clarified by Gé's excerpt of diff. I wasn't aware of the previous \* meaning.
So, if I understand correctly the manual (I should have started to read it...):
"The escape sequence '\z' skips the following span of white-space characters, including line breaks; it is particularly useful to break and indent a long string into multiple lines without adding the newlines and spaces into the string contents."

x = "Foo\
Bar"

is now the same than

x = "Foo\z
     Bar"

and the same than

x = [[
Foo
Bar]]

right?

(But maybe I did not understand your message. What do you mean by
"non consistent behavior", when compared to how it was and to how
many other languages handle escape sequences?)

Well, I jumped on the "'\punctuation' always means 'punctuation'" sentence, which I don't understand, then...
Mmm, if it just means the behavior is the same than C's one, I see my reaction is stupid.
Sorry for the noise.

--
Philippe Lhoste
--  (near) Paris -- France
--  http://Phi.Lho.free.fr
--  --  --  --  --  --  --  --  --  --  --  --  --  --