My favorite game playing in my mind is doing timeline revelsals, what if browsers used bliss from the beginning and then someone invented JavaScript and put it in browser. Would you stick to bliss?
Neatly removes the lhs/rhs distinction in the compiler, although in practice tracking during the translation whether evaluating e.g. "a[i]" needs to end with DEREF or not ain't that onerous.
But "The Design of an Optimizing Compiler" by Wulf et al. is an interesting read nonetheless; especially if you wonder how people did register allocation before Chaitin's seminal paper.
My favorite game playing in my mind is doing timeline revelsals, what if browsers used bliss from the beginning and then someone invented JavaScript and put it in browser. Would you stick to bliss?
An important language in my younger years, since many Atari System 2 games (using the T-11 "PDP-on-a-chip") were written in it.
Variables were pointers and you could dereference with a dot. Another step towards writing what you mean.
Neatly removes the lhs/rhs distinction in the compiler, although in practice tracking during the translation whether evaluating e.g. "a[i]" needs to end with DEREF or not ain't that onerous.
But "The Design of an Optimizing Compiler" by Wulf et al. is an interesting read nonetheless; especially if you wonder how people did register allocation before Chaitin's seminal paper.
There's even a compiler for it https://github.com/sergev/bliss-compiler
That's a fork, this is the original where there's been more recent updates:
https://github.com/madisongh/blissc
A very notable implementation in BLISS was the VAX/VMS operating system.