Re: Associative array with duplicated keys?
On Friday, 6 November 2015 at 14:28:53 UTC, cym13 wrote: auto aa = ["a":10, "b", 42, "a":20]; This should readauto aa = ["a":10, "b":42, "a":20]; of course.
Re: Associative array with duplicated keys?
On Thursday, 5 November 2015 at 13:08:20 UTC, Adam D. Ruppe wrote: On Thursday, 5 November 2015 at 10:04:02 UTC, Andrea Fontana wrote: Anyway: are duplicated keys on declaration allowed? They shouldn't be... Why? I'll admit it is something I've never even thought of using, but every language I know (just tested with python, lua, scheme and js) accepts it and as far as I can tell from a user perspective boils auto aa = ["a":10, "b", 42, "a":20]; down to: int[string] aa; aa["a"] = 10; aa["b"] = 42; aa["a"] = 20; This is deterministic and could allow one to build an associative array through a mixin for example while still giving default values. As I said, it's not something I've used but I think we should consider it.
Re: Associative array with duplicated keys?
On Thursday, 5 November 2015 at 10:04:02 UTC, Andrea Fontana wrote: Anyway: are duplicated keys on declaration allowed? They shouldn't be...
Re: Associative array with duplicated keys?
https://issues.dlang.org/show_bug.cgi?id=15290
Re: Associative array with duplicated keys?
On Thursday, 5 November 2015 at 08:55:10 UTC, Andrea Fontana wrote: Check this: http://dpaste.dzfl.pl/ebbb3ebac60e It doesn't give any error or warning. And writeln seems confused (do you see that "," at the end?) This is an outright bug, please report on issues.dlang.org: void main() { import std.stdio : writeln; ["key": 10, "key" : 20, "key" : 30].length.writeln; ["key" : 30].length.writeln; } Prints: 3 1
Re: Associative array with duplicated keys?
On Thursday, 5 November 2015 at 10:04:02 UTC, Andrea Fontana wrote: Anyway: are duplicated keys on declaration allowed? IMHO This should at least be a warning.
Re: Associative array with duplicated keys?
On Thursday, 5 November 2015 at 09:27:35 UTC, tcak wrote: On Thursday, 5 November 2015 at 08:55:10 UTC, Andrea Fontana wrote: Check this: http://dpaste.dzfl.pl/ebbb3ebac60e It doesn't give any error or warning. And writeln seems confused (do you see that "," at the end?) I am sure the coder of writeln was lazy to prevent putting ", " after last item. You can report it as a bug I guess. Not really: it appears only if array has duplicated keys. Anyway: are duplicated keys on declaration allowed?
Re: Associative array with duplicated keys?
On Thursday, 5 November 2015 at 08:55:10 UTC, Andrea Fontana wrote: Check this: http://dpaste.dzfl.pl/ebbb3ebac60e It doesn't give any error or warning. And writeln seems confused (do you see that "," at the end?) I am sure the coder of writeln was lazy to prevent putting ", " after last item. You can report it as a bug I guess.
Associative array with duplicated keys?
Check this: http://dpaste.dzfl.pl/ebbb3ebac60e It doesn't give any error or warning. And writeln seems confused (do you see that "," at the end?)