English 中文(简体)
Is it possible to create a global variable in Opa?
原标题:
  • 时间:2011-06-23 21:55:27
  •  标签:
  • opa

In MLState s new programming language Opa, is it possible to create a global variable?

最佳回答

Opa is a functional language so there are no global variables in the language. However, one can achieve a similar behavior with Mutable. At top-level one declares the value with:

global_var = Mutable.make(initial_value)

where initial_value is the initial value for the variable (of some type t). Then one can retrieve the value with:

global_var.get()

and set it with:

global_var.set(new_value)

More information in the Opa API overview.

Note however, that this mechanism should be used only in special situations; the primary device of encapsulating state in Opa are its distributed sessions (see the Opa manual for more on that subject).

问题回答

暂无回答




相关问题
Can different OPA apps share Databases?

I m just investigating OPA and trying to make the leap from a traditional LAMP background, so here s my first of many newbie questions: Can I have two OPA apps sharing the same database, say one ...

Equivalent of List.exists for Db

I ve used List.exists( ), i woudl like to know if there is an equivalent for Db. If i have a function f(e) : bool, i would like to know if there is at least one element e, with f(e) -> true. ...

Looping over db intmap(person)

example: type person = { name : string ; age : int } db /person : intmap(person) I know how to get a single person from the db, but how do I get them all? and print ...

Can opa extensions be written in Ocaml?

I notice that included in the source of the OpaWhiteBoard example, there is a .ml file here: https://github.com/hhugo/OpaWhiteBoard/blob/master/src/opacairo/cairo.ml This appears to be OCaml with ...

Access a record field

This code source don t compile, Is there a way to make that in OPA ? type User = { nom : string ; prenom : string } un_user = { nom = "My_name" ; prenom = "My_last_name" } : User champ = "nom" do ...

OPA syntax question

I have seen in the stdlib and in some github project. Code like that : MyClass = field_id(id) = "{id}_field" {{ my_func(args) = output }} What the interest to have function before the {{ }} ...

热门标签