@[email protected] to Programmer [email protected]English • 9 days agoThe meaning of thislemmy.mlimagemessage-square67fedilinkarrow-up1519arrow-down114
arrow-up1505arrow-down1imageThe meaning of thislemmy.ml@[email protected] to Programmer [email protected]English • 9 days agomessage-square67fedilink
minus-square@[email protected]OPlinkfedilink4•8 days agoInteresting, how did they do inheritance? Something like void *super? Also why not switch to CPP if you wanna do OOP?
minus-square@[email protected]linkfedilink2•6 days agoIn general, ‘classes’ declarations were done with macro. I don’t remember the exact code — something akin to BEGIN_CLASS(A, Parent); CLASS_MEMBER(a...) END_CLASS(); The project had started before C++ existed, and the switch would be too costly. It’s not just OOP part, also reflection mechanism with bindings to the homemade scripting language, and multi-platform UI library. It was a gem of its time.
minus-square@[email protected]OPlinkfedilink1•6 days agoThat sounds like quite a challenge to maintain, to speak in euphemisms ;)
minus-square@[email protected]linkfedilink2•6 days agoRevolutionary technologies of the '80 make me appreciate modern programming languages and especially tooling much more.
Interesting, how did they do inheritance? Something like
void *super
? Also why not switch to CPP if you wanna do OOP?In general, ‘classes’ declarations were done with macro. I don’t remember the exact code — something akin to
The project had started before C++ existed, and the switch would be too costly. It’s not just OOP part, also reflection mechanism with bindings to the homemade scripting language, and multi-platform UI library. It was a gem of its time.
That sounds like quite a challenge to maintain, to speak in euphemisms ;)
Revolutionary technologies of the '80 make me appreciate modern programming languages and especially tooling much more.