There's been something bothering me for a while about the Hack architecture. I finally realized what it is. There is no way to do provably secure computation since there is no Write Only Memory (WOM). A WOM allows data to be stored that provably cannot be read by anyone.
It seems to me that it would be an easy addition to the design to specify that some of the address space above 8000h (32768) be decoded to select 8K of WOM.
HDL skeleton for WOM8K:
/**
* Write Only Memory of 8K registers, each 16-bit wide.
*/
CHIP WOM8K {
IN in[16], load, address[13];
PARTS:
// Implementation missing.
}
Implementation is left as an exercise for the student.
For those interested, a suitable real world part is the Signetics 25120. See sig-25120.pdf
--Mark