3 ms·
> guarantee that you can unrar a file in 20 years with minimal work Does this take into account a potential change in the predominant architecture? I.e., we mo
by weberc2 8y ago
> guarantee that you can unrar a file in 20 years with minimal work
Does this take into account a potential change in the predominant architecture? I.e., we move from x86 to fooarch? Presumably there's more work than "implement the VM in fooarch instructions"? You'd have to write a fooarch assembler as well, right? As well as fooarch C compiler backends?
- mmastrac 8y agoAs the code is compiled to a well-specified, small VM it should only be a matter of writing the VM in whatever language is already available for that particular platform/architecture. You can also choose to write the VM in raw assembly. While this isn't ideal, the VM itself is mainly just straightforward register operations and should map trivially to any hardware that has bit operations and hardware 32-bit multiply/divide. If it comes down to it, you can implement the VM itself on bare metal, but you'll need to do some work implementing things like a filesystem (not terribly hard to get a basic, non-scalable one up-and-running). I suppose there's an assumption that the platform provides 32-bit integers, but I _think_ that's a safe assumption.
- pjmlp 8y agoThis is the genesis of P-Code design for Pascal. Originally Wirth only planned to use it for bootstrapping purposes, then UCSD decided to make a whole platform on top of it.