If I concentrated on a C translation of Oxygen, and did nothing else, it would probably take about 6 to 9 months. (about 1500 hours). I am gradually gaining in C experience, but I think developing in FB is somewhat easier. The String handling in Basic is a major advantage, so I would like to defer this exercise until the code stops mutating so much. I also anticipate that a working C emitter will greatly reduce the length of this task.
Re macro:
The well-disciplined use of macros should not cause any problems. If you like, you can call them templates and in-line functions
.
I believe C++ started out as a set of C macros, and these eventually became Classes and other C++ constructs
Charles