python vs d
bearophile via Digitalmars-d
digitalmars-d at puremagic.com
Tue Apr 29 05:16:14 PDT 2014
John Colvin:
> Any reason why this needs language support? I haven't tried it,
> but I can't see why it can't be trivially done in a library.
I don't yet know the answer. I have to think more about the
topic, and to try to implement something in library code. And
then I can judge (a bit) if the result is good enough.
In D there are things that can be implemented well enough in
library code (tensors). And we don't yet know if other things can
be implemented well enough in D library code (like Typedef, or
Algebric:
http://forum.dlang.org/thread/olpznzscwiqdysfqvydb@forum.dlang.org
Currently Algebraic is not acceptable). And then there are
things that now we know cannot be implemented acceptably well in
D library code (like Phobos tuples, that lack essential features
like unpacking in some different contexts. See Rust for an
example of simple and reasonably designed built-in tuples:
http://rustbyexample.github.io/examples/tuples/README.html ).
For D programmers to invest in the usage of (optionally) strongly
typed array indexing in their medium-integrity D programs (you
can avoid using that indexing style in script-like D programs),
such feature has to return them some valuable advantages. This
means this feature should increase compile-time safety and offer
a rich enough semantics. Otherwise it's a waste of time for the
people that implement it, because D programmers (rightfully) will
not use it.
If you look at Ada, where this feature is more developed, you see
some semantics that could be not so trivial to reproduce in D
library code.
Time ago I have suggested to add to D "enum preconditions" that
in theory can be used in library code to better implement some of
the static semantics of similar data structures.
Bye,
bearophile
More information about the Digitalmars-d
mailing list