On 31 July 2013 13:15, David Jeske <[email protected]> wrote:
> On Tue, Jul 30, 2013 at 4:08 PM, Jonathan S. Shapiro <[email protected]>
> wrote:
>>
>> 1. Typing support for deep immutability. It would be really useful to know
>> which subgraphs are deeply immutable and therefore can be accessed
>> concurrently without any locking at all. It's even possible to imagine
>> schemes in which phase changes are possible in both directions between
>> normal and deeply immutable states. This helps a lot in some fork/join style
>> concurrency, but it's certainly not a cure-all.
>
>
> I'm intrigued by deep-immutability with easy deep COW semantics, that or
> STM. Something that enables the simplicity of immutability for concurrency,
> and the ability to have efficient COW snapshots with roll-forward/back (say
> for undo). Needs a way to construct cyclic immutable structures though.

For my original intended usage of bitc, I would like to have mechanism
to implement this sort of thing, but not much in the way of policy.  I
would like to, say, have one half of my program be an STG runtime
(call it X) with AME and C4, another part be a single-threaded machine
with virtual dispatch (Y), and for yet another to have transactional
access to durable on-disk btrees and hash-tables (Z).

The lack of policy is really to help with tying all of that together -
the hand-written GCs follow references from X to Y, for example.
Explicit object layout gets you as far as being able to describe the
read barriers in X and giving evidence of their safety.  Even if I
were confident I could type that, I think that bitc may end up 'too
practical' for those purposes.

-- 
William Leslie

Notice:
Likely much of this email is, by the nature of copyright, covered
under copyright law.  You absolutely may reproduce any part of it in
accordance with the copyright law of the nation you are reading this
in.  Any attempt to deny you those rights would be illegal without
prior contractual agreement.
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to