Hi Vlad,
Thanks for taking a quick look!
I think you're correct in understanding the basic design, and I appreciate that you find the proposal interesting and don't mind having a breaking change. Unfortunately, Java 8 seems to be the only option; otherwise, the model implementation would be much less elegant (simply put, ugly).
I'm looking forward to hearing from you any time!
Best regards,
Vladimir
P.S.
One minor note I thought might be worth clarifying: while IHElementMirror appears to be functionally equivalent to the old IHandle, it's not "a handle", but "a mirror" (in particular, its identity/equality is not interesting, and not specified).
IHElement is the real handle, while IHElementMirror provides a reflection capability for "generic code". This trick allows to effectively separate "application-level" and "infrastructure-level" functionality within a Handly-based model.
Hi Vladimir,
This is very interesting, I will check it out when I get some time. From my point of view, having a breaking change is not a big issue, because I haven't deployed any implementation yet. I am a bit concerned about Java 8, because not all users can update to new Eclipse versions when they want, but hopefully that won't be a problem by the time I actually get to release the handly-based implementation.
If I understand correctly from a quick read, IHElementMirror is basically the old IHandle and IHElement is the simplest base interface for the application model that provides a link to the Handly model.
best regards,
Vlad