Frage

Im Rahmen von Schema und CPS Umwandlung, ich habe ein wenig Schwierigkeiten zu entscheiden, was administrativ Redexe uber (Lambda) genau ist:

  • alle der Lambda-Ausdrücke, die von der CPS-Umwandlung eingeführt werden
  • nur die Lambda-Ausdrücke, die von der CPS-Konvertierung eingeführt werden, aber sie hätte nicht geschrieben, wenn Sie die Konvertierung tat „von Hand“ oder durch eine intelligentere CPS-Konverter

Wenn möglich, eine gute Referenz zu begrüßen wäre.

War es hilfreich?

Lösung

Redex steht für „reduzierbar Ausdruck“, was ein Ausdruck ist, der kein Wert ist. Daher ist eine Lambda kein redex, aber ein Anruf.
In CPS, eine Verwaltungs redex ist ein redex dessen Operator ist ein Fortsetzungs-Lambda. Solche Redexe uber kann sofort reduziert werden, da Sie wissen, welche Funktion Sie anrufen.
Zum Beispiel ((lambda (u) ...) foo) ist eine administrative redex, aber (k foo) nicht.

Andere Tipps

Ich glaube, ich meine Antwort gefunden. ( Edit:. Ich habe dimvar die akzeptierte Antwort statt, es ist kürzer und richtig)

das Eingabeprogramm Unter der Annahme, nicht vollständig CPS, mindestens eine Prozedur Rückkehrpunkt wird in eine Fortsetzung von der CPS Umwandlung umgewandelt werden. Also diese Fortsetzung sowohl durch die Umwandlung und notwendig eingeführt. Weil es notwendig ist, würden Sie immer brauchen, dies zu tun, auch wenn sie von Hand beispielsweise Umwandlung. Daher sind Verwaltungs Redexe uber nur die Lambda-Ausdrücke durch die CPS Umwandlung eingeführt, die nicht wirklich notwendig sind (meine zweite Definition).

fand ich ein Papier , die es erklärt wie folgt (Hervorhebung von mir):

  

Die naive λ-Codierung in CPS,   jedoch erzeugt ein sehr beeindruckend   Inflation von Lambdas, die meisten , von denen   bilden administrative Redexe uber das kann   werden sicher reduziert. administrativ   Verringerungen ergeben CPS Begriffe   dem entspricht, was man schreiben konnte   von Hand. Es wird daher ein worden   Herausforderung, so viele zu beseitigen   Verwaltungs Redexe uber wie möglich an   CPS-Umwandlungszeit.

Noch irgendwelche Anmerkungen oder Vorschläge willkommen natürlich.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top