On 2022-01-17 01:36, Steven D'Aprano wrote:
On Sun, Jan 16, 2022 at 04:23:47PM -0800, Brendan Barnwell wrote:
On 2022-01-16 16:11, Steven D'Aprano wrote:
>Do they? How are they different? You have a start delimiter and an end
>delimiter.
>
[snip]
Hell, even if your argument is just "Nope, I just don't like the look of
it!", I would respect that even if I disagree. Aesthetics are important,
even when they are totally subjective.
If it helps, Julia supports this syntax for typed dicts:
Dict{keytype, valuetype}(key => value)
where the braces {keytype, valuetype} are optional. That's not a display
syntax as such, or a prefix, but it is visually kinda similar.
Here are some similar syntax forms with prefixes:
* Dylan list displays: #(a, b, c)
* Smalltalk drops the comma separators: #(a b c)
* Scheme and Common Lisp: '(a b c)
and double delimiters:
* Pike: ({ a, b, c })
* Pike dicts: ([ a:b, c:d ])
Not that we could use any of those as-given.
How about doubling-up the braces:
{{1, 2, 3}}
and for frozen dicts:
{{1: 'one', 2: 'two', 3: 'three'}}
if needed?
Those currently raise exception because sets and dics are unhashable.
It might be confusing, though, if you try to nest them, putting a
frozenset in a frozenset:
{{ {{1, 2, 3}} }}
or, without the extra spaces:
{{{{1, 2, 3}}}}
but how often would you do that?
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/JJICU47NVIU5MJYRASI6SM4J7UFWBGFQ/
Code of Conduct: http://python.org/psf/codeofconduct/