Embrace the from template?

aliak something at something.com
Fri Aug 24 10:58:29 UTC 2018


On Friday, 24 August 2018 at 06:41:35 UTC, Jonathan Marler wrote:
> Ever since I read 
> https://dlang.org/blog/2017/02/13/a-new-import-idiom/ I've very 
> much enjoyed using the new `from` template.  It unlocks new 
> idioms in D and have been so useful that I thought it might be 
> a good addition to the core language.  I've found that having 
> it in a different place in each project and always having to 
> remember to import it makes it much less ubiquitous for me.
>
> One idea is we could add this template to `object.d`.  This 
> would allow it to be used from any module that uses druntime 
> without having to import it first.  The template itself is also 
> very friendly to "bloat" because it only has a single input 
> parameter which is just a string, extremely easy to memoize.  
> Also, unless it is instantiated, adding it to object.d will 
> have virtually no overhead (just a few AST nodes which would 
> dwarfed by what's already in object.d).  It would also be very 
> easy to add, a single PR with 4 lines of code to druntime and 
> we're done.
>
> Of course, if we don't want to encourage use of the `from` 
> template then this is not what we'd want.  Does anyone have any 
> data/experience with from?  All I know is my own usage so feel 
> free to chime in with yours.

One of the first things I do after a dub init is create a file 
called internal.d with the from template in it. My only gripe 
about this template is it's "autocompletion-able-ness" in IDEs 
and if that can be handled.

I would not want it globally imported though, "from" is quite 
popular as an identifier and D doesn't let you use keywords as 
identifiers.

Cheers,
- Ali


More information about the Digitalmars-d mailing list