Такое дело: есть C#-тип
struct Vector3
{
public float X;
public float Y;
public float Z;
[...]
}
Так вот, если на стороне Nemerle сделать такое:
def vec3 = Vector3();
vec.X += 10;
То на строке где меняется X, кидается NullReferenceException в рантайме. Однако стоит лишь указать, что vec3 — mutable, то все прекрасно работает. Меня как новичка в Nemerle, это очень сбило с толку.
Так и должно быть? Или, почему компилятор (и, соответственно, интеграция) не сообщают, что я пытаюсь изменить immutable-переменную?