More de-mzscheme; and taking out stm for the release-let
svn: r10279
This commit is contained in:
parent
3488803ab1
commit
4222b03e6d
|
@ -1,4 +1,4 @@
|
|||
(module advanced-parser mzscheme
|
||||
(module advanced-parser scheme/base
|
||||
|
||||
(require "general-parsing.ss"
|
||||
"lexer.ss"
|
||||
|
@ -6,17 +6,10 @@
|
|||
"../parameters.ss")
|
||||
|
||||
(require parser-tools/yacc
|
||||
(all-except parser-tools/lex input-port)
|
||||
(except-in parser-tools/lex input-port)
|
||||
syntax/readerr)
|
||||
|
||||
;(require (lib "build-grammar.ss" "tester"))
|
||||
|
||||
(define-syntax testing-parser
|
||||
(syntax-rules ()
|
||||
((_ parse-info ...) (parser parse-info ...))))
|
||||
|
||||
|
||||
(provide parse-advanced parse-advanced-interactions parse-advanced-expression parse-advanced-type)
|
||||
;(provide advanced-grammar)
|
||||
|
||||
(define parsers
|
||||
(parser
|
||||
|
@ -25,14 +18,14 @@
|
|||
(tokens java-vals special-toks Keywords Separators EmptyLiterals Operators ExtraKeywords)
|
||||
;(terminals val-tokens special-tokens keyword-tokens separator-tokens literal-tokens operator-tokens)
|
||||
(error (lambda (tok-ok name val start-pos end-pos)
|
||||
(if ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
(when ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
|
||||
(end EOF)
|
||||
(src-pos)
|
||||
|
@ -809,9 +802,6 @@
|
|||
|
||||
(ConstantExpression
|
||||
[(Expression) $1]))))
|
||||
|
||||
;(define advanced-grammar (cadr parsers))
|
||||
;(set! parsers (car parsers))
|
||||
|
||||
(define parse-advanced (car parsers))
|
||||
(define parse-advanced-interactions (cadr parsers))
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
(module beginner-parser mzscheme
|
||||
(module beginner-parser scheme/base
|
||||
|
||||
(require "general-parsing.ss"
|
||||
"lexer.ss"
|
||||
|
@ -6,18 +6,10 @@
|
|||
"../parameters.ss")
|
||||
|
||||
(require parser-tools/yacc
|
||||
(all-except parser-tools/lex input-port)
|
||||
syntax/readerr
|
||||
(prefix class: mzlib/class))
|
||||
|
||||
;(require (lib "build-grammar.ss" "tester"))
|
||||
|
||||
#;(define-syntax testing-parser
|
||||
(syntax-rules ()
|
||||
((_ parse-info ...) (parser parse-info ...))))
|
||||
|
||||
(except-in parser-tools/lex input-port)
|
||||
syntax/readerr)
|
||||
|
||||
(provide parse-beginner parse-beginner-interactions parse-beginner-expression parse-beginner-type)
|
||||
;(provide beginner-grammar)
|
||||
|
||||
(define parsers
|
||||
(parser
|
||||
|
@ -26,14 +18,14 @@
|
|||
(tokens java-vals special-toks Keywords Separators EmptyLiterals Operators ExtraKeywords)
|
||||
;(terminals val-tokens special-tokens keyword-tokens separator-tokens literal-tokens operator-tokens)
|
||||
(error (lambda (tok-ok name val start-pos end-pos)
|
||||
(if ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
(when ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
|
||||
(end EOF)
|
||||
(src-pos)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
(module full-parser mzscheme
|
||||
(module full-parser scheme/base
|
||||
|
||||
(require "general-parsing.ss"
|
||||
"lexer.ss"
|
||||
|
@ -6,7 +6,7 @@
|
|||
"../parameters.ss")
|
||||
|
||||
(require parser-tools/yacc
|
||||
(all-except parser-tools/lex input-port)
|
||||
(except-in parser-tools/lex input-port)
|
||||
syntax/readerr)
|
||||
|
||||
(provide parse-full parse-full-interactions parse-full-expression parse-full-type)
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
#cs
|
||||
(module general-parsing mzscheme
|
||||
(module general-parsing scheme/base
|
||||
|
||||
(require (all-except parser-tools/lex input-port)
|
||||
mzlib/string
|
||||
(prefix class: mzlib/class)
|
||||
mzlib/list)
|
||||
(require
|
||||
(for-syntax scheme/base)
|
||||
(except-in parser-tools/lex input-port)
|
||||
mzlib/string
|
||||
(prefix-in class: scheme/class))
|
||||
(require "../ast.ss" "../parameters.ss" "lexer.ss")
|
||||
|
||||
(provide (all-defined))
|
||||
(provide (all-defined-out))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;Methods used by all generated parsers
|
||||
|
@ -16,16 +16,16 @@
|
|||
((_ end)
|
||||
(syntax (build-src 1 end)))
|
||||
((_ start end)
|
||||
(with-syntax ((start-pos (datum->syntax-object
|
||||
(with-syntax ((start-pos (datum->syntax
|
||||
(syntax end)
|
||||
(string->symbol
|
||||
(format "$~a-start-pos"
|
||||
(syntax-object->datum (syntax start))))))
|
||||
(end-pos (datum->syntax-object
|
||||
(syntax->datum (syntax start))))))
|
||||
(end-pos (datum->syntax
|
||||
(syntax end)
|
||||
(string->symbol
|
||||
(format "$~a-end-pos"
|
||||
(syntax-object->datum (syntax end)))))))
|
||||
(syntax->datum (syntax end)))))))
|
||||
(syntax
|
||||
(make-src (position-line start-pos)
|
||||
(position-col start-pos)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
(module intermediate-access-parser mzscheme
|
||||
(module intermediate-access-parser scheme/base
|
||||
|
||||
(require "general-parsing.ss"
|
||||
"lexer.ss"
|
||||
|
@ -6,37 +6,30 @@
|
|||
"../parameters.ss")
|
||||
|
||||
(require parser-tools/yacc
|
||||
(all-except parser-tools/lex input-port)
|
||||
(except-in parser-tools/lex input-port)
|
||||
syntax/readerr)
|
||||
|
||||
(require-for-syntax "lexer.ss")
|
||||
;(require (lib "build-grammar.ss" "tester"))
|
||||
(require (for-syntax "lexer.ss"))
|
||||
|
||||
(define-syntax testing-parser
|
||||
(syntax-rules ()
|
||||
((_ parse-info ...) (parser parse-info ...))))
|
||||
|
||||
(provide parse-intermediate+access parse-intermediate+access-interactions
|
||||
parse-intermediate+access-expression parse-intermediate+access-type)
|
||||
;(provide intermediate-grammar)
|
||||
|
||||
|
||||
(define parsers
|
||||
(testing-parser
|
||||
(parser
|
||||
(start CompilationUnit IntermediateInteractions Expression Type)
|
||||
;;(debug "parser.output")
|
||||
(tokens java-vals special-toks Keywords Separators EmptyLiterals Operators ExtraKeywords)
|
||||
;(terminals val-tokens special-tokens keyword-tokens separator-tokens literal-tokens operator-tokens)
|
||||
(error (lambda (tok-ok name val start-pos end-pos)
|
||||
(if ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
|
||||
(when ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
|
||||
(end EOF)
|
||||
(src-pos)
|
||||
|
||||
|
@ -626,9 +619,6 @@
|
|||
(ConstantExpression
|
||||
[(Expression) $1]))))
|
||||
|
||||
;(define intermediate-grammar (cadr parsers))
|
||||
;(set! parsers (car parsers))
|
||||
|
||||
(define parse-intermediate+access (car parsers))
|
||||
(define parse-intermediate+access-interactions (cadr parsers))
|
||||
(define parse-intermediate+access-expression (caddr parsers))
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
(module intermediate-parser mzscheme
|
||||
(module intermediate-parser scheme/base
|
||||
|
||||
(require "general-parsing.ss"
|
||||
"lexer.ss"
|
||||
|
@ -6,36 +6,30 @@
|
|||
"../parameters.ss")
|
||||
|
||||
(require parser-tools/yacc
|
||||
(all-except parser-tools/lex input-port)
|
||||
(except-in parser-tools/lex input-port)
|
||||
syntax/readerr)
|
||||
|
||||
(require-for-syntax "lexer.ss")
|
||||
;(require (lib "build-grammar.ss" "tester"))
|
||||
(require (for-syntax "lexer.ss"))
|
||||
|
||||
(define-syntax testing-parser
|
||||
(syntax-rules ()
|
||||
((_ parse-info ...) (parser parse-info ...))))
|
||||
|
||||
(provide parse-intermediate parse-intermediate-interactions
|
||||
parse-intermediate-expression parse-intermediate-type)
|
||||
;(provide intermediate-grammar)
|
||||
|
||||
|
||||
(define parsers
|
||||
(testing-parser
|
||||
(parser
|
||||
(start CompilationUnit IntermediateInteractions Expression Type)
|
||||
;;(debug "parser.output")
|
||||
(tokens java-vals special-toks Keywords Separators EmptyLiterals Operators ExtraKeywords)
|
||||
;(terminals val-tokens special-tokens keyword-tokens separator-tokens literal-tokens operator-tokens)
|
||||
(error (lambda (tok-ok name val start-pos end-pos)
|
||||
(if ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
(when ((determine-error))
|
||||
(raise-read-error (format "Parse error near <~a:~a>" name val)
|
||||
(file-path)
|
||||
(position-line start-pos)
|
||||
(position-col start-pos)
|
||||
(+ (position-offset start-pos) (interactions-offset))
|
||||
(- (position-offset end-pos)
|
||||
(position-offset start-pos))))))
|
||||
|
||||
(end EOF)
|
||||
(src-pos)
|
||||
|
@ -612,9 +606,6 @@
|
|||
(ConstantExpression
|
||||
[(Expression) $1]))))
|
||||
|
||||
;(define intermediate-grammar (cadr parsers))
|
||||
;(set! parsers (car parsers))
|
||||
|
||||
(define parse-intermediate (car parsers))
|
||||
(define parse-intermediate-interactions (cadr parsers))
|
||||
(define parse-intermediate-expression (caddr parsers))
|
||||
|
|
|
@ -1,20 +1,20 @@
|
|||
(module lexer mzscheme
|
||||
(module lexer scheme/base
|
||||
|
||||
;; Lexical Analysis according to the Java Language Specification First Edition
|
||||
;; chapter 3.
|
||||
;; Lacks all Unicode support
|
||||
|
||||
(require mzlib/class
|
||||
(require scheme/class
|
||||
parser-tools/lex
|
||||
(prefix re: parser-tools/lex-sre)
|
||||
(lib "parameters.ss" "profj"))
|
||||
(prefix-in re: parser-tools/lex-sre)
|
||||
profj/parameters)
|
||||
|
||||
(define (image-snip%)
|
||||
(if (mred?)
|
||||
(dynamic-require 'mred 'image-snip%)
|
||||
(class object% (super-instantiate ()))))
|
||||
|
||||
(provide (all-defined-except image-snip%))
|
||||
(provide (except-out (all-defined-out) image-snip%))
|
||||
(define-struct test-case (test))
|
||||
(define-struct example-box (contents))
|
||||
(define-struct interact-case (box))
|
||||
|
|
|
@ -498,7 +498,7 @@
|
|||
(append (accesses-public fields) (accesses-package fields)
|
||||
(accesses-protected fields)))
|
||||
(generate-contract-defs (class-name))))
|
||||
(stm-class (generate-stm-class (class-name)
|
||||
#;(stm-class (generate-stm-class (class-name)
|
||||
(parent-name)
|
||||
(class-record-methods class-rec)
|
||||
(class-record-fields class-rec)))
|
||||
|
@ -731,7 +731,7 @@
|
|||
))
|
||||
|
||||
,@wrapper-classes
|
||||
,stm-class
|
||||
#;,stm-class
|
||||
|
||||
#;,@(create-generic-methods (append (accesses-public methods)
|
||||
(accesses-package methods)
|
||||
|
|
Loading…
Reference in New Issue
Block a user