Frage

Mein oberflächliches Verständnis von Variablen in f # legt nahe, dass die Deklaration eine Variablen ‚wandelbar‘ zu sein und mit einem ‚ref‘ Variable im Wesentlichen beide das gleiche tun. Sie sind beide verschiedenen Möglichkeiten, das gleiche zugrunde liegende Problem zu lösen - eine begrenzte und strukturierte Zulage von Veränderlichkeit in einer funktionalen Sprache ohne an die IO-Monade zu müssen. Dass es eine technische anders ‚abstrahiert‘ durch mein Verständnis war.

  1. Wenn dies der Fall ist, warum nicht erfassen können änderbare Variablen Schließungen, aber sie können ref Instanzen erfassen?
  2. Allgemeiner gesagt, was ist der technische Unterschied zwischen den beiden Formen, die diesen Unterschied erlaubt?
  3. Was ist der Zweck von einer Sprache Design Sicht der Einführung von zwei Veränderlichkeit Verknüpfungen nicht nur ein?

Es tut mir leid, wenn dies ein Mehrteiler ist, aber sie scheinen alle zusammen.

War es hilfreich?

Lösung

Siehe

http://lorgonblog.wordpress.com / 2008/11/12 / on-Lambdas-Capture-and-Veränderlichkeit /

vor allem des „Sprache Design Kommentar“ Abschnitt (ich es hier zitieren würde, aber es nicht allein gut steht, müssen Sie den gesamten Blog-Eintrag für Kontext).

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