Commit Graph

403 Commits

Author SHA1 Message Date
Ryan Culpepper
38d984367e syntax/parse: fix check-literals code (references to disappearing names) 2011-10-02 14:17:07 -06:00
Ryan Culpepper
a22783f635 syntax/parse: added workaround for racket/runtime-path at phase>0 2011-09-30 04:13:09 -06:00
Ryan Culpepper
5befa7320f syntax/id-table: added uncontracted private version 2011-09-30 04:13:09 -06:00
Ryan Culpepper
323aff1efb syntax/parse: added syntax/parse/pre
No *residual* dependencies on racket/contract/base (the *disappearing*
macro transformers and compile-time support do use contracts, though).
2011-09-30 04:13:09 -06:00
Ryan Culpepper
1c6b8bd68e syntax/parse: lazily load most macro transformers and compile-time support 2011-09-30 04:13:09 -06:00
Ryan Culpepper
c7f86d276c removed useless requires 2011-09-27 19:28:44 -06:00
Ryan Culpepper
7cc1476170 syntax/parse: fix bug: integrated stxclass might not bind pvar to syntax 2011-09-21 16:58:52 -06:00
Ryan Culpepper
095b5a5131 syntax/parse: use new primitive cross-phase identifier comparison 2011-09-20 14:27:33 -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
Eli Barzilay
623c7493ed Some selective #:when (not ...)' -> #:unless ...'. 2011-09-16 10:48:18 -04:00
Matthew Flatt
c352ef8fce allow different phases for `free-identifier=?' arguments 2011-09-12 17:08:50 -06:00
Matthew Flatt
41bdb139d4 fix a formerly overlooked `kernel-syntax-case'
Caught by the Check Syntax tests that use Pretty Big
2011-09-08 19:03:54 -06:00
Matthew Flatt
d3c56c9f13 generalized `begin-for-syntax' 2011-09-08 14:06:00 -06:00
Ryan Culpepper
3aa16f2c26 syntax/parse: speed up "is literal bound?" check
Can't do check completely statically, because phase of comparison
is expression (and even default is slightly unpredictable).
So instead compute whether check would succeed for likely phase
offsets, and use list of ok offsets as run-time fast path (memv
instead of identifier-binding).
2011-09-06 12:41:03 -06:00
Ryan Culpepper
68e76a9876 syntax/parse: speed up free-identifier=?/phases when phases are same 2011-09-06 12:41:03 -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
2ef9f5ae0e Fix a bug in resolve-module-path' to do an expand-user-path', which
`file' specs do too (in `require' etc).
2011-08-26 10:13:27 -04:00
Jay McCarthy
3cd6be5931 I believe this fixes PR12117. The teaching languages rely on syntax/struct. (I have run the teaching language tests, but do not other uses of syntax/struct.) It appears that syntax/struct has been incorrectly creating this information for some time. The problem is that it would end the static info with a #f if the selectors or setters were omitted, but reading the documentation implies that there should be a final #f in either case. I've therefore changed the boolean to an or over the flags 2011-08-19 11:30:42 -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
Matthew Flatt
39a96dd699 add `prop:liberal-define-context' 2011-08-09 16:33:16 -06:00
Ryan Culpepper
95ce7ec6ed scribble style (capitalize section names) 2011-08-09 12:29:28 -06:00
Matthew Flatt
c6f1178be3 fix an error message 2011-07-27 05:47:46 +01:00
Matthew Flatt
d8d762517f fix `get-module-path' and associated exception
Closes PR 12029
2011-07-17 08:14:33 -06:00
Matthew Flatt
ab0e78122c revert unnecessary refactoring
--- intended to avoid creating a dependency that already exists

 Merge 5.1.2
2011-07-16 21:02:41 -06:00
Matthew Flatt
7af5d490ad fix cm to configure reader when reading .dep files
Merge to 5.1.2
2011-07-16 19:29:28 -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
Vincent St-Amour
111ef109c3 Add vectors to syntax->list. 2011-07-14 17:06:52 -04:00
Carl Eastlund
00a6442712 Changed source-location->string and ->prefix to use
path->relative-string/library to produce collection and planet-relative source
names.
2011-07-09 14:48:14 -04: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
Eric Dobson
07910253b4 Fixes build-struct-expand-info to create correct struct info.
Adds a check to struct-info? to make sure selectors
and mutators are the same length. Closes PR12017.
2011-07-05 11:25:10 -04:00
Eli Barzilay
3157955d40 ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
Eli Barzilay
4da4a2759b New setup/path-to-relative' that supersedes unstable/dirs' and most of
`setup/private/path-utils'.

The API is a little different: instead of getting the alist and the
path, there's a curried function that gets the alist and produces a
function to do the substitutions.
2011-07-02 01:10:38 -04: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
Matthew Flatt
b163edff9b clean up my clumsy first attempt to adapt the web-server languages
for syntax taints
2011-07-01 17:11:16 -06:00
Carl Eastlund
97642c1cb6 Fixed syntax/parse bug:
Syntax classes with keyword arguments were unintentionally requiring all
arguments at an application site to be in alphabetical order.
Added a test for this fix.
2011-07-01 15:32:34 -04:00
Robby Findler
69b5daa9e6 remove docs tests that no one was interested in 2011-07-01 11:38:09 +08:00
Matthew Flatt
1160d3df62 remove syntax certificates; add syntax taints 2011-06-29 19:15:48 -06:00
Eli Barzilay
40124a0619 A long overdue scan to eliminate files without terminating newlines.
(DrRacket should really do that.)
2011-06-28 02:01:41 -04: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
Ryan Culpepper
2cea046fef syntax/parse: report stxclass arity error without ~var form
closes PR 11933
2011-06-27 10:21:12 -06: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
5bf4b1c930 moved phase-of-enclosing-module to unstable/syntax
closes PR 11970
2011-06-10 13:22:33 -06:00
Ryan Culpepper
c8a691490a syntax/parse: added literal-set->predicate
closes PR 11968
2011-06-10 13:22:26 -06:00
Sam Tobin-Hochstadt
744d1921d8 Remove duplicate definitions; reprovide from `racket/private/stx' instead. 2011-05-16 14:55:17 -04:00
Sam Tobin-Hochstadt
18e83f2f3b Fix result contract of `stx->list'. 2011-05-16 14:55:17 -04:00
Robby Findler
507b1cd8fd moved the docs-complete library into rackunit
to avoid having a separate, new manual for the
  one library
2011-05-05 16:10:42 -05: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
d9f05a61a3 syntax/parse: better error message for unbound literals 2011-05-05 02:17:54 -06:00
Matthew Flatt
1b14c6a38e fix mistakes uncovered by optimizer warnings 2011-05-03 06:57:48 -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
0a048b67bb syntax/parse: refactored some parsing/checking code 2011-05-02 20:28:51 -06:00
Ryan Culpepper
aac8be59ac updated syntax/parse docs 2011-04-25 20:24:35 -06:00
Ryan Culpepper
bf5248e3b5 syntax/parse: changed #:declare back to "magical" scoping 2011-04-25 20:24:35 -06:00
Robby Findler
e7d0029aea added lots of new tests that our documentation is complete 2011-04-25 13:24:43 -05:00
Robby Findler
21cbd9ad81 added the racket/contract/combinator library,
and documented and adjusted these libraries:
     racket/contract/base
     racket/contract/exists
     racket/contract/parametric (renamed from exists)
     racket/contract/region
2011-04-25 11:51:44 -05: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
Ryan Culpepper
86f65468d7 removed define-pattern-variable 2011-04-07 09:47:20 -06:00
Ryan Culpepper
73ab167522 created racket/syntax from parts of unstable/syntax 2011-04-07 09:47:20 -06:00
Ryan Culpepper
0bec757e5e syntax/parse: fixed bug in ~literal uncovered by litset changes 2011-04-07 09:47:20 -06:00
Robby Findler
2893470f27 eliminate one more use of mzlib/contract 2011-04-06 11:35:26 -05:00
Vincent St-Amour
5200b93a0c Fix ~literal patterns in syntax-parse. 2011-04-01 14:56:17 -04:00
Robby Findler
d1414748a1 fix the contract on get-module-code
closes PR 11836
2011-04-01 11:57:55 -05:00
Ryan Culpepper
c677932baf syntax/parse: added define/syntax-parse, like define/with-syntax 2011-04-01 02:12:30 -06:00
Ryan Culpepper
896cb86dc4 syntax/parse: added phase options to define-literal-set 2011-04-01 00:57:04 -06:00
Robby Findler
9245f4b19a move away from mzlib/contract and towards racket/contract 2011-03-28 23:04:43 -05:00
Ryan Culpepper
bf591d4d01 syntax/parse: added #:disable-colon-notation option 2011-03-17 13:47:38 -06:00
Ryan Culpepper
b5154b444f syntax/parse: docs for define-simple-macro 2011-03-17 13:47:38 -06:00
Ryan Culpepper
012746540c syntax/parse: added define-simple-macro form (needs docs) 2011-03-17 13:47:38 -06:00
Ryan Culpepper
1353d40612 syntax/parse: allow zero syntax-parse clauses and zero syntax-class variants 2011-03-17 13:47:38 -06:00
Matthew Flatt
cf69cb2aff special treatment of void as 'inferred-name property
allows keyword-based application to hide temporary
 names that happen to be bound to procedure arguments
2011-03-13 09:02:39 -06:00
Ryan Culpepper
4ef3dfe6a8 fixed doc typo
Fixes PR 11703
  Merge to release branch
2011-02-03 17:02:35 -07:00
David Van Horn
c9519fd113 Fixed various spelling errors. 2011-02-03 17:42:33 -05:00
Ryan Culpepper
b8fc41283e syntax/parse: exported and documented ~do action pattern 2010-12-09 12:19:34 -07:00
Ryan Culpepper
c51f769672 syntax/parse: vars w/ splicing-stxclasses bind stxobjs, not lists 2010-12-09 12:19:26 -07:00
Matthew Flatt
43d69fa80e fix duplicate definitions 2010-12-05 13:15:43 -07:00
Ryan Culpepper
8605fecaf3 syntax/parse: fixed bug in #:do (with expression) 2010-11-26 19:28:55 -07:00
Ryan Culpepper
a2c4574688 syntax-parse: improved error for non-syntax attribute in syntax template 2010-11-11 16:14:37 -07:00
Ryan Culpepper
a39645ff7a fixed error in syntax-parse docs (re ~bind, #:attr) 2010-11-05 13:47:54 -06:00
Ryan Culpepper
553ef2834d syntax/parse: removed stx from expectstack 2010-11-03 18:09:21 -06:00
Ryan Culpepper
95d690d550 syntax/parse: pinpoint stx from progress, not expectstack 2010-11-03 18:09:21 -06:00
Ryan Culpepper
68e7cda162 syntax/parse: added todo items 2010-11-03 18:09:20 -06:00
Ryan Culpepper
60f8d3854a syntax-parse: tidy up 2010-10-29 16:01:51 -06:00
Ryan Culpepper
c941db0bfa Added ~peek-not, cf packrat/PEG ! operator 2010-10-22 15:30:24 -06:00
Matthew Flatt
fe301b1ff4 print-boolean-long-form, #true, #false, read-accept-lang, flonum? 2010-10-08 15:13:04 -06:00
Vincent St-Amour
f281abe693 Added quote-syntax to kernel-literals. 2010-10-06 17:32:29 -04:00
Ryan Culpepper
de5b110d75 added lookahead (~peek) 2010-10-04 11:54:03 -06:00
Eli Barzilay
ee138cf2cb Some repeated "and and"s and "the the"s, and two more typos.
Closes PR 11229.
2010-09-20 15:38:18 -04:00
Ryan Culpepper
274c56a4d5 fixed bug in syntax/modcode docs 2010-09-17 16:54:53 -06:00
Ryan Culpepper
e72244513d fixed racket/dict contracts
un-split syntax/id-table (no contract-free version)
2010-09-13 13:21:03 -06:00
Ryan Culpepper
3f15f5bc13 edited syntax/parse intro 2010-09-13 13:21:01 -06:00
Ryan Culpepper
90cf9f2183 reorg and renamed syntax/parse docs, removed useless section tags
Fixes PR 11163
2010-09-06 23:26:42 -06:00
Ryan Culpepper
fff692309e removed useless requires 2010-09-03 13:53:42 -06:00
Ryan Culpepper
b572f0c7dc removed useless requires 2010-09-03 13:53:41 -06:00
Ryan Culpepper
fa4f48a82c id-tables can work at different phases now
reduced allocation for id-table updates
2010-09-03 13:53:41 -06:00