Robby Findler
ed4f066bb6
svn: r15213
2009-06-19 14:57:47 +00:00
Robby Findler
ec44ee7df1
added hash/c
...
svn: r15210
2009-06-18 21:31:33 +00:00
Matthew Flatt
62325eb7cf
fix bugs related to changes in keyword-argument error messages
...
svn: r15098
2009-06-05 21:45:05 +00:00
Matthew Flatt
ae7dab88d3
change expansion of application with keyword arguments to use quoted lists instead of lifting
...
svn: r15083
2009-06-04 21:44:20 +00:00
Matthew Flatt
118d0e7a3c
adjust error messages for keyword-related function-call problems
...
svn: r15068
2009-06-03 19:19:48 +00:00
Matthew Flatt
43a3a326b7
hash quasiquote on hash tables (PR 10266) (merge to 4.2)
...
svn: r15003
2009-05-28 13:02:42 +00:00
Matthew Flatt
de0fc2e745
fix syntax patterns on prefabs (PR 10268) (merge to 4.2)
...
svn: r15001
2009-05-28 03:01:45 +00:00
Matthew Flatt
70859f0d0b
identifier-prune-lexical-context (4.2.0.2)
...
svn: r14850
2009-05-17 12:31:51 +00:00
Matthew Flatt
57ff3c2486
fix foldr/foldr argument checking (PR 10215)
...
svn: r14706
2009-05-04 02:20:06 +00:00
Eli Barzilay
a1d943146b
added a nullary case to compose
...
svn: r14697
2009-05-03 20:41:37 +00:00
Robby Findler
6d08558ab7
fixed a bug in my earlier bugfix (also PR 10221)
...
svn: r14662
2009-04-29 21:08:01 +00:00
Matthew Flatt
224f9fa3a7
fix bug in tracking paren shapes; fix Scribble binding search code; add syntax/template library
...
svn: r14661
2009-04-29 20:31:07 +00:00
Robby Findler
de6c1a524d
PR 10219
...
svn: r14654
2009-04-29 16:38:31 +00:00
Robby Findler
87c9aba9e0
added a little optimization to provide/contract
...
svn: r14646
2009-04-29 03:48:45 +00:00
Matthew Flatt
f51f8c8b7f
avoid generating unnecessary struct-accessor and -mutator names
...
svn: r14566
2009-04-20 13:14:40 +00:00
Matthew Flatt
4b3626c156
fix inverted argument default for editor<%> read-from-file method; better Check Sytax results on packages; added syntax/flatten-begin library
...
svn: r14548
2009-04-17 22:50:19 +00:00
Matthew Flatt
09320cea1c
tiny object-instantiation perf. tweak
...
svn: r14534
2009-04-16 21:24:42 +00:00
Matthew Flatt
709ad23400
performance improvements: class local-field access uses accessor with index built in (so the index is checked once); JIT partially inlines struct-field mutation
...
svn: r14530
2009-04-16 19:01:20 +00:00
Stevie Strickland
b7063fc563
Fix error message in define/contract.
...
svn: r14522
2009-04-15 15:43:04 +00:00
Matthew Flatt
5d0416aec9
David's build-list
...
svn: r14472
2009-04-09 00:58:13 +00:00
Eli Barzilay
4aab5e4eab
use void for true predicates, makes things run faster
...
svn: r14451
2009-04-08 00:02:57 +00:00
Matthew Flatt
1d26e97a35
Scheme-implemented editor classes; on-demand instantiation of module phases
...
svn: r14445
2009-04-07 17:12:22 +00:00
Eli Barzilay
76c2d9eceb
rehack the argument formatting hack
...
svn: r14436
2009-04-06 12:18:42 +00:00
Eli Barzilay
2cc94cbf02
reformat some
...
svn: r14435
2009-04-06 11:17:15 +00:00
Eli Barzilay
06636c1813
added in-sequences and in-cycle
...
svn: r14424
2009-04-05 08:29:17 +00:00
Eli Barzilay
9af9210aa2
added hash-ref! and hash-has-key?
...
svn: r14423
2009-04-05 04:35:12 +00:00
Eli Barzilay
cb2c85956b
removed unnecessary hash-ref passing in implementation of hash-update
...
svn: r14421
2009-04-05 00:24:47 +00:00
Eli Barzilay
daa582291c
typo
...
svn: r14410
2009-04-03 00:26:59 +00:00
Robby Findler
2c85b7a795
improved performance of the teaching languages
...
svn: r14394
2009-04-01 00:15:20 +00:00
Sam Tobin-Hochstadt
40b4731106
Expand (require A ...) into (begin (require A) ...)
...
- docs (including discussion of require scoping)
- tests
svn: r14232
2009-03-23 14:13:10 +00:00
Matthew Flatt
7dc8e077ed
add 'not-provide-all-defined and 'nonimal-id suport for rename transformers; fix scheme/foreign and foreign docs to use it
...
svn: r14195
2009-03-20 16:59:28 +00:00
Matthew Flatt
2109cec2f4
free-id=? propagation through module exports; add 'not-free-identifier=? syntax property to disable free-id=? propagation; add prop:rename-transformer and prop:set-transformer; fix scheme/local so that local syntax bindings are visible to later definitions (v4.1.5.3)
...
svn: r14191
2009-03-19 20:22:18 +00:00
Ryan Culpepper
d154493077
scheme/splicing: added splicing variants of local and letrec-syntaxes+values
...
svn: r14188
2009-03-19 13:45:45 +00:00
Matthew Flatt
ee084ad7ff
adjust special scheme/class keywords to effectively declare themselves as expression forms (PR 10135): merge to 4.1.5
...
svn: r14137
2009-03-17 00:45:29 +00:00
Robby Findler
2556c61f9d
PR 10078 -- NOT for inclusion in the release
...
svn: r14122
2009-03-16 12:06:17 +00:00
Stevie Strickland
a3035a76a8
Got the struct:x name built, but forgot just the name x for the static info,
...
even though I had changed with-contract to detect (uncontracted) exports of
syntax.
svn: r14004
2009-03-07 16:48:27 +00:00
Matthew Flatt
ff0b532864
adjust syntax/loc and some docs
...
svn: r13899
2009-03-02 22:24:25 +00:00
Stevie Strickland
3c0e17d963
Add to the error message for -> in the case of optional arguments.
...
svn: r13803
2009-02-23 18:49:29 +00:00
Stevie Strickland
93d6a5fc7c
* Just use new marks instead of name mangling for the ctc-ids
...
* Set the 'inferred-name property appropriately.
svn: r13802
2009-02-23 14:36:28 +00:00
Stevie Strickland
8a6804c525
Need to use the srcinfo for the marked identifiers, not the unmarked ones.
...
If this is wrong, then we need to do the first-order checks after creating
the set! transformers.
svn: r13781
2009-02-21 19:03:49 +00:00
Stevie Strickland
b2c6dd5b9e
This should have been a reference to the already verified contract.
...
svn: r13780
2009-02-21 18:59:25 +00:00
Matthew Flatt
24e4fd407b
chat-noir literate small repairs
...
svn: r13765
2009-02-21 13:30:22 +00:00
Stevie Strickland
7e1ea98876
Pull back Robby's allowance of all struct options just a bit, plus handle
...
the ones we do allow natively.
svn: r13727
2009-02-18 21:14:50 +00:00
Robby Findler
cf856a33bf
forward keywords
...
svn: r13725
2009-02-18 13:11:08 +00:00
Stevie Strickland
7e8816ce0f
* Add initial version of define-struct/contract
...
* Allow uncontracted exports of syntax from a with-contract form.
svn: r13717
2009-02-18 02:25:45 +00:00
Stevie Strickland
770aab6700
Move first-order checks for free-var ctcs to before the body of the
...
with-contract expansion.
svn: r13713
2009-02-17 23:38:46 +00:00
Stevie Strickland
3ff2184a38
Add the first-order free variable contract checks I mentioned earlier.
...
svn: r13707
2009-02-17 20:50:56 +00:00
Stevie Strickland
d18a56a956
Okay, no infinite syntax unrolling, please.
...
svn: r13705
2009-02-17 20:32:04 +00:00
Stevie Strickland
cf916f51fa
Forgot to add rename-transformers for unprotected ids.
...
svn: r13704
2009-02-17 19:58:26 +00:00
Stevie Strickland
999d9357ab
* Fix it so we say definition or function in define/contract appropriately
...
again.
* Fix horribly complicated and ridiculous version of with-contract with
a more streamlined, and more importantly, correct version.
svn: r13703
2009-02-17 19:31:57 +00:00
Stevie Strickland
64a68db15d
Initial attempt at free var contracts. Needs a little more work, but might
...
handle Robby's use cases.
svn: r13700
2009-02-17 18:18:53 +00:00
Stevie Strickland
10b89445c6
Do a little better here, including using id->contract-src-info instead of
...
just the identifier.
svn: r13631
2009-02-15 23:08:56 +00:00
Stevie Strickland
1943083cf9
Fix nested with-contracts by checking explicitly for ssps. Apparently
...
painting the bindings causes the ssp to later fail when you try to access
the parameter. Not sure if this is a bug or not, will talk to Matthew.
svn: r13621
2009-02-15 21:59:22 +00:00
Robby Findler
435adfea0a
PR 10073
...
svn: r13606
2009-02-15 14:44:12 +00:00
Robby Findler
eed5f52878
PR 10073
...
svn: r13595
2009-02-15 02:49:35 +00:00
Matthew Flatt
7b11c290f5
qq fixes, so that (quasiquote #(unquote lst)) is a syntax error
...
svn: r13517
2009-02-11 15:01:04 +00:00
Matthew Flatt
767766521c
infix for literal prefab structs, quasiquote unquoting in value positions of hash-table literals, and related changes (v4.1.4.3)
...
svn: r13504
2009-02-09 15:27:51 +00:00
Matthew Flatt
3d04e81fa0
fix arity error for method with optional arguments
...
svn: r13375
2009-02-03 13:13:53 +00:00
Stevie Strickland
72d551082d
If we're using known-good-contract here, we won't always have an identifier
...
for the contract, so use the contract in that case. Also rename to
contract-stx in make-with-contract-transformer so its name isn't misleading.
svn: r13269
2009-01-23 20:34:59 +00:00
Stevie Strickland
ffa59b4548
Fix with-contract so that it expands slowly into a series of begins instead
...
of erroneously attempting to head expand all the expressions before it does
any work.
Remove an extra verify-contract call in define/contract while we're at it.
svn: r13198
2009-01-18 05:21:29 +00:00
Stevie Strickland
16700ed8fc
Now that I know what's going on, we no longer have to shift all the
...
generated defines towards the bottom (which didn't help anyway).
Notice how marker-f is now defined -- that's the solution Matthew presented
to me.
svn: r13196
2009-01-18 05:00:43 +00:00
Stevie Strickland
9142823419
Forgot to remove a paren from my quick edit on the command line there.
...
svn: r13190
2009-01-17 19:49:13 +00:00
Stevie Strickland
0401130784
Here, let's store this change I was working on to fix up the expansion of
...
with-contract (since I can't head-expand-all like I was erroneously thinking).
svn: r13189
2009-01-17 19:44:28 +00:00
Stevie Strickland
6672638df1
Syncing up.
...
svn: r13154
2009-01-15 17:57:25 +00:00
Matthew Flatt
6aea96cb5c
improve name of class field accessors/mutators
...
svn: r13150
2009-01-15 13:49:04 +00:00
Stevie Strickland
8b5b007a51
We want to cover the marked version of the identifier (which has the proper
...
value), not the "regular" version that's now a transformer to a contracted
version of the marked identifier (and thus double-contracting here).
svn: r13145
2009-01-15 09:11:50 +00:00
Stevie Strickland
8ef9977f57
Change contract error reporting back to how it was (at least how it is on
...
unit-contracts, which avoids the spacing issue), and just change the blame
notation so that we can still report the region/definition stuff.
svn: r13122
2009-01-14 21:21:59 +00:00
Stevie Strickland
9facb3ffaf
Forgot a quote-syntax here, so unprotected ids weren't being transformed
...
correctly.
svn: r13121
2009-01-14 20:58:38 +00:00
Stevie Strickland
5ac3135cd6
Syncing up here as well.
...
svn: r13118
2009-01-14 18:27:06 +00:00
Eli Barzilay
d1a0086471
newlines at EOFs
...
svn: r13105
2009-01-14 03:10:47 +00:00
Stevie Strickland
455999eadd
Add first-order contract checking at definition time.
...
svn: r13095
2009-01-13 20:52:58 +00:00
Stevie Strickland
4899d91b97
Lacked unprotected ids, and c should have never been false here anyway.
...
svn: r13093
2009-01-13 20:40:36 +00:00
Stevie Strickland
1cede752f9
Not sure whether we want just a simple rename transformer for non-contracted
...
ids or whether we really want a set! transformer that still disallows set!ing.
Hmm.
svn: r13090
2009-01-13 19:41:52 +00:00
Stevie Strickland
909dd82f7c
Using splicing-syntax-parameterize and a syntax-introducer instead of
...
what I had originally.
svn: r13089
2009-01-13 19:36:54 +00:00
Stevie Strickland
51da9beab4
This is a change I was toying with that shouldn't have gotten caught up in
...
the trunk sync of 13084.
svn: r13088
2009-01-13 19:01:21 +00:00
Stevie Strickland
2537508865
Syncing on up
...
svn: r13084
2009-01-13 01:05:50 +00:00
Matthew Flatt
a58010fd0d
scheme/class: fix local member names to provide an better message on misuse, and to declare itself as an expression form
...
svn: r13050
2009-01-09 21:00:50 +00:00
Stevie Strickland
22ee00b10f
Oh, no! Aliens, bio-duplication, nude conspiracies.. oh my God,
...
Lyndon LaRouche was right!
svn: r13037
2009-01-08 14:55:23 +00:00
Robby Findler
c9ebe9bba3
changed the way or/c works; PR 10010
...
svn: r13030
2009-01-07 16:48:17 +00:00
Robby Findler
97e00eef97
fixed a bug in the ->d contract checking (wrt tail dropping)
...
svn: r12987
2009-01-03 16:57:46 +00:00
Robby Findler
3af2ea45d0
changed ->d so that it only checks the contract just above, not many above
...
svn: r12986
2009-01-03 16:40:54 +00:00
Stevie Strickland
6d966c80af
Syncing
...
svn: r12982
2009-01-03 03:09:06 +00:00
Matthew Flatt
b2d0a37f7b
add propagated arguments to 'call-with-continuation-prompt'; streamline 'with-handlers' expansion; speed up slightly some JITted cross-module function calls
...
svn: r12979
2009-01-02 21:57:31 +00:00
Matthew Flatt
e92b588985
macro-expansion performance tweaks
...
svn: r12972
2009-01-02 16:50:32 +00:00
Matthew Flatt
1642a84e69
add equal?/recur; implement equal? for image-snip% via properties
...
svn: r12950
2008-12-29 22:36:53 +00:00
Matthew Flatt
0cd2537a82
add equal<%> ad interface*
...
svn: r12946
2008-12-28 15:05:02 +00:00
Stevie Strickland
dd5afccd82
Catch up to now.
...
svn: r12742
2008-12-08 17:02:26 +00:00
Matthew Flatt
89d0801d7a
change quote-syntax to include a certificate for the enclosing module, enable certificate checking of phase-1 bindings, and fix some other problems with certificates
...
svn: r12714
2008-12-05 22:45:04 +00:00
Matthew Flatt
66a0c27703
avoid shared mutation of break state across with-handlers procs
...
svn: r12706
2008-12-04 23:04:33 +00:00
Stevie Strickland
e94cadd86d
Syncing -- nothing to see here.
...
svn: r12660
2008-12-01 15:11:00 +00:00
Matthew Flatt
6e9ccd3f43
better checking of case where a local name is used before it is defined (in an int-def context)
...
svn: r12659
2008-12-01 12:54:16 +00:00
Stevie Strickland
581800ad8c
Splicing syntax parameterize, here I come!
...
svn: r12601
2008-11-26 22:42:32 +00:00
Matthew Flatt
2c48c2c817
splicing-syntax-parameterize and docs for scheme/splicing
...
svn: r12600
2008-11-26 21:31:58 +00:00
Stevie Strickland
6f83ed1a80
Sync that beautiful trunk footage
...
svn: r12593
2008-11-25 21:18:04 +00:00
Matthew Flatt
a0f91d905e
revised internal-definitions context and a basic 'define-package' form
...
svn: r12579
2008-11-24 19:52:41 +00:00
Stevie Strickland
702c1b7af2
Syncerating the countryside
...
Syncerating the peasants
Syncerating all the peoples
in the thatched-roof COTTAGES!
THATCHED-ROOF COTTAGES!
svn: r12578
2008-11-24 17:52:56 +00:00
Eli Barzilay
5b9f0aa322
Implemented a `no-empty-edge-matches' function using the new
...
`make-regexp-tweaker', which produces a regexp that cannot match an
empty string at the beginning or the end of the input. This:
* simplies a whole bunch of messy and fragile code
* makes `regexp-split' and friends usable with a pattern like #px"\\b"
(which previously would match in every position, making it explode
the string to 1-character strings)
* makes it even closer to what perl does, the only way that we produce
a different result from perl now is that we don't blindly drop empty
matches at the end like perl (it *does* keep empty matches in the
beginning though)
The two tests that demonstrated the difference are now changed, and a
bunch of other tests added.
svn: r12575
2008-11-23 05:40:54 +00:00
Eli Barzilay
ecb39eedee
added make-regexp-tweaker (not used yet), and some code reorganization
...
svn: r12573
2008-11-23 00:17:39 +00:00
Stevie Strickland
3212d11712
Add all changes from branches/with-contract (which this branch will replace
...
eventually), plus a couple of fixes in contract-test.ss.
svn: r12451
2008-11-14 16:48:17 +00:00
Matthew Flatt
02277342ac
substitute Scheme-implemented map, for-each, andmap, and ormap in scheme/base and mzscheme, since the JIT generates faster code for the common 1- and 2-argument cases
...
svn: r12393
2008-11-11 22:25:24 +00:00