Changeset dcfcf368 for doc/theses/jiada_liang_MMath/trait.tex
- Timestamp:
- Sep 14, 2024, 5:07:55 PM (5 weeks ago)
- Branches:
- master
- Children:
- 8c79dc3c
- Parents:
- 3733643
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
doc/theses/jiada_liang_MMath/trait.tex
r3733643 rdcfcf368 120 120 Hence, the \CFA enumeration traits never connected with the specific @enum@ kind. 121 121 Instead, anything that can look like the @enum@ kind is considered an enumeration (static structural typing). 122 However, Scala, Go, and Rust traits are nominative: a type explicitly declares a named trait sto be of its type, while in \CFA, any type implementing all requirements declared in a trait implicitly satisfy its restrictions.122 However, Scala, Go, and Rust traits are nominative: a type explicitly declares a named trait to be of its type, while in \CFA, any type implementing all requirements declared in a trait implicitly satisfy its restrictions. 123 123 124 124 One of the key differences between concepts and traits, which is leveraged heavily by \CFA, is the ability to apply new \CFA features to C legacy code.
Note: See TracChangeset
for help on using the changeset viewer.