next | previous | forward | backward | up | top | index | toc | Macaulay2 website
Macaulay2Doc > The Macaulay2 language > variables > local variables in a file

local variables in a file

There is a way to construct variables that can be used within a given source file, and are invisible to code placed in other files. We use := for this. Assume the code below is placed in a file, and that the file is loaded with the load command.
i1 : ff := 5

o1 = 5
i2 : ff

o2 = 5
The variable above is a local one. Its value is not available to code in other files.

Assume the code above is entered directly by the user into Macaulay2. Then the variable is still a local one and is not available to code previously loaded or to functions previously defined, but it will be available to code loaded subsequently. We illustrate this below with the variable j.

i3 : j

o3 = j

o3 : Symbol
i4 : h = () -> j

o4 = h

o4 : FunctionClosure
i5 : h()

o5 = j

o5 : Symbol
i6 : j = 444

o6 = 444
i7 : h()

o7 = 444
i8 : j := 555

o8 = 555
i9 : h()

o9 = 444
i10 : j

o10 = 555