Ich denke, der ternäre Bedingungsoperator (aus der Basic Maude) sollte ein gutes Beispiel sein: "Das Vorhandensein von Unterstrichen in einem Funktionsnamen impliziert, dass wir mixfix verwenden. Die Idee ist, dass jedes Argument der Funktion eins ersetzen wird . Zum Beispiel der Unterstrichen betrachten
op if_then_else_fi : Bool Nat Nat -> Nat .
Wir haben dann diesen Operator wie dies zutreffen könnte.
if B then X else Y fi
wobei B ein Boolean, und X und Y sind Nats“
Keine Grenzen für Betreiber arity in manual (lesen pp.33-35 die volle Leistung des Bedieners Erklärung zu umarmen) erwähnt, so
op _ _operation_ _ _: Nat Nat Nat Nat Nat -> Bool . // for 5 operands
sollte auch in Ordnung sein. Ich denke, irgendwann sollten Sie eine Implementierung, eine Plattform oder ein Speicherlimit erreichen.
Wenn Sie das tun, erhalten Sie den folgenden Fehler: "Die Anzahl der Unterstriche (2) stimmt nicht mit der Anzahl der Argumente (5) für Operator _operation_." –
Anscheinend "wenn die vorhandenen Unterstriche übereinstimmen sollten". Fügen Sie einige weitere Unterstriche hinzu, oder entfernen Sie vollständig – Serge
Das hat funktioniert, Prost Mate. –