ユニバースの動的配列相対操作 (-1 を使用) が奇妙な動作をします。
以下の操作では、予期したように位置 <1,1,5> に新しい要素が追加されず、代わりに「1,1,5」が DYNAMIC.ARRAY<1,1,1> に追加されます。
DYNAMIC.ARRAY = ' '
DYNAMIC.ARRAY<1,-1,5> = '1,1,5' ; *Adds to 1,1,1 not 1,1,5 when DYNAMIC.ARRAY contains only whitespaces before this operation
ただし、動的配列に空でない値が含まれている場合、同じ操作が期待どおりに機能します。以下のコードを実行した後の最終結果は、DYNAMIC.ARRAY<1,1,1> = '1,1,1' および DYNAMIC.ARRAY<1,2,5> = '1,2,5' になります。
DYNAMIC.ARRAY = ' '
DYNAMIC.ARRAY<-1> = '1,1,1'
DYNAMIC.ARRAY<1,-1,5> = '1,2,5' ; *Adds to right position 1,2,5 when DYNAMIC.ARRAY is initialised to non empty value before this operation
これはユニバースで予想される動作ですか?