2016-04-05 13 views
0

Ich verstehe Spaß und fix in ML als:Spaß und Fix in ML

fix berechnet dest Fixpunkt oder einfach Verwendung von gleichen Namens innerhalb des Anrufs und Spaß erlauben kann ausdrücklich erlaubt Umfang der Steuer Variable Auch Spaß wird für nicht-rekursive Versionen verwendet.

Ich könnte falsch liegen. Kann jemand den Unterschied zwischen Spaß und Reparatur in ML spezifizieren.

+0

Ein Unterschied ist, dass 'Spaß' Teil von SML ist, aber' reparieren' nicht. Von welcher Sprache sprichst du? –

+0

SML. Ich lese das Papier "Abhängige Typen in der praktischen Programmierung". Wenn Mini-Ml mit Pattern-Matching erweitert wird, wird dieses Fixding verwendet. – Pushpa

+0

Vielleicht können Sie ein bisschen mehr in Ihrer Frage erklären. Gibt der Autor beispielsweise eine SML-Implementierung von 'fix'? Wenn ja, was? Wenn nicht, gibt es eine nicht standardisierte Version von ML, die es implementiert? –

Antwort

3

Dieses Papier führt eine Mini-Sprache ein, genannt ML₀, die zwei Konstrukte, lam und fix präsentiert. Der erste ist für nicht-rekursive Funktionsausdrücke, während der zweite ein Fixpunktkombinator ist, der es ermöglicht, rekursive Funktionen zu definieren.

fun wird später als Teil einer anderen Sprache verwendet, die als Oberflächensprache für den Programmierer gedacht ist. fun sollte auf lam und fix Anrufe entuugariert werden, wie in Abbildung 5 des Papiers gezeigt.

+0

Völlig klar. Ja Es ist nicht in ML0-Syntax vorhanden. Vielen Dank – Pushpa