#624: pluggable everything
---------------------+------------------------------------------------------
 Reporter:  allison  |       Owner:     
     Type:  roadmap  |      Status:  new
 Priority:  normal   |   Milestone:  3.6
Component:  none     |     Version:     
 Severity:  medium   |    Keywords:     
     Lang:           |       Patch:     
 Platform:           |  
---------------------+------------------------------------------------------

Comment(by whiteknight):

 Replying to [comment:2 Infinoid]:
 > We already have dynamic and pluggable HLLs, PMCs, and ops.  We also have
 dynamic (though not yet pluggable) runcores and GCs.  Similarly, I/O
 objects are pluggable because they're just PMCs.

 I think we're also going to want to include compiler front-ends in this
 list. IMCC and PIRC should be able to be swapped out for other front-ends
 if wanted.

 As to the idea of a pluggable GC, I think that it is certainly very
 possible to do. Once we've modified Parrot to support compacting/compiling
 GCs, we will be able to deinitialize one core without finalizing it,
 initialize the next core, and then move all the headers from one to the
 other. Some cores may have an interchangable storage format so we could
 just move the pools from one to the other. In other cases will will have
 to allocate new pools and arenas and move the headers to them. So long as
 we are not in the middle of a mark or a sweep phase, it should be very
 possible to hot-plug cores at runtime.

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/624#comment:3>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to