mark()
i1 : X = new Type of List o1 = X o1 : Type
i2 : y = 4 o2 = 4
i3 : mark()
i4 : x = new X from {1,2,3} o4 = {1, 2, 3} o4 : X
i5 : serialize (symbol x, symbol y) o5 = -- -*- mode: M2; coding: utf-8 -*- s0:=X -- Type : X s1:=global X -- Symbol : X s2:=1 -- ZZ : 1 s3:=2 -- ZZ : 2 s4:=3 -- ZZ : 3 s5:=newClass(s0,{s2,s3,s4}) -- X : X{1, 2, 3} s6:=global x -- Symbol : x s7:=global y -- Symbol : y s8:=(s6,s7) -- Sequence : (x,y) globalAssignFunction(s1,s0) s6<-s5 s8
The object mark is a function closure.