3 ms·
edit: Disregard this, it's actually the opposite (viz. next comment) and the inheritance remark is probably only for straight class inheritance. > no refine
by dlisboa 14y ago
edit: Disregard this, it's actually the opposite (viz. next comment) and the inheritance remark is probably only for straight class inheritance.
> no refinement inheritance
R2 included R1, which defined `bar` on String. Only the methods defined on R2 are used now with this change of plans. (I couldn't get to the ruby-lang issue, but I assume that's the reason).
- awj 14y ago...except the previous listing does basically the same thing, but doesn't have any comment about R1's refinements not working when you're using R2.
- dlisboa 14y agoAh, I misread the feature list (namely the text right above the examples, about Module#include). Matsumoto gives two of the same examples, the first in how he wants the feature to work (R2 having the refinements of R1 if it includes it) and the second in how it works at the moment (or doesn't work). If you try that code it breaks, he wants it to not break and return :bar.
- ianterrell 14y agoThank goodness I wasn't the only one confused by this. I stared at the code listing and stared at it, only to wonder what the difference was. :)