On Tuesday, 14 January 2014 at 14:22:27 UTC, Timon Gehr wrote:
On 01/14/2014 10:11 AM, Paulo Pinto wrote:
On Monday, 13 January 2014 at 23:42:50 UTC, Timon Gehr wrote:
On 01/13/2014 11:05 PM, Paulo Pinto wrote:
Am 13.01.2014 22:31, schrieb Timon Gehr:
On 01/13/2014 10:11 PM, Walter Bright wrote:
Not to say there aren't other ways of doing things, but
with random
objects
becoming pinnable puts a big damper on things unless you
can identify
all the
objects that might be pinned and isolate them. But I
doubt that's
really
knowable up front.
The reason pinning doesn't particularly impede this is
because pinning
is rare.
In Java or in D? Eg. there are no unions in Java.
C# has unions.
http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.structlayoutattribute%28v=vs.110%29.aspx
"The common language runtime controls the physical layout of
the data
fields of a class or structure in managed memory. However,
..."
Did you also read the remaining part of the page,
Obviously.
or just looked for something to paste?
...
Look, you hadn't done anything besides pasting for backing up
your point or making it precise. I'll be proven wrong if you
are able to show us how you do the following in C#:
union U{
int x;
Object y;
}
You can control the layout, that is what matters. Not at what
level you
are expressing it.
...
Obviously.
Ignoring what such runtimes offer, only puts D at disadvantage
when
comparing feature lists, which many in the industry do.
...
Every resource I have encountered indicates that C# does not
offer this functionality because it is detrimental to GC, eg:
http://stackoverflow.com/questions/17771902/struct-memory-hack-to-overlap-object-reference-is-it-possible
Excuse me for being stupid.
I just read MSDN without trying it out, so I wasn't aware that
object references cannot be made to overllap with other data,
even in unsafe structs.
Me and my big mouth. Better test it properly next time.
--
Paulo