The state of string interpolation...one year later

Jonathan Marler johnnymarler at gmail.com
Sun Mar 17 16:50:13 UTC 2019


On Sunday, 17 March 2019 at 14:20:20 UTC, Rubn wrote:
> Seems you've done everything but write a DIP, I don't really 
> see why this feature should be exempt from the process. Even if 
> the process isn't the greatest, that isn't reason enough for it 
> to circumvent it.

I'll have to disagree with you here. I'm not sure if you've 
written a DIP but I have.

I started DIP 1011 about 2 years ago.  After about a year, it was 
forwarded to W&A and I got a response from Andrei that contained 
a fair number of errors.  To me it seemed that he didn't take 
enough time to read/understand the proposal (I've heard this 
isn't the first time this has happened). The proposal itself is 
pretty simple, but the ramifications of the change weren't so 
clear.  A discussion between the leadership and the points they 
had questions about would have been very helpful early on to know 
where to put effort into researching the proposal.  However, 
that's not how the DIP process is written to work.  After 
Andrei's response I attempted to discuss their concerns but 
everything was filtered through the DIP manager Michael Parker 
and they never responded to my comments and questions.  We left 
off with them providing an example library implementation asking 
me to comment on it. I did so, explaining that their example was 
incorrect and had little bearing on the DIP itself as they had 
implemented different semantics than what the DIP was proposing, 
but then they never responded.  That was about a year ago, and 
the DIP is still considered to be in "Formal Review".

In my opinion the DIP process is broken.  I don't want to 
introduce a potentially good feature for D into a system where I 
believe it will actually harm the chances for the feature rather 
then help them.  If the process is fixed however, I will gladly 
create a DIP and would look forward to really hashing out the 
feature and seeing how it could best be implemented.  D has a big 
potential to make a splash with this feature by showcasing its 
meta-programming capabilities with a zero overhead implementation 
of string interpolation that also happens to be the most 
powerful/flexible one out there. I've heard some pretty cool 
ideas from people on it that I hadn't thought of, and would love 
to work with the community on creating a robust well-researched 
proposal, but I believe if I use the current DIP system as it 
exists to introduce it, it will actually make it more likely to 
fail than if I didn't write a DIP at all at this point.

Please understand, I don't shy away from good, robust work and 
research.  I'm a highly motivated mathematician, who loves 
optimizing and finding elegant solutions.  That's what I like 
spending my time on.  Researching language proposals is exactly 
the type of work I like to do. I spend alot of time reading and 
researching other languages and the features they bring to the 
table. I would very much enjoy contributing to a DIP process that 
fosters collaboration and feedback that results in more consensus 
and communal understanding.



More information about the Digitalmars-d mailing list