[Issue 8993] Implement unique references/isolated memory

2017-07-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=8993

Vladimir Panteleev  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |WONTFIX

--- Comment #15 from Vladimir Panteleev  ---
Hi,

I believe that today enhancement requests to the language itself need to be
presented as a DIP: https://github.com/dlang/DIPs

I see from bearophile's comment that a DIP has already been submitted.

As such, and also seeing that this was filed over 4 years ago and the
discussion lasted just one day, I'm going to close this, but feel free to
reopen if you disagree.

--


[Issue 8993] Implement unique references/isolated memory

2016-06-29 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=8993

ZombineDev  changed:

   What|Removed |Added

   Keywords||safe
 CC||petar.p.ki...@gmail.com

--


[Issue 8993] Implement unique references/isolated memory

2013-02-28 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #14 from bearophile_h...@eml.cc 2013-02-28 18:37:48 PST ---
See also:

https://github.com/D-Programming-Language/dmd/pull/1700

http://wiki.dlang.org/DIP29

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-11 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993


Jacob Carlborg d...@me.com changed:

   What|Removed |Added

 CC||d...@me.com


--- Comment #11 from Jacob Carlborg d...@me.com 2012-11-11 01:54:31 PST ---
I recommend you take a look at some blog posts from Bartosz Milewski. He was
involved for a while in the D community and had some ideas about race-free
multithreading with the help of a type system supporting using unique and
lent. Search in the newsgroups archives for Bartosz Milewski.

http://bartoszmilewski.com/2009/05/26/race-free-multithreading/

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-11 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #12 from S�nke Ludwig slud...@outerproduct.org 2012-11-11 
04:49:41 PST ---
(In reply to comment #11)
 I recommend you take a look at some blog posts from Bartosz Milewski. He was
 involved for a while in the D community and had some ideas about race-free
 multithreading with the help of a type system supporting using unique and
 lent. Search in the newsgroups archives for Bartosz Milewski.
 
 http://bartoszmilewski.com/2009/05/26/race-free-multithreading/

I've read those back then. Bartosz' system was very powerful but unfortunately
complex to implement and had some implications on performance. The good thing
with the MS approach is that it accomplishes an important part of it without
requiring explicit owner tracking. It surely doesn't fix 'shared' the way that
Bartosz' system would, but at least it alleviates the need for it in quite some
places.(In reply to comment #11)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-11 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993


Rob Jacques sandf...@jhu.edu changed:

   What|Removed |Added

 CC||sandf...@jhu.edu


--- Comment #13 from Rob Jacques sandf...@jhu.edu 2012-11-11 23:25:31 PST ---
(In reply to comment #8)
 implement further relaxations bit by bit (e.g. implicit scoped
 isolated-writable-isolated conversion). 

To clarify for those who didn't read the paper, the implicit conversion of
writable-isolated only applies to the return value of a moderately pure
function: (a pure function whose arguments are only isolated or immutable) So
it is similar to the implicit conversion of the return of a strongly pure
function from mutable to immutable.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993


Alex R�nne Petersen a...@lycus.org changed:

   What|Removed |Added

 CC||a...@lycus.org


--- Comment #1 from Alex R�nne Petersen a...@lycus.org 2012-11-10 15:46:00 
CET ---
I think it's a bit too late to add new keywords to the language, other than
ones prefixed with __, and we certainly wouldn't want something this useful
to be subject to such annoying-to-type keywords...

This seems like a thing for D3 *if* D3 ever becomes a thing.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993


bearophile_h...@eml.cc changed:

   What|Removed |Added

 CC||bearophile_h...@eml.cc


--- Comment #2 from bearophile_h...@eml.cc 2012-11-10 08:24:06 PST ---
Writing a detailed DEP requires lot of work, but maybe for a request this
complex it's unavoidable.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #4 from Alex R�nne Petersen a...@lycus.org 2012-11-10 17:47:59 
CET ---
Yeah, no doubt shared is a disaster in general (I have posted several rants
about this in particular on the NG). We're effectively doing a lot of false
advertising with that type qualifier in particular, and people are writing code
as if it results in atomic operations (and then their code will break on !x86).

And immutable/const are only realistically usable with non-class types. I feel
you're spot on with the point about perceived satisfaction.

But it's not me you have to convince. It's Walter and Andrei...

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #5 from bearophile_h...@eml.cc 2012-11-10 09:48:35 PST ---
(In reply to comment #3)

 I apologize in advance for the following (general) rant:

I agree with what you say.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #7 from Peter Alexander peter.alexander...@gmail.com 2012-11-10 
10:04:02 PST ---
Just want to chime in to say that I 100% agree with S�nke and Alex.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #6 from bearophile_h...@eml.cc 2012-11-10 09:50:22 PST ---
(In reply to comment #5)

 I agree with what you say.

But in the end this enhancement request is not enough. A detailed DEP is
probably necessary. You don't have to write it down all yourself, of course.
Once the DEP is written, you will be in a better position to rant :-)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #8 from S�nke Ludwig slud...@outerproduct.org 2012-11-10 10:38:42 
PST ---
(In reply to comment #6)
 (In reply to comment #5)
 
  I agree with what you say.
 
 But in the end this enhancement request is not enough. A detailed DEP is
 probably necessary. You don't have to write it down all yourself, of course.
 Once the DEP is written, you will be in a better position to rant :-)

Agreed, a DIP is probably in order for this change. It would probably be enough
to concentrate on the simple parts first (implicit isolated-immutable
conversion and free psasing of isolated values between threads) and then
implement further relaxations bit by bit (e.g. implicit scoped
isolated-writable-isolated conversion). Allocating time for a proper DIP is
difficult for me currently, but I guess it could be marked as work-in-progress
in the wiki so that it can be completed step by step?

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #9 from bearophile_h...@eml.cc 2012-11-10 11:11:35 PST ---
(In reply to comment #8)

 but I guess it could be marked as work-in-progress
 in the wiki so that it can be completed step by step?

I think this is OK.

In the paper they say the Microsoft programmers have implemented that system
one piece at a time. So take a look at those implementation steps (avoiding
their eventual mistakes).

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 8993] Implement unique references/isolated memory

2012-11-10 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8993



--- Comment #10 from S�nke Ludwig slud...@outerproduct.org 2012-11-10 
11:22:20 PST ---
(In reply to comment #9)
 (In reply to comment #8)
 
  but I guess it could be marked as work-in-progress
  in the wiki so that it can be completed step by step?
 
 I think this is OK.
 
 In the paper they say the Microsoft programmers have implemented that system
 one piece at a time. So take a look at those implementation steps (avoiding
 their eventual mistakes).

Oh, I meant more the process of writing the actual DIP in that sentence (I
never did anything on the wiki and don't know the usual process for editing a
DIP). So my plan was basically to only include the first step of the
implementation into the DIP and then file the rest as enhancement requests
should it get implemented at some point.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---