#452: [TODO] Don't use MULTI when not needed
---------------------+------------------------------------------------------
Reporter: allison | Owner:
Type: todo | Status: new
Priority: normal | Milestone: 1.4
Component: none | Version:
Severity: medium | Keywords:
Lang: | Patch:
Platform: |
---------------------+------------------------------------------------------
Comment(by allison):
It's actually the correct semantics for the existing MULTIs in core PMCs,
because a simple type ID selection is what the old C-level MMD system
used, so it's what they were written for. (Some of the MMD "bugs" are
caused by PMCs that expect switch semantics but are now getting full
multiple dispatch.)
Switch semantics are safe for core types, because they're interacting
between a pre-defined set of PMCs. Outside the core, it's less applicable,
unless you're working within a tightly grouped set of PMCs (like, perhaps,
all the PMCs for one HLL).
It's impossible for the PMC parser to know when it's safe to use switch
semantics instead of full multiple dispatch semantics. It has to be a
hand-written optimization.
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/452#comment:2>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets