Wir hören manchmal "Swift macht keine klassische (Tracing-) GC, es verwendet ARC." Ich bin mir jedoch nicht sicher, ob die Swift-Semantik irgendetwas enthält, das eine Referenzzählung erfordert. Es scheint, dass man seinen eigenen Swift-Compiler und seine eigene Laufzeit erstellen könnte, um Tracing-GC zu verwenden. Was genau ist an Swift "referenzgezählt"? …
In Kapitel 1 der praktischen Grundlagen für Programmiersprachen erwähnt der Autor, dass abstrakte Syntaxbäume mit Sortierungen verknüpft sind . Intuitiv sind Sortierungen wie Typen, aber ich würde gerne wissen, ob sie eine genaue Definition haben. Ich würde mich freuen, wenn auch einige Referenzen zur Verfügung gestellt werden.
Angenommen, Listen sind definiert als List a = Nil | Cons a (List a) Dann ist in Haskell List xder größte oder kleinste Fixpunkt? Ich frage, weil das lfp unendliche Listen ausschließen sollte (aber Sie können sie in Haskell erstellen), während das gfp endliche ausschließen sollte.
StackOverflow hat mich hier gezeigt, daher könnte die Frage für Laien etwas zutreffend sein. Wikipedia definiert reine Funktionen als In der Computerprogrammierung kann eine Funktion als reine Funktion beschrieben werden, wenn beide Aussagen über die Funktion gelten: Die Funktion wertet immer den gleichen Ergebniswert bei gleichen Argumentwerten aus. Der Funktionsergebniswert …
Ich habe kürzlich mit einem Freund über eine Website gesprochen, auf der Regex-Herausforderungen vorgeschlagen wurden, wobei hauptsächlich eine Gruppe von Wörtern mit einer speziellen Eigenschaft abgeglichen wurde. Er suchte nach einem regulären Ausdruck, der zu Zeichenfolgen passt, bei ||||||||denen die Anzahl der |Primzahlen ist. Ich sagte ihm sofort, dass dies …
In der reinen Lambda-Rechnung haben wir die induktiv definierte Menge von Begriffen (die Grammatik): e::=x∣λx.e∣e1e2e::=x∣λx.e∣e1e2e::= x \mid \lambda x . e \mid e_1 e_2 Im Rahmen der Call-by-Value-Bewertungsstrategie haben wir die Inferenzregeln für die Beta-Reduktion und Regeln für die Bewertung von Anwendungen (Kongruenzregeln). Ich versuche zu verstehen, wie Bewertungskontexte die …
Ich bin dabei, eine domänenspezifische Sprache zur Darstellung sozialer Lernkonventionen zu implementieren. Teil der Implementierung ist eine formale Beschreibung einer Sprache - ihrer 'Analysis', Symbole und logischen Ausdrücke. Mein Ansatz wäre es, die Sprache durch Beschreibung ihrer Grammatik zu beschreiben, aber es gibt auch Konzepte wie Beziehungen, Dialoge, Erwartungen, die …
Ich versuche, einige Aussagen über die Ausführung in Java-Programmen unter einigen starken Einschränkungen zu beweisen (im Grunde genommen habe ich die Vermutung, dass zwei Methoden, die eine Reihe von Einschränkungen für eine bestimmte Eingabe erfüllen, äquivalent sind - dh den Wert und den Status danach zurückgeben Ausführung sind identisch). Um …
Ich bin kürzlich auf diesen Blog-Beitrag von Brian McKenna gestoßen, der den Zeilenpolymorphismus erklärt. Das schien mir eine wundervolle Idee zu sein, aber dann wurde mir klar, dass es sehr nach begrenztem parametrischem Polymorphismus riecht: Mit Zeilenpolymorphismus: sum: {x: int, y: int | rho} -> int function sum r = …
Bei der Transformation von Begriffen von einer Sprache in eine andere ist die intuitiv gewünschte Eigenschaft die Beibehaltung der Semantik (wie sie beispielsweise hier für eine CPS-Transformation verwendet wird): s⇓v⟹c(s)⇓c(v)s⇓v⟹c(s)⇓c(v) s \Downarrow v \implies c(s) \Downarrow c(v) Ich bin jedoch ein wenig beunruhigt, wenn ich dies mit den klassischen Begriffen …
Ich habe eine Frage zur Vererbung in Java-ähnlichen OO-Programmiersprachen. Es kam in meiner Compiler-Klasse vor, als ich erklärte, wie Methoden und deren Aufruf kompiliert werden. Ich habe Java als Beispielquellsprache zum Kompilieren verwendet. Betrachten Sie nun dieses Java-Programm. class A { public int x = 0; void f () { …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.