On Friday, 27 February 2015 at 23:05:39 UTC, Zach the Mystic wrote:
On Friday, 27 February 2015 at 22:10:11 UTC, Marc Schütz wrote:
I put my own version into the Wiki, building on yours:
http://wiki.dlang.org/User:Schuetzm/scope2

It's quite similar to what you propose (at least as far as I understand it), and there are a few further user-facing simplifications, and provisions for backward compatibility. I intentionally kept it as concise as possible; there are neither justifications for particular decisions, nor any implementation details, nor examples. These can be added later.

I like this phrase: "Because all relevant information about lifetimes is contained in the function signature..." This keeps seeming more and more important to me. There's no other place functions can "talk" to each other -- and they *really* need to talk to each other for any of these advanced features to work well. I'm pretty sure it's really the function signature which needs designing -- what to add, what can be deduced (and therefore not added), and how to express them all elegantly and simply. And of course, my favorite Castle in the Sky: attribute inference!

I won't really know how your proposal works until I see code examples.

For me, it's important to keep the implementation details and algorithms separate from the basic workings. Otherwise it's hard for me to fully understand it in all aspects.

Okay, but hopefully some examples are forthcoming, cause they help *me* think.

Yes, definitely! I already started with the inference algorithm, see the other post. But I'll go to bed now, it's already past midnight.

Reply via email to