DIP74 - where is at?

Ola Fosheim Grøstad via Digitalmars-d digitalmars-d at puremagic.com
Tue Oct 13 09:04:01 PDT 2015


On Tuesday, 13 October 2015 at 13:02:43 UTC, Ola Fosheim Grøstad 
wrote:
> That said, if you have:
>
> 1. writer-ownership as a feature
> 2. mark variables as "only writable by one owner"
>
> Then the compiler can drop some read locks for the _owning_ 
> thread.
>
> But D does not have ownership as a feature beyond "thread local 
> memory"?

I think the D designers should take a long and hard look at Pony:

isolated: deny global read/write, deny local read/write
transition: deny global read/write, deny local write
reference: deny global read/write
value: deny global write, deny local write
box: deny global write aliases
tag: allow all aliases

_loosely_ translated:

isolated: void*
transition: const T*
reference: T*
value: immutable T*
box: globally as shared const T*, locally as shared T*
tag: shared T*

So D lacks some way to express the "box" type?




More information about the Digitalmars-d mailing list