langur

arrays

Array literals are built with square brackets that are clearly not an indexing operator.

Arrays may contain any other langur data structures, and they may be mixed freely.

Arrays may be appended with the concatenation operator (tilde) or with the more() function. Like concatenation, the more() function creates a new array and does not modify the original.

[1, 2, 3] ~ [4, 5, 6, 7] == [1, 2, 3, 4, 5, 6, 7] # true

quoted word arrays

As a semantic convience, string arrays may use a shortened syntax, beginning with a letter w (interpreting escape codes) or W (not interpreting escape codes). Quote mark pairs allowed are the same as for string and regex literals.

A quoted word array uses spacing to separate word strings. This is similar to the qw() construct used in Perl.

w/1 2 3 you know/ == ["1", "2", "3", "you", "know"]

w/1 2 3 you\x20know/ == ["1", "2", "3", "you know"]

W/1 2 3 you\x20know/ == ["1", "2", "3", "you\\x20know"]

Interpolation is not allowed, so there is no $w// or $W// literal.

A quoted word array may not include line returns.

Allowed characters are the same as for string literals.