diff --git a/transfer/README b/transfer/README index ed31ae3f9..5a764ca07 100644 --- a/transfer/README +++ b/transfer/README @@ -13,7 +13,6 @@ Additional features in the front-end language: * Disjunctive patterns * do-notation -* Hidden arguments (not implemented yet) * Automatic derivation of some operations on user-defined GADTs: - Compositional maps and folds - Equality @@ -21,3 +20,29 @@ Additional features in the front-end language: - Showing * Pattern equations * Operator syntax for common functions, most are overloaded + + + +Differences between Transfer and Cayenne: + +* Cayenne has a more advanced module system + +* Cayenne has mutually recursive record fields + +* Cayenne erases type arguments before running + +* Transfer is eager, Cayenne is lazy + +* Transfer has GADTs (inductive families) + +* Transfer has metavariables + +* Transfer has record patterns + +* Transfer has disjunctive patterns + +* Transfer has derivation of compositional functions + +* Transfer has a standard library which uses a hierarchy + of "type classes" +