If you could make any changes to D, what would they look like?
Dennis
dkorpel at gmail.com
Mon Oct 25 14:52:55 UTC 2021
On Monday, 25 October 2021 at 13:42:19 UTC, Guillaume Piolat
wrote:
>> If you could make any changes to D, what would they look like?
>
> It's a great thing other people get to decide, because I would
> remove:
> - pure
> - shared
> - @property
> - inout
> - GC-calling-destructors
> - virtual-by-default
> - real
> - synchronized
> - inout
> - alias this
> - and parts of Phobos too.
>
> But D is also about catering to many different people.
Apart from `pure`, I agree with everything on that list, and
would even add a bunch of things:
- Module constructors
- `lazy` parameters
- `in` / `out` parameters
- `in` / `out` contracts
- Function body literals (`{}` instead of `() {}`)
- Typesafe Variadic Functions (`foo(int[] a...)`)
- String literals starting with `q`
- The remaining octal literals (00-07)
- `is()` expressions
- `switch` with run-time variable cases
- `switch` with string cases
- `alias` reassignment
- `__traits(compiles)`
- `opDispatch`
- `opCall`
- `opApply`
More information about the Digitalmars-d
mailing list