Я знаю, что запись в Erlang не может быть изменена после ее установки. Я пытаюсь использовать запись, чтобы увеличить значение.Изменение записи Erlang
add_new_num() ->
Number = random:uniform(6),
STR = #adder{value = 7},
New = add(STR, Number).
add(#adder{value =V} = Adder, Value) ->
Adder#adder{value = V + Value}.
При запуске add_new_num()
я всегда получите 7 + Number
. Это не то, что я хочу. Я хочу заставить его сделать следующее.
add_new_num() -> 7 + Number = Val
add_new_num() -> Val + Number = Val2
add_new_num() -> Val2 + Number = Val3
...
Как я могу это достичь?
Как я могу перейти к обновлению записи из возвращаемого значения @legoscia – Jonathan