Loading...
 

Multigenerational Software

Imagine designing a programming language that can still run, unmodified, 20-30 years into the future. To accommodate for future hardware changes, it would be beneficial if it runs over a virtual machine and its software stack and tooling has also need to be designed with backward compatibility in mind.

At this time, two programming languages are available for inspiration: Java (before Oracle took over, that is) and Lua (whose creator refuses to add new features). Perl can also be of interest (after Perl 6 got transformed into Raku).

I find this design constraint is not currently in the radar of the programming language communities, which in turn seem to be keen in introducing language and software library changes in every version (take for example, Scala).