Frage

ist es in Rascal möglich, Klone eines Objekts mit unterschiedlicher Identität zu erstellen, damit sie gleich, aber nicht identisch sind?

War es hilfreich?

Lösung

Nein, Rascal hat Wertsemantik.

generasacodicetagpre.

Selbst mit Schließungen, Funktionen als Daten, können Sie nicht zwei unterscheidbare Instanzen generationspflichtig erstellen.Der Grund ist, dass die Verschlüsse niemals als gleichwertig betrachtet werden, es sei denn, Sie haben einen Alias, der auf dieselbe Instanz zeigt.

Es gibt auch keinen Klonvorgang oder so etwas.Es gibt nur Ausdrücke und ihr Ergebnis ist isomorph der Expressionsbaum, der sie erstellt hat.

semantischer Rascal garantiert nicht, dass alle Werte auf dem Haufen tatsächlich geteilt werden oder dass sie nur nicht unterscheidbar sind, sodass die Perspektive der Speicheroptimierung vollständig der Laufzeitimplementierung bleibt.

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