2017-04-20 4 views

Antwort

2

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.

+0

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_." –

+0

Anscheinend "wenn die vorhandenen Unterstriche übereinstimmen sollten". Fügen Sie einige weitere Unterstriche hinzu, oder entfernen Sie vollständig – Serge

+0

Das hat funktioniert, Prost Mate. –

Verwandte Themen