これが私のシナリオです:
rascal>map[int, list[int]] g = ();
rascal>g += (1:[2]);
これにより、次のようになります。
rascal>g[1];
list[int]: [2]
これまではとても良かったのですが、今はこれをやりたかったのですが、うまくいきませんでした:
rascal>g[1] += 3;
|stdin:///|(2,1,<1,2>,<1,3>): insert into collection not supported on value and int
したがって、g[1] の値を直接使用することはできず、次のような一時変数を使用する必要があります。
rascal>lst = g[1];
rascal>lst += 3;
rascal>g[1] = lst;
map[int, list[int]]: (1:[2,3])
しかし、リストを拡張したいときはいつでもこれを行うのは面倒です! 私は何か間違ったことをしていますか、それともこれは素晴らしい機能でしょうか?
リチャード