Jacob Carlborg Posted in reply to Dicebot



Permalink Reply

On 2016-08-21 22:01, Dicebot wrote: > This week I had a tele-meeting with Andrei and Walter regarding the fate > of DIP1000 ( > and intented way to move forward with it. This is a short summary of the > meeting. > > Approval of DIP1000 > ------------------- > > DIP1000 is going to be approved as the basis of the idea > but exact specification may change during implementation and as a result > of incorporating some ideas from feedback threads > ( > ). > > Core principles that are sure to stay at this point: > - scope is a storage class > - scope is non-transitive > - scope is @safe only > - responsibility of implementing complicated scope-using types is on > developer, compiler magic is intended to be minimal > > Any changes in intended DIP1000 spec will be reflected in original > document ( > > Implementation of DIP1000 > ------------------------- > > Walter is currently working on implementing the support via > , which will take some time. Once > it is more feature complete I'll contact Martin for possible > out-of-release preview compiler builds from that branch to try it out > easily. About that time we will start another feedback thread in the NG > with a more practical focus - featuring more code examples and design > idioms. > > Life after DIP1000 > ------------------ > > It is acknowledged that DIP1000 itself does not allow to implemented > completely @safe reference counting, primarily because of an issue with > @trusted destructor and re-assignment. Intention is to follow up with > another proposal (not directly related) to address the issue from > another angle - but this will only become in focus after DIP1000 is > finished. This week I had a tele-meeting with Andrei and Walter regarding the fateof DIP1000 ( https:// github.com/ dlang/DIPs/ blob/master/ DIPs/DI P1000.md and intented way to move forward with it. This is a short summary of themeeting.Approval of DIP1000-------------------DIP1000 is going to be approved as the basis of the ideabut exact specification may change during implementation and as a resultof incorporating some ideas from feedback threads http:// forum. dlang.org/ thread/ pqsiqmkxen rwxoruzaml@ forum. dlang.org and http:// forum. dlang.org/ thread/ rwxcfapvpf iqmfsuixlf@ forum. dlang.org ).Core principles that are sure to stay at this point:- scope is a storage class- scope is non-transitive- scope is @safe only- responsibility of implementing complicated scope-using types is ondeveloper, compiler magic is intended to be minimalAny changes in intended DIP1000 spec will be reflected in originaldocument ( https:// github.com/ dlang/DIPs/ blob/master/ DIPs/DI P1000.md ).Implementation of DIP1000-------------------------Walter is currently working on implementing the support via https:// github.com/ dlang/dmd/ pull/5972 , which will take some time. Onceit is more feature complete I'll contact Martin for possibleout-of-release preview compiler builds from that branch to try it outeasily. About that time we will start another feedback thread in the NGwith a more practical focus - featuring more code examples and designidioms.Life after DIP1000------------------It is acknowledged that DIP1000 itself does not allow to implementedcompletely @safe reference counting, primarily because of an issue with@trusted destructor and re-assignment. Intention is to follow up withanother proposal (not directly related) to address the issue fromanother angle - but this will only become in focus after DIP1000 isfinished. -- /Jacob Carlborg