I'd be all for just eliminating the "class", "record", and "type" helper and adding support for just using "helper" in all modes.
type
TPointHelper = helper for TPoint
end;
TCanvasHelper = helper for TCanvas
end;
TDoubleHelper = helper for Double
end;
TInterfaceHelper = helper for IInterface
end;
I know this would make code written this way incompatible with Delphi, but I think pretending the helper type serves no actual purpose. The only thing it does is it makes it harder for developers to remember which names to use in which cases. The compiler should be able to figure it out.