Old story (30 years ago)
Cut Hour
cuthour@gmail.com
Mon Jan 9 10:21:25 GMT 2023
Hello.
As an extension to ELF format that does not lose generality, it is
conceivable that symbols can perform four arithmetic operations with
other symbols and constants during resolution. Symbol resolution
information may be stored in Reverse Polish. How much does this
reduce recompilation of source files?
The original motivation was the problem of recompilation caused by
the advent of C++. What's new in OOP? It's inheritance.
Encapsulation without inheritance can be done in plain C without
recompilation problems. So what is inheritance? It's the offset of
member variables and member functions. It is not good to hard-code
this at compile time. Should be deferred until link time.
A long time ago, I tried to create a language in which every class
had a uniform method table and all methods were called via a single
pointer, and to see how practical it would be. I thought that it
would be possible to create a suitable translator to C, but I was
frustrated because of such a problem. The conclusion is that "the
current compiler infrastructure (such as binutils) assumes ONLY
STRUCTURED PROGRAMMING".
I don't know very well about Clang or LLVM. So this might be
already out of date. Any need for this extended ELF do you think?
More information about the Binutils
mailing list