@Anonymous
How does it go against BIM? Doesn't matter what is used to create an object as long as the information is there. You can assign materials to a roof the same way you can with topography.
Principles of BIM?? Do you think Revit is BIM?? Revit is just a tool in the BIM process. Just like Autocad, Civil3D, ArchiCAD, Bentley, Catia, etc are tools as well.
Keeping familes and methods by what they are....door for a door or a wall for a wall or roof for a roof, just shows that you can't think OOTB.
It's not a hack...it's using the software to do more than it was originally intended. ArchiCAD was doing stuff like that way before Revit came along as well. You must hate Dynamo too...which is a way to hack the API to get "information" from where the software can't.