File tree Expand file tree Collapse file tree 1 file changed +14
-5
lines changed
Expand file tree Collapse file tree 1 file changed +14
-5
lines changed Original file line number Diff line number Diff line change 22
33@(require (for-label (except-in racket ... compile) a86/ast))
44@(require redex/pict
5+ redex/reduction-semantics
56 racket/runtime-path
67 scribble/examples
7- (except-in fraud/semantics ext lookup)
8- (prefix-in sem: (only-in fraud/semantics ext lookup))
98 "utils.rkt "
109 "ev.rkt "
1110 "../utils.rkt " )
1211
12+
13+ @(define-language L (e ::= ignored))
14+ @(define-extended-language F-let L
15+ (e ::= .... x (let ((x e)) e))
16+ (x ::= variable))
17+
18+ @(define-extended-language F-prim2 L
19+ (e ::= .... (p2 e_1 e_2))
20+ (p2 ::= + - = <))
21+
1322@(define codeblock-include (make-codeblock-include #'h ))
1423
1524@(ev '(require rackunit a86 fraud fraud/translate))
@@ -63,7 +72,7 @@ variables to the syntax of expressions.
6372
6473Together this leads to the following grammar for @|this-lang|:
6574
66- @centered{@render-language[F-pre ]}
75+ @centered{@render-language[F-let ]}
6776
6877Which can be modeled with the following data type definition:
6978
@@ -112,9 +121,9 @@ What's new are the following @emph{binary} operations:
112121(= _e0 _e1)
113122]
114123
115- This leads to the following revised grammar for @|this-lang|:
124+ This leads to the following additions to the grammar for @|this-lang|:
116125
117- @centered[(render-language G )]
126+ @centered[(render-language F-prim2 )]
118127
119128We can model it as a datatype as usual:
120129
You can’t perform that action at this time.
0 commit comments