On Tue, May 8, 2018 at 10:15 AM, Steven D'Aprano <steve+comp.lang.pyt...@pearwood.info> wrote: > On Tue, 08 May 2018 06:45:05 +0300, Mikhail V wrote: > >> *Example 3. Two-dimensional tuple.* >> >> data === T/T : >> 1 2 3 "hello" >> a b c + d e f >> >> is a synonym for: >> >> data = ( >> (1, 2, 3, "hello") , >> (a, b, c + d, e, f ) ) > > Last time you brought up this idea, you were told that it is ambiguous. > Using whitespace alone, it is impossible to distinguish between > > a + b > > and > > a + b > > > Can you see the difference? Of course not. That's the whole point. It is > ambiguous. The first is a single item consisting of a plus b, and the > second is two items consisting of a, following by unary plus b.
Can you be more precise what issue are you addressing? Last time and this time I told it uses TAB character to separate elements. > There's also the problem that your syntax requires the *invisible* > difference between tabs and spaces to be treated as syntactically > meaningful. What editor do you use? My editor can toggle tabs highlighting as arrows, and I suppose almost any editor has good support for highlighting of characters by search, etc. For NPP there are even plugins like Regex helper. The only real issue I know that there may be no option to adjust the minimal size for a tabulation, so it can become too small in some rare cases, and there is the highlight function for that. I never had problems with inputing tables - It seems you are having an issue or may be it's even some personal pet-pieve. > > [...] >> *The benefits is just as in above examples : readability and >> 'typeability' boost.* > > But your syntax is not more readable, it is less readable and ambiguous. > It requires us to care about the difference between two kinds of > invisible whitespace. Yes it requires you to care about tabulation - which many users already do to improve readability in their code. As well as any software like Matlab, Excel, etc presents matrices as tables. So they are all making it "less readable", lol. Ok Steven, you like the brackets and commas noise, that's quite funny. Your opinion is heard, but I would be thankful if you'll speak for yourself, and not try to enforce your opinion with these "us", "for us". Also you seem to start with cherry-picking straight away - trying to find an issue and wind it up with the whole idea, totally ignoring obvious benefits for most frequent use cases like multiline strings,1d tuples/lists and simple tables. A very common table case is a 2-column table. So you would prefer this: L = ( (a, 1), (b, 2), (c, 3), (foobar, 4)) over this: L === T/T: a 1 b 2 c 3 foobar 4 Right? Your issues with tabs aside, I think it is impossible to ignore the the readability improvement. Not even speaking of how many commas and bracket you need to type in the first case. M -- https://mail.python.org/mailman/listinfo/python-list