Top 5
Benji Smith
dlanguage at benjismith.net
Wed Oct 8 13:55:17 PDT 2008
Andrei Alexandrescu wrote:
> Ok, per Aarti's suggestion: without speaking officially for Walter, let
> me ask this - what do you think are the top issues you'd like to see
> fixed in D?
1. Merge phobos and tango (and solve whatever obstacles are currently
preventing a D2 tango branch). I won't use D2 until I can use Tango with
it, and I think having two semi-standard libraries is a bad state of
affairs for the community.
2. Syntax tricks are usually more trouble than they're worth, especially
when they create language ambiguities. Parentheses should be mandatory
for function calls. Property-style function invocation should be
eliminated. opCall should be fed to a crocodile and never heard from again.
3. The type-system is getting way too complex. Features like the const
system, functional purity, and shared vs unshared memory are really neat
ideas. But the implementation of all those features as aspects of the
type-system creates a model that's hard for me to wrap my head around.
In many cases, I don't know when I need to write casts or when to create
duplicate function implementations (differing only in their prototype).
This is the primary reason I've avoided D2.
4. String processing sucks. Writing code that works transparently with
all three character types and correctly handles all unicode characters
is basically impossible. Or at least it feels impossible. Trying to
support both Phobos and Tango in the same string-processing routine is a
definite no-go. In an ideal world, string-processing code shouldn't have
to be littered with "static if" all over the place.
5. I don't really feel like D needs any new features. I'd rather have
the majority of new work be focused on library development, tools,
stability, optimization of the back-end, and maybe a rewrite of the
linker. (I could be wrong, but I often get the impression that the
status quo of the linker prevents certain language features and
optimizations. We have a 21st century language, with a 1980's linker.)
HONORABLE MENTIONS:
* I'd love to be able to get a stack trace for every uncaught exception.
I know that there are libraries to do this, but I'd like it to be built
into the language, without any platform-dependent functionality. Stack
traces on windows should be exactly the same as on linux.
* I keep hearing about how the DMC backend needs improvement in its
floating-point code. Personally, I think this would be a bigger win than
pure functions, whose optimization opportunities are still hypothetical.
--benji
More information about the Digitalmars-d
mailing list