removed EoPL from the language dialog (and adjust the docs a little
to suggest using the #lang variant)
This commit is contained in:
parent
c2291e049d
commit
4d4a94a38a
|
@ -1,68 +0,0 @@
|
|||
#|
|
||||
|
||||
The EoPL language can almost be specified via info.ss fields, but
|
||||
on-execute needs to install the EoPL exception handler as its
|
||||
last action. (The module body can't do that, because a `with-handlers'
|
||||
wraps the load of the module.)
|
||||
|
||||
|#
|
||||
|
||||
#lang mzscheme
|
||||
|
||||
(require mzlib/unit
|
||||
mzlib/class
|
||||
drscheme/tool
|
||||
string-constants)
|
||||
|
||||
(provide tool@)
|
||||
|
||||
(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 (default-settings)
|
||||
(let ([s (super default-settings)])
|
||||
(drscheme:language:make-simple-settings (drscheme:language:simple-settings-case-sensitive s)
|
||||
'trad-write
|
||||
(drscheme:language:simple-settings-fraction-style s)
|
||||
(drscheme:language:simple-settings-show-sharing s)
|
||||
(drscheme:language:simple-settings-insert-newlines s)
|
||||
(drscheme:language:simple-settings-annotations s))))
|
||||
(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%))))))
|
|
@ -41,7 +41,7 @@ provides a subset of functions and syntactic forms of
|
|||
@scheme[r5rs] forms. See below for a complete list. The
|
||||
language is intended for use with the textbook @cite["EoPL"].
|
||||
|
||||
@defmodule[eopl/eopl]
|
||||
@defmodulelang[eopl #:use-sources (eopl/eopl)]
|
||||
|
||||
The following bindings are re-@scheme[provide]d from
|
||||
@schememodname[mzscheme]:
|
||||
|
@ -203,7 +203,7 @@ The following bindings are re-@scheme[provide]d from
|
|||
|
||||
@defform[(provide provide-spec ...)]{
|
||||
|
||||
Useful only with a module that uses @schememodname[eopl/eopl] as a
|
||||
Useful only with a module that uses @schememodname[eopl] as a
|
||||
language: exports identifiers from the module. See @mzscheme-provide
|
||||
from @schememodname[mzscheme] for more information.}
|
||||
|
||||
|
@ -213,7 +213,7 @@ The following bindings are re-@scheme[provide]d from
|
|||
mutate this variable to install an exception-handling
|
||||
thunk. Typically, the handler thunk escapes through a continuation.
|
||||
|
||||
The @schememodname[eopl/eopl] library sets this variable to
|
||||
The @schememodname[eopl] library sets this variable to
|
||||
@scheme[#f] in the current namespace when it executes.}
|
||||
|
||||
@defproc[(install-eopl-exception-handler) void?]{
|
||||
|
@ -221,7 +221,7 @@ The following bindings are re-@scheme[provide]d from
|
|||
Sets an exception handler to one that checks
|
||||
@scheme[eopl:error-stop].
|
||||
|
||||
The @schememodname[eopl/eopl] library calls this function when it
|
||||
The @schememodname[eopl] library calls this function when it
|
||||
executes.}
|
||||
|
||||
@(bibliography
|
||||
|
|
|
@ -2,11 +2,6 @@
|
|||
|
||||
(require string-constants)
|
||||
|
||||
(define tools (list "eopl-tool.ss"))
|
||||
(define tool-icons (list "eopl-small.png"))
|
||||
(define tool-names (list "Essentials of Programming Languages"))
|
||||
(define tool-urls (list "http://www.eopl3.com/"))
|
||||
|
||||
(define scribblings '(("eopl.scrbl" () (language -12))))
|
||||
|
||||
(define textbook-pls
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
. The EoPL language is no longer available via the Language
|
||||
dialog in DrRacket; use
|
||||
|
||||
#lang eopl
|
||||
|
||||
and the 'language declared in the source' language in DrRacket.
|
||||
|
||||
------------------------------
|
||||
Version 5.1.1
|
||||
------------------------------
|
||||
|
|
Loading…
Reference in New Issue
Block a user