On Friday, 13 March 2015 at 02:17:31 UTC, bearophile wrote:
Andrei Alexandrescu:

## some or all of @safe, immutable, pure should be the default

+1
I have a ER on @safe by default and Walter seems to agree. But I'd like more. A "strict D" mode? :-)

Yes, but what is a "strict mode". I agree with most of what is said about D and Go in the top post, but is there a market for yet another high level language that isn't high level enough?

I've spent some time hashing out a "D-minus" that could be compiled with D2 (or at least with a simple transform), and it is more attractive to move towards lower level programming and optimization when creating a subset...

So what is a a reduced D that is largely compatible with D2? I would remove features that people love, like modular arithmetics. You can do that since it is undefined when you move out of the range. You can also introduce new hints as @uda.

The overall better approach is to generalize and simplify the core semantics of the language then have D2/D3/simpleD in the same compiler and allow them to mostly work together (separate files, but D2 code importable into D3)

D can't be a single-purpose language. And it has more moving parts compared to Go.

That's true, what one could consider is better separation between library-features and common-code features. Like Python where you generally can leave all the __XXX__, yield etc to library code and keep a simple surface (largely thanks to tuples/lists btw).

Reply via email to