use #lang and reindent
svn: r15917
This commit is contained in:
parent
70cf9b6d62
commit
d2802e6c2a
|
@ -1,4 +1,3 @@
|
|||
|
||||
#|
|
||||
|
||||
The EoPL language can almost be specified via info.ss fields, but
|
||||
|
@ -8,53 +7,54 @@ wraps the load of the module.)
|
|||
|
||||
|#
|
||||
|
||||
(module eopl-tool mzscheme
|
||||
(require mzlib/unit
|
||||
mzlib/class
|
||||
drscheme/tool
|
||||
string-constants)
|
||||
|
||||
(provide tool@)
|
||||
#lang mzscheme
|
||||
|
||||
(define tool@
|
||||
(unit
|
||||
(import drscheme:tool^)
|
||||
(export drscheme:tool-exports^)
|
||||
(define language-base%
|
||||
(class* object% (drscheme:language:simple-module-based-language<%>)
|
||||
(define/public (get-language-numbers)
|
||||
'(-500 -400))
|
||||
(define/public (get-language-position)
|
||||
(list (string-constant teaching-languages)
|
||||
"Essentials of Programming Languages (3rd ed.)"))
|
||||
(define/public (get-module)
|
||||
'(lib "eopl/eopl.ss"))
|
||||
(define/public (get-one-line-summary)
|
||||
"Based on the Friedman, Wand, and Haynes text")
|
||||
(define/public (get-language-url)
|
||||
"http://www.eopl3.com/")
|
||||
(define/public (get-reader)
|
||||
(lambda (src port)
|
||||
(let ([v (read-syntax src port)])
|
||||
(if (eof-object? v)
|
||||
v
|
||||
(namespace-syntax-introduce v)))))
|
||||
(super-instantiate ())))
|
||||
(require mzlib/unit
|
||||
mzlib/class
|
||||
drscheme/tool
|
||||
string-constants)
|
||||
|
||||
(define language%
|
||||
(class (drscheme:language:module-based-language->language-mixin
|
||||
(drscheme:language:simple-module-based-language->module-based-language-mixin
|
||||
language-base%))
|
||||
(define/override (use-namespace-require/copy?) #t)
|
||||
(define/override (on-execute settings run-in-user-thread)
|
||||
(super on-execute settings run-in-user-thread)
|
||||
(print-mpair-curly-braces #f)
|
||||
(run-in-user-thread
|
||||
(lambda ()
|
||||
((namespace-variable-value 'install-eopl-exception-handler)))))
|
||||
(super-instantiate ())))
|
||||
(provide tool@)
|
||||
|
||||
(define (phase1) (void))
|
||||
(define (phase2)
|
||||
(drscheme:language-configuration:add-language
|
||||
(make-object ((drscheme:language:get-default-mixin) language%)))))))
|
||||
(define tool@
|
||||
(unit
|
||||
(import drscheme:tool^)
|
||||
(export drscheme:tool-exports^)
|
||||
(define language-base%
|
||||
(class* object% (drscheme:language:simple-module-based-language<%>)
|
||||
(define/public (get-language-numbers)
|
||||
'(-500 -400))
|
||||
(define/public (get-language-position)
|
||||
(list (string-constant teaching-languages)
|
||||
"Essentials of Programming Languages (3rd ed.)"))
|
||||
(define/public (get-module)
|
||||
'(lib "eopl/eopl.ss"))
|
||||
(define/public (get-one-line-summary)
|
||||
"Based on the Friedman, Wand, and Haynes text")
|
||||
(define/public (get-language-url)
|
||||
"http://www.eopl3.com/")
|
||||
(define/public (get-reader)
|
||||
(lambda (src port)
|
||||
(let ([v (read-syntax src port)])
|
||||
(if (eof-object? v)
|
||||
v
|
||||
(namespace-syntax-introduce v)))))
|
||||
(super-instantiate ())))
|
||||
|
||||
(define language%
|
||||
(class (drscheme:language:module-based-language->language-mixin
|
||||
(drscheme:language:simple-module-based-language->module-based-language-mixin
|
||||
language-base%))
|
||||
(define/override (use-namespace-require/copy?) #t)
|
||||
(define/override (on-execute settings run-in-user-thread)
|
||||
(super on-execute settings run-in-user-thread)
|
||||
(print-mpair-curly-braces #f)
|
||||
(run-in-user-thread
|
||||
(lambda ()
|
||||
((namespace-variable-value 'install-eopl-exception-handler)))))
|
||||
(super-instantiate ())))
|
||||
|
||||
(define (phase1) (void))
|
||||
(define (phase2)
|
||||
(drscheme:language-configuration:add-language
|
||||
(make-object ((drscheme:language:get-default-mixin) language%))))))
|
||||
|
|
Loading…
Reference in New Issue
Block a user