Pulling some builtin logic out
Kaja
kaja.fumei at gmail.com
Mon Mar 31 10:03:07 PDT 2008
Walter wrote in the docs:
>Associative Arrays
>
>The main benefit for this is, once again, syntactic sugar. An
>associative array keying off of a type T and storing an int value is
>naturally written as:
>
> int[T] foo;
> rather than:
>
>import std.associativeArray;
>...
>std.associativeArray.AA!(T, int) foo;
>Builtin associative arrays also offer the possibility of having associative
>array literals, which are an often requested additional feature.
And he's not big on standrdizing a library, but what if we could have the syntactic sugar and flexibility? What if int[T] mapped to an interface for associative arrays rather than a class or builtin type? Standardize the interface and not the implementation.
Then someone could still do something like this:
class MyAA(K, V) : std.associativeArray(K, V)
{
// insert my implementation
}
// compiler choice. probably builtin implementation
int[string] foo;
// programmer choice.
int[string] foo2 = new MyAA!(string, int)();
Thoughts? Comments?
More information about the Digitalmars-d
mailing list