Stevie Strickland
e9627fb9e2
I'd like a better way of handling export contracts (some of the work that
...
should be doable at compile time is being done at run time), but at least
this works for now and gives us a chance to play around with it.
svn: r12763
original commit: 56854a84bd2958f23eae2d04a185ed29eafbc077
2008-12-10 17:19:39 +00:00
Stevie Strickland
bee6f21c4d
Do the let so that (hopefully) the contract errors will get reported on the
...
identifier. With a small change in scheme/contract, it does, but even with
this, it doesn't seem to. How odd.
svn: r12760
original commit: 90ad3f9221a9b5c31a673dcc820304e7b6c86872
2008-12-09 23:16:48 +00:00
Stevie Strickland
d9d718daa8
Add contracts to unit imports and values imported via
...
define-values/invoke-unit. We still need contracts on unit exports,
and we might want to do the stuff here in a cleaner fashion (particularly
for define-values/invoke-unit).
svn: r12759
original commit: a9be78545d95d72e5076d14369afae8b5774dbad
2008-12-09 22:14:11 +00:00
Eli Barzilay
ac1f721985
if the path is empty, use /
...
svn: r12750
original commit: 169c69a0bc6d0faff5473b75ff6ee17bef45ae84
2008-12-09 02:39:45 +00:00
Stevie Strickland
2c7fb0cd5f
Removing the work that's now on unit-contracts.
...
svn: r12744
original commit: 52b76b8dfafcb2f284db19fd6d9b3c8da87420ce
2008-12-08 17:09:33 +00:00
Stevie Strickland
66dad85db5
Adding current unit contract work over here.
...
svn: r12743
original commit: bf5dddbd13fa45fd1950289624bbd05e9ec92135
2008-12-08 17:06:53 +00:00
Stevie Strickland
83ff7d7e62
Now to move the contract info appropriately into sigs from signatures.
...
svn: r12712
original commit: beb5f195300b0db3dda7c4f8273563ecaeba65f0
2008-12-05 17:55:47 +00:00
Stevie Strickland
5227c36efb
Start on adding contracts to units. Here we're just adding contract(ed) forms,
...
but they're not (yet) used further in.
svn: r12711
original commit: 1b4d2cb7bf4eb7a3340e8a29b370994d9eaf1b35
2008-12-05 17:47:37 +00:00
Eli Barzilay
75308c9158
switch to #lang, reformat
...
svn: r12655
original commit: 7ea8ab6592e4ea96121d24c3b3fa4ed355e653cd
2008-12-01 03:21:46 +00:00
Matthew Flatt
510305451c
remove broken define*-struct
...
svn: r12590
original commit: 7a66101d308e01124e513ccec5aa1ba6f34fa7dc
2008-11-25 18:14:57 +00:00
Matthew Flatt
4e48a33a49
scheme/package (and more int-def repairs)
...
svn: r12589
original commit: ed536c002e3ef5a7f908584f9d50421fcac827b4
2008-11-25 17:58:21 +00:00
Matthew Flatt
7134eca95d
provide open*-package
...
svn: r12586
original commit: b7addbab82ad04384f2c381b098857b9e745efc6
2008-11-25 03:13:06 +00:00
Matthew Flatt
985cd6e47d
another int-def binding simplification repair
...
svn: r12585
original commit: 5f3b7e5c6f26298c519be93f6d45fc865d626aaf
2008-11-25 03:08:08 +00:00
Matthew Flatt
bfb0bc4ffd
revised internal-definitions context and a basic 'define-package' form
...
svn: r12579
original commit: a0f91d905e78288ac9ee252f24e8157f5cbea3f9
2008-11-24 19:52:41 +00:00
Stevie Strickland
ba3812ca9c
Missed a file.
...
svn: r12452
original commit: eca59f6b1d98b59301a68c56f902f571340a5a16
2008-11-14 16:49:10 +00:00
Stevie Strickland
7a657d334f
Add all changes from branches/with-contract (which this branch will replace
...
eventually), plus a couple of fixes in contract-test.ss.
svn: r12451
original commit: 3212d1171217a93eb2865a602092d5b5d842ff40
2008-11-14 16:48:17 +00:00
Eli Barzilay
fe2ab39bbd
better syntax error message when define-cstruct gets an identifier without a _
...
svn: r12420
original commit: 987b16447822e647552a8c28f53b870d8638a2c9
2008-11-13 02:18:16 +00:00
Matthew Flatt
5619b780b6
add port->string, file->string, etc.
...
svn: r12388
original commit: a6d953b6f5943579cb5f95b986647b8ea61c147f
2008-11-11 17:55:14 +00:00
Matthew Flatt
676b78504d
fix problems in lex-rename simplification; other tiny improvements and doc repairs
...
svn: r12380
original commit: ad75c8aa580e4d32a976bd5983ab4f99a48496e5
2008-11-10 22:50:54 +00:00
Matthew Flatt
65af0d3f3b
change contracts to reflect context via #%variable-reference instead of syntax objects; add id-less #%variable-reference form; drop link to unneeded CPort objects in delayed thunks; streamline some modules that tend to show up in deep phases
...
svn: r12231
original commit: 95bedb17fbed95c3288ad8befd94c1c7e26c07e2
2008-11-04 14:24:12 +00:00
Matthew Flatt
9c70829089
streamline srfi-4 index-argument check
...
svn: r12155
original commit: 8b666c17100e95ceef6a81501bcd8afa7bde55a2
2008-10-28 12:12:09 +00:00
Matthew Flatt
f74e80e43a
fix 'local-expand' checking of stop list to disallow symbols; extend 'continuation-marks' to work on threads; fix HtDP language module-level stop list
...
svn: r12101
original commit: bb7d3d1a287a7aabdb11edeb16bf215a028ffe31
2008-10-23 13:38:03 +00:00
Matthew Flatt
3f4a4b08a9
finish decompiler on syntax objects
...
svn: r12077
original commit: e2d4bc0d2bd46db59dbb5cbf0eda94f47c491719
2008-10-21 00:10:47 +00:00
Matthew Flatt
52dd376826
make-syntax-delta-introducer and adjusted binding in scheme/unit forms
...
svn: r12032
original commit: 8b595ed1200539fa0c22ff0710d9efc5b9d79b52
2008-10-14 13:27:43 +00:00
Matthew Flatt
395eab1669
add eqv hash tables; add hash-update
...
svn: r12018
original commit: ec68bafa9c7114785dc9e02781eeaa33cfcbec4f
2008-10-13 16:21:18 +00:00
Eli Barzilay
ae40ef8c69
register-finalizer is not unsafe
...
svn: r11994
original commit: 2bd0019110f83b31d50a075d4bb30e9339299b02
2008-10-12 06:13:46 +00:00
Eli Barzilay
84c6b9a032
rename holder -> keep
...
svn: r11932
original commit: 8d06e0c707295a6dee60e722dfafe40c4e2d7992
2008-10-04 19:10:38 +00:00
Eli Barzilay
92168b8ed4
* Exported `cvector-ptr'
...
* Added `#:hold' to `_fun' for callbacks (will be changed to `#:keep'
soon, but better to have a checkpoint)
* _cprocedure also has a `hold' argument, and is now using keyword
arguments (it was getting crowded in the optional arguments
department)
* Documented everything that changed, with a longish descrption for
options for holding callback values.
* More tests, including tests for callbacks that would crash if the
callback values are not held.
svn: r11931
original commit: 2886a9531844f75faf563516447524bb893c9796
2008-10-04 19:01:17 +00:00
Eli Barzilay
84f2904bb4
make _cpointer types return the result of the scheme->c function, if any
...
svn: r11888
original commit: c8be2b6f577700b33d5e5fa8c690c526cdfe022e
2008-09-27 06:35:08 +00:00
Sam Tobin-Hochstadt
616f992c6a
Test for print-convert of keyword.
...
svn: r11870
original commit: 814bfb189edc5dca4aacf268e81b887301039911
2008-09-25 14:53:55 +00:00
Matthew Flatt
9b95e9b2d5
msvs9-friendly patches; preliminary splicing let-syntax library; export and doc GC_resolve and GC_fixup_self
...
svn: r11758
original commit: 186bf676306ed59f9892d7bf58ab7d833b5c3f29
2008-09-15 19:08:50 +00:00
Robby Findler
a65c83e4eb
a bunch more values are now converted into contracts automatically
...
svn: r11729
original commit: 85e489219c7e596d90f780da119fb8bb16b4cb45
2008-09-13 22:35:09 +00:00
Robby Findler
8678e1cc6e
got rid of define-struct/prop since scheme/base has a define-struct that does all that (and more) now
...
svn: r11727
original commit: 06a4d0df4af94534e6186463a19b5c6982f1c65a
2008-09-13 16:29:01 +00:00
Stevie Strickland
f00388ac41
Actually, move the old-style define/contract to its own file in mzlib,
...
and change around mzlib/contract.ss appropriately.
svn: r11715
original commit: 0870c7ae1ddd58de472e2990f6b194686e61b083
2008-09-13 02:51:09 +00:00
Stevie Strickland
74026b5e51
Slight change just because we're now printing what kind of thing triggered
...
the broken contract.
svn: r11714
original commit: 16bce22386654e186f8e806aa5ee289fff380925
2008-09-13 02:11:05 +00:00
Stevie Strickland
4c6ee3623e
Revert this all the way back to where it was, I'll fix it up in a sec.
...
svn: r11713
original commit: 14ef34e8e38e32029783d8207a684859fba7e3c0
2008-09-13 02:03:34 +00:00
Stevie Strickland
44116e67e9
Okay, here's the old stuff put back, will fix up the unit tests when I get
...
home.
svn: r11709
original commit: c484131597b684e1a17dd8aae520c8a2bd1f93e2
2008-09-12 23:51:51 +00:00
Stevie Strickland
f060e3a47c
Couple more tests. Also, change things to mzscheme/mzlib. I really should
...
go put the old version of define/contract in mzlib/contract.ss, have it
not import with-contract or the new define/contract, and fix the unit tests
appropriately.
svn: r11708
original commit: 32f0b99f12588db11aeca3461f8e68c764884a08
2008-09-12 23:39:19 +00:00
Stevie Strickland
0fc84c6fba
Hello, McFly, hello?!
...
I can't believe there wasn't already a test in there that checked this kind
of thing. Wait, of course there couldn't have been, because it was specific
to define/contract and with-contract, and _I'm_ writing those tests. Ah,
well, fixed! :p
svn: r11707
original commit: 41ee6c8ac73f3be893021257b4e057af7c312517
2008-09-12 23:25:58 +00:00
Stevie Strickland
094e5a90ff
* Fix converting modules whose source is (list 'quote 'name) to "module 'name"
...
in contract messages
* Differentiate between define/contract functions and normal definitions
* Fix up contract tests
svn: r11700
original commit: e83a72d6ae3b71d97817e6aab5dfd34dfa435a5f
2008-09-12 20:46:41 +00:00
Stevie Strickland
e243118608
Fix numbering, add back a test similar to the infinite loop case that
...
was here before to illustrate how define/contract now correctly does
not contract internal references.
svn: r11670
original commit: d03ce01a5a9dfb9a736d65865fd04a198785526e
2008-09-12 03:49:20 +00:00
Stevie Strickland
ed9a387674
Accidentally committed this in r11663.
...
svn: r11669
original commit: 65e13861bb88209e9445d15f6a2fc9b9beab9345
2008-09-12 03:42:36 +00:00
Stevie Strickland
e05c164435
Write some with-contract tests.
...
svn: r11666
original commit: d9c47de816d3cff6ad3cea0cbeac309506007c70
2008-09-12 00:21:38 +00:00
Stevie Strickland
68c83b2a54
Check nested and non-nested define/contracts and how they interact.
...
svn: r11665
original commit: 32d4b3463007fbc097b06e79eebc50906c6b3582
2008-09-12 00:02:46 +00:00
Stevie Strickland
4ba02b716c
Use the new function syntax for define/contract in a couple of tests.
...
svn: r11664
original commit: b783ac9b70b80e056bcb0c44120734ae02038f70
2008-09-11 23:53:23 +00:00
Stevie Strickland
f5c23fd041
Fix one test (now the top-level gets the blame appropriately) and remove
...
a bogus test (since a defined function can call itself all it wants without
the contract being checked, and thus that test is now an infinite loop).
svn: r11663
original commit: d3a5ab555671521a1bf63cdc8036ee1a79d9dfcd
2008-09-11 23:47:29 +00:00
Matthew Flatt
462136e186
fix mistakes in augment corrections; fix runtime-path handling of lib paths
...
svn: r11577
original commit: 1a8b6cb824f84323179757d0f95d39b9ffe2f7a6
2008-09-08 19:44:32 +00:00
Eli Barzilay
bf474980dc
mostly just a re-indentation
...
svn: r11544
original commit: 7becde46d4868851709c8dd84e375591169e60a6
2008-09-04 22:12:14 +00:00
Eli Barzilay
f67213751b
use stdcall for windows kernel functions
...
svn: r11543
original commit: e5686a5577f39ee641093c792c09ede144a78967
2008-09-04 22:07:23 +00:00
Eli Barzilay
901c60532c
added #:abi keyword spec to _fun
...
svn: r11542
original commit: ade8dfad31e66319cf1409021295ba93720c1057
2008-09-04 22:05:10 +00:00