class MyObject def className as String # make this a property return .typeOf.name class Point inherits MyObject implements ICallable # TODO: multiple interface implementation (the compiler implements it, but need more interfaces to implement (and generics interfaces are not yet supported) var _x as int var _y as int cue init .init(0, 0) cue init(x as int, y as int) base.init _x = x _y = y def setXY(x as int, y as int) _x = x _y = y def main is shared p1 as Point = Point() p2 as Point = Point(3, 4) p1.setXY(1, 2) assert p1.className=='Point' p2.setXY(1, 2) def call(arg as Object) as Object return 2