func NewVar(val interface{}) *Var {
	v := &Var{}
	v.state.Store(varSnapshot{version: 0, val: val})
	return v
}
// Returns a new STM variable.
Returns a new STM variable.
// Returns a new STM variable .
func NewVar(val interface{}) *Var {
	v := &Var{}
	v.state.Store(varSnapshot{version: 0, val: val})
	return v
}
func NewVar ( val interface { } ) * Var { v := & Var { } v . state . Store ( varSnapshot { version : 0 , val : val } ) return v }
Returns a new STM variable.
Returns a new STM variable .