This is perhaps the most important function in the entire program. This is where all of the X10 state matching occurs. It is clearly (and admittedly by the comments) some of the worst PERL code in history. Even worse, it demonstrates a complete lack of understanding of X10 in general. Amazing that in all these years the only changes in here are some tinkering I did the first week after I downloaded mh in 2005. My old comments are still in there.
All of the rest of this X10_Interface/X10_Item/etc. crap sits on top of this function like a wobbly, inverted pyramid. Any rewriting of MH/X10 should have started here. So of course they left it alone and piled more crap on top of it. That's how these losers do things. Backwards. Granted the code is so lousy that you have to start out fresh (and you have to understand X10.) This was one of the last pieces completed for the upgrade. While I was wrapping that up, pinhead was busy piling on more trash. Pure genius.
I broke the lock on the mailing list so I could warn that the new release was a half-baked disaster. What happened? Bruce Winter made a rare appearance and apologized for his inability to keep me locked out. Why are they so scared to hear dissenting opinions? What sort of "open source" project is this when the developers start crying and threatening to "resign" every time they hear criticism, requiring all dissenting voices to be muted? The answer is: an increasingly lousy one.