[M3devel] A bizarre language quirk

Henning Thielemann lemming at henning-thielemann.de
Wed Mar 21 20:57:14 CET 2018


On Wed, 21 Mar 2018, Rodney M. Bates wrote:

> Modula3, 2.6.3 (Designators), concerning subscripting says:
>
> An expression of the form a[i_1, ..., i_n] is shorthand for a[i_1]...[i_n].

I think I wrote earlier about this shorthand ...

I found the following problem:

ARRAY OF ARRAY OF Something

is syntactically not quite a 2D-array since as it is written it suggests 
that the sub-arrays may have different sizes.

This has practical consequences. It would be no problem to have a 0-by-n 
array. But Modula-3 fails to determine the size of the second dimension of 
a 0-by-n array, because LAST(a[0]) is a range violation in the first 
dimension.


More information about the M3devel mailing list