Was sind die grundlegenden Unterschiede zwischen der operativen Semantik in kleinen und großen Schritten? Es fällt mir schwer zu begreifen, was es ist und was die Motivation ist, die beiden zu
Die Semantik beschreibt formal die Bedeutung einer Syntax.
Was sind die grundlegenden Unterschiede zwischen der operativen Semantik in kleinen und großen Schritten? Es fällt mir schwer zu begreifen, was es ist und was die Motivation ist, die beiden zu
Ich suche nach einem einfachen Kalkül, das die Überlegungen zur Reflexion unterstützt , nämlich die Introspektion und Manipulation von laufenden Programmen. Gibt es eine untypisierte λλ\lambda Kalkulus-Erweiterung, mit der man λλ\lambda Terme in eine Form umwandeln kann, die syntaktisch manipuliert...
Bei einem markierten Übergangssystem ist eine Menge von Zuständen, eine Menge von Markierungen und eine ternäre Beziehung. Schreiben Sie wie üblich für . Der markierte Übergang dass das System im Zustand Zustand mit label \ alpha in q ändert , was bedeutet, dass \ alpha eine beobachtbare Aktion...
In dem Artikel "Ein konfliktfrei replizierter JSON-Datentyp" stieß ich auf die folgende Notation, um "Regeln" formal zu definieren: Wie heißt diese Notation? Wie lese ich es? Beispielsweise: Die DOCRegel hat nichts im "Zähler" - warum nicht? Die Regeln EXECund GETscheinen zwei getrennte Ausdrücke...
In Programmiersprachen sind Verschlüsse ein beliebtes und oft gewünschtes Merkmal. Wikipedia sagt (Hervorhebung von mir): In der Informatik ist ein Closure (...) eine Funktion zusammen mit einer Referenzierungsumgebung für die nicht lokalen Variablen dieser Funktion. Ein Closure ermöglicht es einer...
Ich kämpfe wirklich mit dieser Eigenschaft: Lassen seine Kohärenz Räume und f : C L ( X ) → C L ( Y ) eine monotone Funktion sein. f ist kontinuierlich , wenn und nur wenn f ( ⋃ x ∈ D x ) = ⋃ x ∈ D f ( x ) , für alle D ⊆ C l ( X ) , so daß D ein gerichteter Menge ist.X, YX,YX,Yf: Cl ( X) → Cl (...
Mit Bezug auf Funktionen in Sprachen wie Ruby (und Javascript), die es einem Programmierer ermöglichen, Klassen jederzeit nach ihrer Definition zu erweitern / außer Kraft zu setzen (einschließlich Klassen wie String), ist es theoretisch machbar, eine Sprache zu entwerfen, mit der Programme später...
Angenommen, wir haben eine einfache Sprache, die aus folgenden Begriffen besteht: t r u etrue\mathtt{true} f a l s efalse\mathtt{false} Wenn Terme sind, ist dies aucht 1 , t 2 , t 3 t1,t2,t3t_1,t_2,t_3i ft 1t h e nt 2e l s et 3ift1thent2elset3\mathtt{if}\: t_1 \:\mathtt{then}\: t_2...
Ich bin mit der operativen Semantik (sowohl in kleinen als auch in großen Schritten) zur Definition von Programmiersprachen vertraut. Ich interessiere mich auch für das Erlernen der Denotationssemantik, bin mir aber nicht sicher, ob sich die Mühe lohnt. Werde ich das gleiche Material nur aus einer...
Ich glaube, ich bin ziemlich verwirrt darüber, was als Kalkül und was als Programmiersprache bezeichnet wird. Ich neige dazu, zu denken und könnte gesagt worden sein, dass ein Kalkül ein formales System ist, um über die Gleichwertigkeit von Programmen zu argumentieren. Programme haben eine von...
Es gibt viele beliebte Sprachen. Informatiker sagen uns jedoch, dass wir, um das Verhalten von Programmen in diesen Sprachen definitiv und eindeutig verstehen zu können, diese in eine andere, gut verstandene Sprache übersetzen müssen (z. B. um ihre Identität zu beweisen). Sie nennen solche Sprache...
Ich weiß, dass verschiedene Autoren unterschiedliche Schreibweisen verwenden, um die Semantik der Programmiersprache darzustellen. In der Tat spricht Guy Steele dieses Problem in einem interessanten Video an . Ich würde gerne wissen, ob jemand weiß, ob der führende Drehkreuzbetreiber eine allgemein...
Bei der Arbeit wurde ich beauftragt, einige Typinformationen über eine dynamische Sprache abzuleiten. Ich schreibe Folgen von Anweisungen in verschachtelte letAusdrücke um, wie folgt: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z =>...
Gibt es ein Tool zum Prototyping einer Programmiersprachen-Semantik und eines Typsystems, das auch eine Art Modellprüfung von Standardeigenschaften wie der Typensicherheit ermöglicht? Ich frage dies, weil ich ein Buch über Legierung lese und es genau die Funktionalität bietet, die ich möchte, aber...
In der Diskussion um diese Frage erwähnt Gilles richtig, dass jeder Korrektheitsnachweis eines Algorithmus, der Arrays verwendet, beweisen muss, dass es keine Array-Zugriffe außerhalb der Grenzen gibt. Abhängig vom Laufzeitmodell würde dies einen Laufzeitfehler oder den Zugriff auf...
Ich suche nach Ressourcen für den Einstieg in die Programmanalyse . Das einzige Buch, das ich zu diesem Thema gefunden habe, ist das Nielson & Nielson- Buch. Davon abgesehen scheint es nur "Compiler" -Bücher zu geben, in denen "Programmanalyse" ein Kapitel oder etwas in dieser Richtung wäre....
Normalerweise sehe ich, dass sich in der strukturellen Darstellung der operativen Semantik für die while-Schleife der Programmstatus nicht ändert: (whileBdoS,σ)→(ifBthenS;(whileBdoS)elseSKIP,σ)(whileBdoS,σ)→(ifBthenS;(whileBdoS)elseSKIP,σ)(while \> B \> do \>S, \sigma) \rightarrow (if \>B \> then...
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...
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...
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