Thank you for bringing up this discussion Alex, as I believe it's currently probably the most important feature to be considered in the plugin going forward.
Thanks also for the distinction because I can definitely confirm that most people probably were confusing the terms between how you explained it and how we were understanding it before.
To very briefly summarize, I will state that my personal opinion is that you should pursue the second option (Corona Proxy).
I'll explain why.
Perhaps my decision is more heavily influenced by the fact that my experience comes from the 3ds Max side of things using proxy objects there (as proxies either with Vray or Corona's cgeo objects), and that's why I probably confused the understanding of the current implementation. As to why which is the better option, as you well might know, ArchiCAD like most CAD and BIM software isn't that great at handling high-polycount objects - unlike say, 3ds Max or Cinema4D even without the proxy features of the various render engines (And granted those are not CAD or BIM software, but modelling software). In fact this has been a major bone of contention for years now with users asking the Graphisoft developers to provide a way to allow users to "instance" geometry the way you can with 3ds Max, to allow people to save on memory and facilitate smoother viewport navigation.
But there are other reasons why I think this would be a far better option, aside from memory handling, such as the fact that there already exists a large library of already proxied custom entourage objects (trees, cars, 3D people etc) for the various render engines that are commercially available - aside from the libraries that most users who use these other software have already developed themselves.
It would also facilitate the implementation of other features down the line with the plugin like the scatter object or feature for example, for creating grass lawn surfaces and forests or even crowds of people - things that are typically easy to do in a BIM software like ArchiCAD.
Obviously there are drawbacks to this option - like the fact that one has to have access to proxy files (cgeo) and objects or at least the means to create them outside of ArchiCAD (using either 3ds Max or Cinema4D) which a lot of ArchiCAD users might not have. There might also arise the complication of getting the right textures and maps saved and loaded with the files since I imagine it wouldn't be straightforward or easy to do so from within ArchiCAD and the Corona plugin without a material editor and information from the proxy file showing what's what.
However the current Proxy object implementation, which useful, also has its own drawbacks even if it were to be fully functionally implementation.
chief among this is that you're always going to be reliant on the person who created the GDL object to have done a decent enough job in making most of the functions accessible based on how they coded it, and sad to say, most GDL objects are just not that well coded and at the same time most ArchiCAD users are not GDL-coding proficient (again, another thing that ArchiCAD users have been begging Graphisoft to make more accessible via a better interface than line coding, to no avail).
The other obvious drawback is that there simply isn't as large a GDL library of custom objects available out there (to a high enough quality) that are available to ArchiCAD users as one can find of objects that are either Corona proxy files or capable of being converted into them.
Last but not least, correct me if I'm wrong, but this method wouldn't save any memory usage like the Corona proxy file (which should be representable either as a point cloud, a cube or a single 2D plane or a line or point in the viewscreen.).Which means, users will once again always be limited as to how many Proxy objects they can load before they hit the Polycount ceiling and the program begins to crawl and gets brought down to its knees.
Anyway, those are my quick thoughts and opinions.