Можно ли создать глобальную переменную в Opa?

Можно ли в новом языке программирования MLState Opa создать глобальную переменную?


opa
person J D    schedule 23.06.2011    source источник


Ответы (1)


Opa — это функциональный язык, поэтому в нем нет глобальных переменных. Однако можно добиться аналогичного поведения с Mutable. На верхнем уровне объявляется значение с помощью:

global_var = Mutable.make(initial_value)

где initial_value — начальное значение переменной (некоторого типа t). Затем можно получить значение с помощью:

global_var.get()

и установите его с помощью:

global_var.set(new_value)

Дополнительные сведения см. в обзоре API Opa.

Однако обратите внимание, что этот механизм следует использовать только в особых ситуациях; основным средством инкапсуляции состояния в Opa являются его распределенные сеансы (дополнительную информацию см. в руководстве по Opa). на эту тему).

person akoprowski    schedule 24.06.2011
comment
Обратите внимание, что для обычных проблем ограничения значений ваша глобальная изменяемая переменная не может быть полиморфной. - person Yoric; 04.07.2011