* psyntax.ss: Updated.

psyntax.pp: Bugfix: Previous version had some leading "t":s cut
off!
This commit is contained in:
Mikael Djurfeldt 1997-09-03 19:32:26 +00:00
commit e9b7bb80d7
3 changed files with 69 additions and 49 deletions

View file

@ -1,3 +1,9 @@
Wed Sep 3 21:29:13 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
* psyntax.ss: Updated.
psyntax.pp: Bugfix: Previous version had some leading "t":s cut
off!
Tue Sep 2 00:26:42 1997 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
* boot-9.scm (gensym): Removed (replaced by primitive).

View file

@ -1,6 +1,6 @@
;;; psyntax.pp
;;; automatically generated from psyntax.ss
;;; Mon Aug 18 20:35:13 EST 1997
;;; Wed Aug 20 08:31:55 EST 1997
;;; see copyright notice in psyntax.ss
((lambda ()
@ -169,9 +169,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -233,7 +233,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -1511,9 +1511,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -1575,7 +1575,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -1963,9 +1963,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -2027,7 +2027,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -2458,9 +2458,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -2522,7 +2522,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -2840,9 +2840,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -2904,7 +2904,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -3222,9 +3222,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -3286,7 +3286,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -4681,9 +4681,9 @@ extend-ribcage!
make-empty-ribcage
new-mark
anti-mark
he-anti-mark
op-marked?
op-wrap
the-anti-mark
top-marked?
top-wrap
empty-wrap
set-ribcage-labels!
set-ribcage-marks!
@ -4745,7 +4745,7 @@ put-global-definition-hook
gensym-hook
error-hook
local-eval-hook
op-level-eval-hook
top-level-eval-hook
annotation?
fx<
fx=
@ -5749,7 +5749,7 @@ dummy
k
keyword
pattern
emplate)
template)
#((top)
(top)
(top)
@ -5777,7 +5777,7 @@ syntax
k
keyword
pattern
emplate)
template)
#((top)
(top)
(top)
@ -5837,7 +5837,7 @@ let
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(_ e1 e2 e3)
@ -5868,7 +5868,7 @@ if
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(_ e1 e2 e3)
@ -5883,7 +5883,7 @@ if
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(_ e1 e2 e3)
@ -6294,7 +6294,7 @@ m2)
#((top))
#("i"))))
(cons (list (list '#(syntax-object
t
((top)
#(ribcage
#(e0)
@ -6375,7 +6375,7 @@ m2)
#((top))
#("i"))))
#(syntax-object
t
((top)
#(ribcage
#(e0)
@ -6415,7 +6415,7 @@ m2)
#((top))
#("i"))))
#(syntax-object
t
((top)
#(ribcage
#(e0)
@ -6504,7 +6504,7 @@ m2)
#((top))
#("i"))))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(e0
@ -6591,7 +6591,7 @@ m2)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(e0
@ -6635,7 +6635,7 @@ m2)
#("i"))))
(cons g1297
'(#(syntax-object
t
((top)
#(ribcage
#(e0
@ -6914,7 +6914,7 @@ m2)
#((top))
#("i"))))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(e0)
@ -7003,7 +7003,7 @@ m2)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(e0)
@ -7047,7 +7047,7 @@ m2)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(e0)
@ -7145,7 +7145,7 @@ m2)
#((top))
#("i"))))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(e0
@ -7240,7 +7240,7 @@ m2)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(e0
@ -7288,7 +7288,7 @@ m2)
#("i"))))
(cons g1311
'(#(syntax-object
t
((top)
#(ribcage
#(e0
@ -9085,7 +9085,7 @@ let
#(ribcage () () ())
#(ribcage #(x) #((top)) #("i"))))
(list (list '#(syntax-object
t
((top)
#(ribcage
#(body)
@ -9264,7 +9264,7 @@ m2)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(k
@ -9574,7 +9574,7 @@ m2)
#((top))
#("i"))))
'#(syntax-object
t
((top)
#(ribcage
#(k

View file

@ -13,6 +13,7 @@
;;; AUTHORS BE LIABLE FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES OF ANY
;;; NATURE WHATSOEVER.
;;; Before attempting to port this code to a new implementation of
;;; Scheme, please read the notes below carefully.
@ -102,6 +103,13 @@
;;; evaluator/expander that no expansion is necessary, since expr has
;;; already been fully expanded to core forms.
;;;
;;; eval will not be invoked during the loading of psyntax.pp. After
;;; psyntax.pp has been loaded, the expansion of any macro definition,
;;; whether local or global, will result in a call to eval. If, however,
;;; sc-expand has already been registered as the expander to be used
;;; by eval, and eval accepts one argument, nothing special must be done
;;; to support the "noexpand" flag, since it is handled by sc-expand.
;;;
;;; (error who format-string why what)
;;; where who is either a symbol or #f, format-string is always "~a ~s",
;;; why is always a string, and what may be any object. error should
@ -127,6 +135,12 @@
;;; the code below, but to avoid bootstrapping problems, do so only
;;; after you have a working version of the expander.
;;; Chez Scheme allows the syntactic form (syntax <template>) to be
;;; abbreviated to #'<template>, just as (quote <datum>) may be
;;; abbreviated to '<datum>. The #' syntax makes programs written
;;; using syntax-case shorter and more readable and draws out the
;;; intuitive connection between syntax and quote.
;;; If you find that this code loads or runs slowly, consider
;;; switching to faster hardware or a faster implementation of
;;; Scheme. In Chez Scheme on a 200Mhz Pentium Pro, expanding,