3.2. kink/BINDING

The companion mod for local binding vals.


:prog <- PROGRAM.compile('Num * 2')
:Binding <- BINDING.new
Binding:Num <- 42
stdout.print_line(prog(Binding).repr) # => 84

3.2.1. type binding

A binding val, or “local binding” val is a holder of local variables, which can be used as a context binding register of execution of a Kink program.

See “Language specification” → “Kink Stack Machine (KSM)” chapter for context binding registers.

Local binding vals have the same variables as kink/CORE mod have when the runtime is initialized, except for CORE.repr.


Binding.repr returns a str such as "Binding(val_id=42)".

3.2.2. BINDING.new

BINDING.new makes a new local binding.

3.2.3. BINDING.is?(Val)

BINDING.is? returns whether the Val is a local binding val.