Re: Parser bug: if missing ", " in list between records, the first is ignored, and no parser warnings are given.
Roland Karlsson <[email protected]>
| Newsgroups | gmane.comp.lang.erlang.bugs |
|---|---|
| Message-ID | <[email protected]> |
Concatenating of two strings is an exception I assume. I am not knowledgeable enough in Erlang syntax to explain why it works. Need help of someone else. /Roland On Sun, 16 Nov 2014 20:52:47 +0100 Eric Pailleau <[email protected]> wrote: > Two strings are concatanated. > > "abc" "def". > "abcdef" > > even without ++. > > If you look at my second mail, > erl guess that {test, 2, 6} is a record, because a record is only a tuple. > > #test is only a facility in order not to write default values in a tuple. that s all. > > regards > > > > « Envoyé depuis mon mobile » Eric > > Roland Karlsson <[email protected]> a écrit : > > >I do not agree. Not the slightest. > > > >The use {}{} is quite meaningless. What should it mean? > >Some kind of double tuple? What is that? It would be like writing > >two atoms or two integers after each other. Double atoms? > >Double integers? Nothing like that in the Erlang syntax. > > > >The usage #foo{}#foo{} on the other hand is totally meaningful, > >even if maybe ugly. The first creates a record and the second > >modifies it. Nothing strange at all. It is like > >TMP=#foo{}, TMP#foo{}. > >perfectly legit Erlang code. > > > > > >/Roland > > > > > > > > > >On Sun, 16 Nov 2014 19:37:19 +0100 > >Kostis Sagonas <[email protected]> wrote: > > > >> On 11/16/2014 07:15 PM, PAILLEAU Eric wrote: > >> > > >> > 1> #test{a=2}#test{a=3}. > >> > #test{a = 3,b = 6} > >> > > >> > but > >> > > >> > 2> {test, 2,6}{test, 3, 6}. > >> > * 1: syntax error before: '{' > >> > > >> > ---8<------------------------------------------------------------------ > >> > 10.8 Internal Representation of Records > >> > > >> > Record expressions are translated to tuple expressions during > >> > compilation. A record defined as > >> > > >> > -record(Name, {Field1,...,FieldN}). > >> > > >> > is internally represented by the tuple > >> > > >> > {Name,Value1,...,ValueN} > >> > > >> > where each ValueI is the default value for FieldI. > >> > ---8<------------------------------------------------------------------ > >> > > >> > I don't have any opinion on whether this syntax should be allowed or > >> > not, but parser should not fail on second notation in such case. > >> > >> FWIW, I am of the same opinion here. Currently, there is some inconsistency that should not be there. > >> > >> Kostis > >> > >> > >> _______________________________________________ > >> erlang-bugs mailing list > >> [email protected] > >> http://erlang.org/mailman/listinfo/erlang-bugs > > > >-- > >Roland Karlsson <[email protected]> > > > >_______________________________________________ > >erlang-bugs mailing list > >[email protected] > >http://erlang.org/mailman/listinfo/erlang-bugs -- Roland Karlsson <[email protected]> _______________________________________________ erlang-bugs mailing list [email protected] http://erlang.org/mailman/listinfo/erlang-bugs