Почему я не могу переписать список в Erlang?

У меня есть список L = [1,2,3].

Я выполняю следующее на L:

lists:sublist(L,2) ++ [10] ++ lists:nthtail(3,L).

Вместо сохранения результата в новом списке я хочу сохранить результат в самом L. Однако, когда я это делаю, я получаю очевидную ошибку: ** exception error: no match of right hand side value [1,2,300]

Я не хочу использовать новую переменную, я хочу переписать сам L. Является ли это возможным?


person Manika Sharma    schedule 21.11.2020    source источник
comment
Это та же книга, что и learnyousomeerlang.com/introduction, и этот ресурс прекрасно поставлен даже для новичка! Большое спасибо за ваше руководство, я имею в виду тот же ресурс, и по мере того, как я продвигаюсь вперед, Erlang стал выглядеть довольно удобным!   -  person Manika Sharma    schedule 22.11.2020


Ответы (1)


Нет, в Erlang есть одно назначение. Чтобы использовать пример от Armstrong, в C это работает:

x = 5;
x = x + 10;

Но в Эрланге написано:

X = 5;
X1 = X + 10;
person 2240    schedule 21.11.2020