Changes between Version 21 and Version 22 of PMCUnionDeprecationTasklist

Show
Ignore:
Timestamp:
02/24/09 19:18:03 (13 years ago)
Author:
cotto
Comment:

add reason for UnionVal deprecation

Legend:

Unmodified
Added
Removed
Modified
  • PMCUnionDeprecationTasklist

    v21 v22  
    33 
    44The PMC Union is being deprecated, which means that any instances of PMC_int_val, etc need to disappear.  This is a big job with several gotchas. 
     5 
     6== Why == 
     7 
     8from #parrotsketch: 
     9{{{ 
     10cotto>     allison, what's your reason for deprecating the PMC UnionVal?   
     11           (I can see some reasons of my own, I'm just curious what you see.) 
     12chromatic> It's typeunsafe and it's a premature optimization. 
     13chromatic> It makes PIR-level subclassing Very Difficult. 
     14allison>   cotto: it prevents subclassing, for one (because the child may be trying to use the union val differently) 
     15cotto>     thanks.  eoq 
     16allison>   cotto: and just generally dangerous, to be using blobs of memory like that 
     17chromatic> It violates encapsulation. 
     18allison>   chromatic: yes, those too 
     19NotFound>  And it increases coupling between pmcs 
     20allison>   cotto: it also bloats the PMC header structure 
     21}}} 
    522 
    623== What Needs to Happen ==