I was reading the user manual for an old program "UNRAVEL": http://www.ml1.org.uk/pdf/Unravel_User_Manual_1971.pdf. On page 9, it describes the syntax for integer constants:
Unsigned integers may be used as constants. If the integer starts with the digit zero it is evaluated to the machine base; otherwise it is taken as decimal. Thus, for example, on an octal machine 077 would be the same as 63 and on a hexadecimal machine 0A9 (where A means ten) would be the same as 169.
I am aware of different word sizes, but what is the point in interpreting an integer literal differently depending on the machine? Was this practice common back in the day?