Jon Rafkind
6457e69b48
[honu] support for-syntax in require
2012-06-11 13:07:53 -06:00
Sam Tobin-Hochstadt
865a2cdcbd
Support definitions of keyword functions in Typed Racket.
...
Caveats:
- keyword function definitions do not define static
bindings, thus limiting optimization opportunities
- can't use `define:`, `lambda:`, etc with keywords
- error messages sometimes expose the implementation
- the optimizer skips most of the generated code for
keyword functions definitions (user-level code is
optimized)
2012-06-02 18:22:07 -04:00
Matthew Flatt
248301c9ed
disable nested `#lang'
...
A `syntax/module-reader' reader disables `#lang' when looping to
read a module body. The HtDP languages require a little additional
treatment.
2012-05-29 11:01:52 -06:00
Matthew Flatt
ee93e35260
syntax/free-vars: deterministic result order
...
Closes PR 12798
2012-05-28 20:15:43 -06:00
Matthew Flatt
964020f288
implement scribble/srcdoc' via submodules instead of
expand'
...
Also add a `for-doc' require form, make `proc-doc' et al. provide
forms, make `provide/doc' an alias for `provide'.
2012-05-12 01:37:50 -06:00
Matthew Flatt
9412ea0707
add `syntax/quote' library
2012-05-12 00:55:12 -06:00
Ryan Culpepper
eb3dce14cd
fix some doc contracts for submodules
2012-05-07 14:46:13 -06:00
Matthew Flatt
9ba663aa77
preserve submoduleness in module path index for expanded submodules
...
The preserved path is exposed by a new `module-path-index-submodule'
function, and `module-path-index-join' now accepts an optional
submodule path.
Also, fixed a problem with `collapse-module-path-index' when
a module path indx is built on a resolved module path that
is a submodule path.
In addition to the main repair, `collapse-module-path[-index]' is
correctly documented to allow '(quote <sym>) rel-to paths.
Finally, `collapse-module-path-index' changed to use a symbolic
resolved module path that appears as the base of a module path
index, rather than falling back to the given rel-to path. It's
possble that the old beavior was intentional, but it wasn't tested,
and it seems more likely to have been a bug.
Closes PR 12724
2012-04-24 21:10:28 -06:00
Ryan Culpepper
211e382a70
syntax/parse: update phase discussion with begin-for-syntax
...
merge to 5.3
2012-04-10 15:50:32 -06:00
Kevin Tew
bba967144b
quote-module-name and quote-module-path now take an optional submodule path
...
(quote-module-name "..")
(quote-module-path ".." 'A 'B)
2012-03-28 18:52:02 -06:00
Ryan Culpepper
74ca931f5a
more template improvements
...
- loosen pattern variable depth rules (now compatible with syntax)
- generalize ?? form to head-templates
- doc improvements
- propagate paren-shape property
2012-03-21 17:48:10 -06:00
Matthew Flatt
6743900fc7
get-module-code repair
2012-03-09 10:34:57 -07:00
Matthew Flatt
a6a1b02de5
more doc updates for submodules
2012-03-09 10:34:57 -07:00
Matthew Flatt
3d69dfab86
first cut at submodules
2012-03-09 10:34:56 -07:00
Ryan Culpepper
fb7c7e3793
syntax/parse: added roles, other updates/fixes
...
expr/c uses role for contract label when avail
export ~peek-not (previously missed)
fixes for integrable stxclasses
2012-03-08 07:39:42 -07:00
Eli Barzilay
c007c345f9
A bunch of more typos like the ones in David's commit.
2012-02-21 14:21:43 -05:00
Ryan Culpepper
5a1badf397
syntax/parse: added template metafunctions
...
Also fixed some bugs and added simple optimizations.
2012-02-10 22:12:54 -07:00
Ryan Culpepper
06979954fa
syntax/parse: added experimental template form
...
Also added more atomic patterns to syntax-parse (previously overlooked).
2012-02-10 05:26:13 -07:00
Ryan Culpepper
ed1ba3a442
syntax/parse docs: use trusted sandbox config
...
closes PR 12546
2012-02-07 13:43:26 -07:00
Matthew Flatt
25dd8727cb
add datum-case', etc. as
syntax/datum'
...
This library is used by Redex, which wants a `syntax'-like template
language, but for datum values instead of syntax objects. Using
`datum-case' and `datum' generates much less code. Redex uses
only a small part of the general functionality, so adding
`syntax/datum' could be overkill. It's implemented by generalizing
the `syntax-case' and `syntax' pattern matching and template
constructing code, though; it's not a lot of extra code, and it's
easiest to generalize completely. We may find other uses for
datum templates, too.
2011-12-12 08:13:20 -07:00
Matthew Flatt
a04272d245
fix typo and text duplication
2011-11-27 13:27:04 -07:00
Matthew Flatt
b157ff2399
fix `#lang at-exp' spec and related
...
Closes PR 12174
2011-11-27 11:22:41 -07:00
Matthew Flatt
edec6fafd1
remove unused library (formerly used by the Racket->C compiler)
2011-11-12 05:33:20 -07:00
Ryan Culpepper
81fa15e27b
updated documentation for syntax/trusted-xforms
...
closes PR 12269
merge to 5.2
2011-10-16 02:40:41 -06:00
Ryan Culpepper
192e039e66
fix docs (eval) for syntax/keyword
2011-10-07 19:40:48 -06:00
Ryan Culpepper
528c05b228
emphasize syntax/id-table over syntax/boundmap
2011-10-07 19:40:48 -06:00
Ryan Culpepper
d3cb67b756
syntax/parse: fixed docs
...
closes PR 12255
2011-10-07 19:40:48 -06:00
Matthew Flatt
ec380e34ed
remove built-in reader and printing support for Honu
...
This is a backward-incompatible change, but I think it's
unlikely that any code depends on the removed bindings
or reader syntax.
2011-10-05 09:40:27 -06:00
Matthew Flatt
0197902309
add var-ref->mod-decl-insp' and switch
cur-code-insp' uses
...
Macros and other tools that need syntax privilege used
`(current-code-inspector)' at the module top-level to try to
capture the right code inspector at load time. It's more
consistent to instead use the enclosing module's declaration-time
inspector, and `var-ref->mod-decl-insp' provides that. The
new function works only on references to anonymous variables,
which limits access to the inspector.
The real function name is longer, of course.
2011-09-20 13:50:36 -06:00
Matthew Flatt
20a1440dcf
fix build-struct-generation' to work with
racket/base'
...
and also still works with `mzscheme'
2011-09-03 07:49:22 -06:00
Ryan Culpepper
883e9e9e6b
syntax/parse: syntax-parse sets current-syntax-context
2011-08-30 12:04:25 -06:00
Eli Barzilay
d61eb53686
Lots of documentation formatting.
...
Started as fixing misindented definitions, then more indentations, then
a bunch of similar things (square brackets, huge spaces at end-of-lines,
etc).
2011-08-15 07:50:04 -04:00
Ryan Culpepper
95ce7ec6ed
scribble style (capitalize section names)
2011-08-09 12:29:28 -06:00
Matthew Flatt
d8d762517f
fix `get-module-path' and associated exception
...
Closes PR 12029
2011-07-17 08:14:33 -06:00
Matthew Flatt
f40dc87c29
add letrec-syntaxes+values' to
kernel-syntax-case'
...
Do not merge to 5.1.2; the implications for backward
compatibility are not clear to me.
2011-07-15 20:16:58 -06:00
Carl Eastlund
2e6a608539
Corrected documentation of quote-module-name to indicate that it does not
...
produce collection and planet-relative paths on its own. Deprecated
quote-module-path, and replaced existing uses of it with quote-module-name.
2011-07-09 14:46:58 -04:00
Ryan Culpepper
0aecbf97ff
syntax/parse: add expr/c to main module
...
Merge to release branch
2011-07-08 15:34:59 -06:00
Ryan Culpepper
1b702a2ae3
docs reorganization
...
added tutorial, racket categories
relabeled some other categories
normalized manual names: de-bolded, changed some names
2011-07-01 17:16:53 -06:00
Eli Barzilay
a38f384a00
Finish converting scheme' ->
racket'.
...
Everything compiles fine now even if the compatibility bindings are
gone.
2011-06-28 00:45:38 -04:00
Eli Barzilay
ac26fe7554
A ton of @scheme*' ->
@racket*' and related updates.
...
Also, updates some of the mzlib files to point at `racket/*' libraries
rather than to `scheme/*' ones.
2011-06-25 04:08:47 -04:00
Eli Barzilay
debd1f9f1e
Recketizing much in `net/*', mass ".ss" -> ".rkt" conversion in .scrbl files.
...
(Some other minor things here and there.)
2011-06-20 04:27:14 -04:00
Ryan Culpepper
c8a691490a
syntax/parse: added literal-set->predicate
...
closes PR 11968
2011-06-10 13:22:26 -06:00
Sam Tobin-Hochstadt
18e83f2f3b
Fix result contract of `stx->list'.
2011-05-16 14:55:17 -04:00
Ryan Culpepper
abb8f63036
syntax/parse: made link to pattern-directive docs more prominent, indexed
...
Closes PR 11882
2011-05-05 02:17:54 -06:00
Ryan Culpepper
1bf95392d2
syntax/parse: added litset extension
2011-05-03 01:25:41 -06:00
Ryan Culpepper
e5e12ab01a
syntax/parse: added define-syntax-class/specialize
2011-05-02 21:02:11 -06:00
Ryan Culpepper
aac8be59ac
updated syntax/parse docs
2011-04-25 20:24:35 -06:00
Ryan Culpepper
fdede6f063
syntax/parse: added docs for litset #:at kw, relaxed restriction on arg
2011-04-15 14:47:29 -06:00
Ryan Culpepper
7828a7bfa7
moved unstable/{location,srcloc} to syntax collection
...
fixed bugs in unstable/wrapc
2011-04-08 08:25:22 -06:00
Ryan Culpepper
76c75d5a87
added stx-map to syntax/stx from unstable/syntax
2011-04-07 09:47:20 -06:00