genpaku has quit [Remote host closed the connection]
genpaku has joined #jruby
razetime has quit [Ping timeout: 250 seconds]
razetime has joined #jruby
<headius>
good morning
<headius>
enebo: this refinement thing is just a missing method `import_methods` added in 3.1
<headius>
import_methods is a bit tricky though... it copies the methods from given module into the current refinement, enabling refinements in them at the same time
<headius>
so it might be something we'd have to recompile at that point
<headius>
we are also behind on adding the Refinement class though so I will start with that
razetime has quit [Ping timeout: 252 seconds]
razetime has joined #jruby
<headius>
refinements are becoming pervasive enough we may need to start compiling that logic in all the time and just switch call site at runtime if a refinement becomes active later
<enebo[m]>
yay
<headius>
I have Refinement class created and that allows MRI refinement tests to boot again, but they need import_methods to run
<headius>
testing a dummy version now
<enebo[m]>
My ordering thing is a bit more complicated in that we have instrs attrassign(lhs, rhs) and ivar(var, value) which are pairs which means doing the lhs in order then the rhs in order is odd
<headius>
so you have to piece that apart more
<enebo[m]>
yeah. I am trying to record things which require order and evaluate then make the instr
<enebo[m]>
I think it will work
<headius>
MRI test_refinement runs again now
<headius>
with a dummy import_methods that does nothing at all
<enebo[m]>
this is only weirder than it might seem because masgns can have nested masgns and the nested ones have to eventually get their values from the first one but the lhs of the nested ones have to evaluate before the value of the outermost one