Note that 'final' static functions (such as 'new') shouldn't be callable from a subclass. For example:
Foo: class {
init: func
}
Bar: class {
init: func (a: Int)
}
Foo new() // builds a Foo
Bar new(42) // builds a Bar
Bar new() // compilation error - previously used to (erroneously) build a Foo instead.
by @nddrylliog related to #9:
Note that 'final' static functions (such as 'new') shouldn't be callable from a subclass. For example: