← Back to context

Comment by commandersaki

3 days ago

I'm not much of a PL nerd, what should it do?

Return false! They aren't equal. But of course we're comparing a reference to a primitive, so we either lift the primitive to a reference, or lower the reference... so here we are.

Fail to compile when you assign something which isn't an integer to an integer.

  • None of that code does that; the "issue" is with `==` between an int and an Integer. I'd accept a failure to compile _that_, but that does kind of kill the utility of the 99.9% of times where auto-boxing and unboxing is syntactically simpler.