* the separate native type MMD enums are gone:
    MMD_ADD_INT<Integer> => MMD_ADD<Integer, INTVAL>
* the native types INTVAL..PMC occupy types 0..3
* this almost halfs the MMD_table size
* enum_type_PMC serves as Any
* the special PMCs delegate, Ref and alike don't register
  MMD functions any more
* get_mmd_dispatch_type (the core of MMD opcode dispatch) is using
  the static MMD_table now as an (inefficiently big) cache
* if no entry is found, a dynamic lookup is done
* the native type MMD fallback functions are gone
* other fallback functions are unused:
  I don't think that we need these fallbacks anyway
* if no matching MMD is found, an exception is thrown
* the mmdvtregister opcode isn't needed any more:
* just define an appropriate @MULTI sub instead
* dynclasses/py*.pmc messed around with MMD NCI functions:
  it replaced the vtable, now Parrot infix multis are kept

leo




Reply via email to