box Parent { init { name } pack(n) { me.name = n } greet() { return "Hello " + me.name } } box Child from Parent { init { age } pack(n, a) { from Parent.pack(n) me.age = a } override greet() { local base = from Parent.greet() return base + " (age " + me.age + ")" } } static box Main { main() { local c = new Child("Alice", 25) return c.greet() } }