19.11.2014 Views

The Fortress Language Specification - CiteSeerX

The Fortress Language Specification - CiteSeerX

The Fortress Language Specification - CiteSeerX

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

40.10<strong>The</strong> Trait <strong>Fortress</strong>.Core.BinaryEndianLinearEndianSequence . . . . . . . . . . . . . . . . . . . . . . 298<br />

40.11<strong>The</strong> Trait <strong>Fortress</strong>.Core.BinaryHeapEndianSequence . . . . . . . . . . . . . . . . . . . . . . . . . . 303<br />

40.12<strong>The</strong> Trait <strong>Fortress</strong>.Core.BinaryEndianHeapEndianSequence . . . . . . . . . . . . . . . . . . . . . . . 303<br />

40.13<strong>The</strong> Trait <strong>Fortress</strong>.Core.BasicBinaryHeapSubsequenceOperations . . . . . . . . . . . . . . . . . . . 304<br />

VI Appendices 312<br />

A <strong>Fortress</strong> Calculi 313<br />

A.1 Basic Core <strong>Fortress</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313<br />

A.2 Core <strong>Fortress</strong> with Where Clauses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318<br />

A.3 Core <strong>Fortress</strong> with Overloading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325<br />

A.4 Acyclic Core <strong>Fortress</strong> with Field Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331<br />

B Overloaded Functional Declarations 337<br />

B.1 Proof of Coercion Resolution for Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337<br />

B.2 Proof of Overloading Resolution for Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338<br />

C Components and APIs 340<br />

D Rendering of <strong>Fortress</strong> Identifiers 342<br />

E Support for Unicode Input in ASCII 346<br />

E.1 Word Pasting across Line Breaks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346<br />

E.2 Preprocessing of Names of Unicode Characters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347<br />

F Operator Precedence, Chaining, and Enclosure 351<br />

F.1 Bracket Pairs for Enclosing Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351<br />

F.2 Vertical-Line Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352<br />

F.3 Arithmetic Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353<br />

F.4 Relational Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356<br />

F.5 Boolean Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363<br />

F.6 Other Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364<br />

G Concrete Syntax 375<br />

H Generated Concrete Syntax 383<br />

11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!