7 ms·
Let's take BCPL — 'The major difference between BCPL and ALGOL is that all ALGOL variables are declared with data-types (integer, real, boolean, string, array,
by igouy 8y ago
Let's take BCPL —
'The major difference between BCPL and ALGOL is that all ALGOL variables are declared with data-types (integer, real, boolean, string, array, procedure, label, pointer, etc.), whereas all BCPL variables have the same data-type: a 16-bit number.
In ALGOL, the meaning of an expression is dependent both on its context and on the data-types of the entities involved, and only expressions with certain data-types may appear in a given context.
In BCPL, any expression may be used in any context; the context alone determines how the 16-bit value of the expression is interpreted. BCPL never checks that a value is "appropriate" for use in a given way.'
http://www.bitsavers.org/pdf/xerox/alto/bcpl/BCPL_Reference_Manual_Sep79.pdf http://www.bitsavers.org/pdf/xerox/alto/bcpl/BCPL_Reference_...
( I haven't been able to figure out what happens on divide-by-zero:
The division operator / yields the correct result if E1 is divisible by E2; it is otherwise implementation dependent but the rounding error is never greater than 1.
https://www.bell-labs.com/usr/dmr/www/bcpl.pdf https://www.bell-labs.com/usr/dmr/www/bcpl.pdf )