Informal Opal Specification

Opal is meant to bring together the three primary styles, object-oriented, procedural, and functional. Some of its features are suited to only one of these styles, note will be made where this is the case. Since Opal is first and foremost an object-oriented language, that is the approach that will be taken in this document. The appendix contains information on how the other styles may wish to view Opal's support of them, but also give important criteria about the meaning of certain constructs.