Skip to content
Splizard edited this page Oct 29, 2016 · 2 revisions
type Address {
    number
    ""street
    ""city
}
type Person {
    ""name
    number
    {}address //This will be inferred by the new method's assignment.
}

method new(Address) {
    street = "Unknown"
    city = "Unknown"
}

method new(Person) {
    name = "Unknown"
    number = 555555555
    address = new(Address)
}

//This method is required in order to print a person.
method text(Person) "" {
    return name
}

software {
    var p = new(Person)
    p.name = "Splizard"

    print(p) //--> "Splizard"
}

Type Literals

type Point { x, y }

var p = Point{2,3}
Clone this wiki locally