October 15, 2020
Setting:

Let's assume you have two teams, one is focusing on the application and one team is building application libraries.

The application team want a simple and easy feature set and the library team wants all  the flexibility they can get.

How would you separate D's various features into the library group and which features are vital for the application side (business logic)?

I would say that the following would be tilted towards libraries:
Explicit templating (using the keyword "template"), alias this…
Maybe auto ref, inout?

What do you think?