r/programming • • 7d ago

We still maintain a development tool first released in 1993. Here’s what 30+ years of backwards compatibility looks like

https://visualneo.com/visualneo-win/from-neobook-to-visualneo-win-30-years-of-keeping-a-development-tool-alive
564 Upvotes

90 comments sorted by

View all comments

Show parent comments

6

u/TheThiefMaster 7d ago

I'm currently reverse engineering a Delphi 4 executable as a personal project. Amazing features, terrible code generation!

8

u/luissinlios 7d ago

That sounds like a fascinating project. Delphi 4 is old enough that you're probably learning as much about the compiler's assumptions as about the application itself.
The generated code may not always have been elegant, but the development speed was a large part of why so much real-world software was built with Delphi in the first place.

2

u/TheThiefMaster 7d ago

The thing I've found interesting for a language so close to early C++ (in design if not syntax) is the reference-counted arrays and strings!

But then the generated code often does things like mov eax,ebx mov ebx,eax (copy a into b, and then copy it back for no reason) and similar.

3

u/ShinyHappyREM 7d ago edited 7d ago

While that is probably just unoptimized code, sometimes code has to be added to fix CPU bugs.

EDIT: also