Sam Tobin-Hochstadt
ee63e4e80d
Factor observe-step into separate file.
...
Use observe step in match.ss match-expanders.
2006-09-11 15:43:50 -04:00
Sam Tobin-Hochstadt
7646ee635d
Show correctly marked results in stepper.
2006-09-11 00:57:35 -04:00
Sam Tobin-Hochstadt
34aa12ddac
Added expansion of match-expanders to macro-debugger.
2006-09-10 21:24:35 -04:00
Sam Tobin-Hochstadt
506c154ea8
Add new simplification pass before render-test-list.
...
Simplification expands match expanders and removes syntactic sugar.
Also, syntax errors are checked in the simplification phase, so better
error messages can be given.
2006-09-07 12:02:41 -04:00
Sam Tobin-Hochstadt
6034e5e0d5
fix bug with list-rest in quasi-patterns
2006-09-06 14:26:19 -04:00
Sam Tobin-Hochstadt
b1bc4714d5
update-counts: Fix a really dumb bug in logical-equal? that
...
caused huge time blowup.
svn: r4259
2006-09-06 16:50:50 +00:00
Sam Tobin-Hochstadt
3a77f5a914
Work toward adding simplication pass before render-test-list.
2006-09-05 18:56:04 -04:00
Robby Findler
4a6cee9cf8
fixed bug where the name has disappeared from a contract violation (and added test cases, of course)
...
svn: r4235
2006-09-04 02:07:01 +00:00
Sam Tobin-Hochstadt
32e8e72175
gen-match:
...
- use begin-with-definitions for code clarity
- rename some variables
- better contracts (comments)
test-structure:
- delete unused field
update-counts:
- general reformatting
- delete dead code
- refactoring to eliminate duplication
2006-09-01 18:42:58 -04:00
Sam Tobin-Hochstadt
c702686b01
gen-match.ss: kill dead code, remove pointless argument
...
match-internal-func.ss:
- use match-define to implement match-letrec
- clean up match-letrec using with-syntax
2006-09-01 17:27:47 -04:00
Sam Tobin-Hochstadt
9e17a6d993
reformatting
2006-09-01 16:52:45 -04:00
Robby Findler
dd4c63ab07
upped the number of calls to 'values' in order to continue to defeat mz's optimizations
...
svn: r4216
2006-09-01 15:51:52 +00:00
Robby Findler
d8a72d982f
added contract-opt, renamed contract-helpers to be a .ss, not .scm
...
svn: r4207
2006-08-31 22:30:13 +00:00
Sam Tobin-Hochstadt
d1fe9f9645
Rewrite emit and assem to use better style.
...
Remove pointless optional arguments in getbindings.
Don't create unneccessary match-lambda*.
Implement keyword arguments to define-match-expander.
Lots of refactoring of gen-match for general clarity.
Use combinators instead of writing our own loops.
Simplify struct info accessor.
Add timing printer.
Refactor coupling/binding for general clarity.
Rewrite logical-equal not to use the expansion of match.
General replacement of () with [].
svn: r4192
2006-08-30 19:41:47 +00:00
Robby Findler
d9ac9270a8
provide/contract now grabs the source locations from the identifiers that have contracts, not some other part of itself
...
svn: r4187
2006-08-29 13:14:33 +00:00
Matthew Flatt
6864440c7e
class-level mixin syntax reports reported as from mixin
...
svn: r4159
2006-08-27 23:10:29 +00:00
Matthew Flatt
c0ce55afb4
make generic smarterabout final methods
...
svn: r4105
2006-08-22 01:26:58 +00:00
Robby Findler
eefb6a8c87
minor tweak to contract library
...
svn: r4092
2006-08-18 21:53:54 +00:00
Matthew Flatt
35d14b301f
add inherit/super and inherit/inner (to eventually replace rename-inner and rename-super)
...
svn: r4087
2006-08-18 00:47:32 +00:00
Robby Findler
2edea47556
fixed PR 8215
...
svn: r3994
2006-08-09 03:28:59 +00:00
Matthew Flatt
6dc42e3a8d
changed handling of primitive by-position-only arguments to behave like init-rest
...
svn: r3954
2006-08-04 13:33:31 +00:00
Sam Tobin-Hochstadt
0cf62c196a
Changed #:macro to #:expression in define-match-expander.
...
svn: r3945
2006-08-03 20:18:22 +00:00
Sam Tobin-Hochstadt
931d214b69
Removed obsolete mzlib/private/plt-match directory.
...
Moved match implementation to new mzlib/private/match directory.
Implement keyword arguments to define-match-expander.
svn: r3943
2006-08-03 20:01:39 +00:00
Matthew Flatt
2b7a722b33
fix scoped init names (i.e., when combined with define-local-member-name)
...
svn: r3937
2006-08-02 20:14:32 +00:00
Eli Barzilay
bb5b45b181
re-do changes that were undone in r3843
...
svn: r3859
2006-07-28 08:15:46 +00:00
Eli Barzilay
5099b078c6
Undo the following revisions:
...
r3839
r3825
r3823
r3821
r3820 (undo only the changes in drscheme/private/debug.ss)
r3792
r3791
They will be re-done after v352 is released
svn: r3843
2006-07-27 17:12:18 +00:00
Robby Findler
967cd9ab14
fixed PR 8190
...
svn: r3839
2006-07-27 14:10:55 +00:00
Robby Findler
ea3c2b9743
sped up or/c (probably) and fixed ordering in printout of or/c contract names
...
svn: r3825
2006-07-26 17:07:47 +00:00
Sam Tobin-Hochstadt
aac8dfdbe5
match: Don't ever avoid let-binding the matched expression (since
...
identifiers can have non-trivial effects). Bug pointed out by RMC.
svn: r3813
2006-07-25 19:10:14 +00:00
Robby Findler
73ce86e94b
fixed PR 8166
...
svn: r3701
2006-07-13 19:29:04 +00:00
Robby Findler
6575c9c58d
fixed performance problem with (provide/contract (struct ...))
...
svn: r3698
2006-07-13 14:49:12 +00:00
Sam Tobin-Hochstadt
1c46dde5dc
Factor out check for constant data into match-helper.ss
...
Use in parse-quasi and render-test-list-impl.
Add support for keywords.
svn: r3690
2006-07-12 19:08:55 +00:00
Sam Tobin-Hochstadt
b42a11d12d
match.ss: abstract some boilerplate, and use syntax/loc when doing conversion to plt-match
...
match-helper.ss: add helper macro
render-test-list-impl.ss: fix hygiene bug in checking for non-linear patters
(thanks to Ryan Culpepper)
gen-match.ss: Fix error reporting location in match errors.
(thanks to Ryan Culpepper)
svn: r3689
2006-07-12 18:59:07 +00:00
Robby Findler
0d07f36ab7
added first order checking and some stop-gap checking for sub-structs
...
svn: r3675
2006-07-10 20:57:33 +00:00
Robby Findler
49667529da
improved running time of contracts and moved some provide/contracts to the bottom of files (not necc yet, but may become necc)
...
svn: r3665
2006-07-09 21:07:04 +00:00
Robby Findler
79ae279b79
extended or/c to support multiple higher-order contracts
...
svn: r3606
2006-07-06 02:08:12 +00:00
Matthew Flatt
ebe051694d
350.3
...
svn: r3571
2006-07-01 18:53:09 +00:00
Robby Findler
6cd4b0009b
generalized and/c
...
svn: r3422
2006-06-20 20:49:18 +00:00
Matthew Flatt
f272ae9d7e
define-member-name and member-name-key
...
svn: r3415
2006-06-19 13:04:54 +00:00
Matthew Flatt
9877a98a00
inner default expr shouldn't evaluate when a target is available
...
svn: r3094
2006-05-28 11:49:41 +00:00
Matthew Flatt
12f990e663
fixed define-match-expander to certify properly
...
svn: r2868
2006-05-06 15:42:44 +00:00
Matthew Flatt
9f513d240e
fix cert handling for init, init-field, and field
...
svn: r2823
2006-04-27 20:30:16 +00:00
Robby Findler
0ad4118f6f
fixed image.ss to handle the case when positive and negative infinity are supplied to overlay/xy and also limited one-of/c's inputs
...
svn: r2659
2006-04-11 13:53:53 +00:00
Robby Findler
1c97b4c21f
fixed PR 7999 and added one-of/c to the contract library
...
svn: r2650
2006-04-10 03:54:55 +00:00
Eli Barzilay
16f01a1109
{quick,merge}sort -> sort
...
svn: r2569
2006-04-01 12:24:15 +00:00
Robby Findler
ea9d5bfe8b
improved internal contract stuff
...
svn: r2546
2006-03-30 19:05:54 +00:00
Robby Findler
cf86c57215
merged revision 2489:2523 from plt/branches/robby -- somehow contract-guts.ss came out messed up; I replaced it with the actual latest version from the branch and things seem okay
...
svn: r2524
2006-03-28 00:38:43 +00:00
Robby Findler
5e2f5d86de
re arranged the file names in the contract library and exported a few more things from the main library to satisfy plai
...
svn: r2488
2006-03-23 17:22:26 +00:00
Robby Findler
8617ca8fcd
defeats the inlining optimization by making procedure bodies big in order to do lazy contract checking
...
svn: r2486
2006-03-22 21:12:53 +00:00
Matthew Flatt
d2737c73a4
replace same-closure with procedure-closure-contents-eq?
...
svn: r2476
2006-03-21 15:28:59 +00:00
Robby Findler
bb9b8eb90e
finished lazy data structure contracts
...
svn: r2458
2006-03-19 00:03:48 +00:00
Robby Findler
d8217b9d27
added first stages of improvments to contract library to support lazy structure contracts. not yet complete, but contract system is in working order, so committing
...
svn: r2452
2006-03-18 05:33:08 +00:00
Matthew Flatt
17670dd89d
moddep contracts and testing
...
svn: r2407
2006-03-10 03:35:23 +00:00
Robby Findler
7249080888
svn: r2393
2006-03-08 17:23:45 +00:00
Robby Findler
873e71a9dd
fixed PR 7927
...
svn: r2341
2006-03-02 02:48:40 +00:00
Robby Findler
3172ffd027
added contract-violation->string parameter
...
svn: r2314
2006-02-24 15:37:58 +00:00
Robby Findler
106c19a461
added tests for or/c ordering and and/c ordering and fixed name of the or/c contract (so it doesn't claim to be a union contract anymore)
...
svn: r2100
2006-02-03 04:07:25 +00:00
Robby Findler
c43a6f2821
added or/c as alias for union
...
svn: r2059
2006-01-31 16:29:12 +00:00
Robby Findler
f3a8a1895d
minor improvement to provide/contract expansion (making it smaller)
...
svn: r2033
2006-01-30 01:30:47 +00:00
Robby Findler
edc4b96987
improved expansion of -> contract combinator to generate less stuff and got a very slight performance improvement. also split up contract implementation into multiple files
...
svn: r1956
2006-01-25 04:44:49 +00:00
Robby Findler
12c7c0b6c6
added this, bound in ->r and ->pp contracts, when used in object-contract
...
svn: r1841
2006-01-16 18:42:11 +00:00
Matthew Flatt
196a6fdff3
transplant-output-port needs to return #f instead of 0 when failing to write bytes
...
svn: r1593
2005-12-12 16:55:36 +00:00
Matthew Flatt
81c837ad26
export inherit-field
...
svn: r1496
2005-12-02 19:30:57 +00:00
Matthew Flatt
78622b7bb3
moved code out of macro expansion and into functions
...
svn: r1409
2005-11-25 22:50:56 +00:00
Sam Tobin-Hochstadt
4d6d674d9f
Factor render-test-list module into 3 units.
...
- getbindings contains defs for next-outer, create-test-func, getbindings
- ddk-handlers containts all the ddk junk
- render-test-list-impl contains render-test-list and simple dependencies
- render-sigs contains the signatures for all 3
Add define/opt to render-helpers (maybe this should go in etc.ss).
General cleanups in ddk-handlers.
svn: r1296
2005-11-12 16:42:23 +00:00
Sam Tobin-Hochstadt
bb69014fc7
render-test-list:
...
- cleanups and removal of quasisyntax/loc
svn: r1281
2005-11-11 18:35:08 +00:00
Matthew Flatt
e46ea7dbb2
fixed mapped id application context
...
svn: r1198
2005-11-01 20:13:36 +00:00
Matthew Flatt
f3a67ccb9a
added object-method-arity-includes
...
svn: r1123
2005-10-22 01:56:45 +00:00
Robby Findler
71a5040785
fixed pr 7628, ->d now checks the domain contract before partially applying the range function
...
svn: r1042
2005-10-11 12:57:57 +00:00
Matthew Flatt
57d39569fe
removed #kd, fixed :interface
...
svn: r944
2005-09-29 20:06:09 +00:00
Matthew Flatt
63e051aee8
removed unused :ucall
...
svn: r938
2005-09-29 15:50:14 +00:00
Matthew Flatt
74a64f50da
avoid leading colon for id
...
svn: r937
2005-09-29 15:49:48 +00:00
Sam Tobin-Hochstadt
d96e47c4b7
plt-match.ss/match.ss:
...
- don't export match:test-no-order, which is only used in generated code
test-no-order.ss
- reformat code
- use ormap instead of let loop
render-test-list:
- add define/opt sugar
- remove a lot of pointless stx arguments
- remove a lot of [quasi]syntax/loc
gen-match:
- use internal define instead of let
- remove quasisyntax/loc
- reformat
- remove pointlessly optional argument
coupling-and-binding:
- reformat
- use memf instead of custom loops
svn: r908
2005-09-23 19:55:12 +00:00
Sam Tobin-Hochstadt
24b6ae4b32
Match:
...
- Simplify code for getter and setter handling.
- Fix cons patterns
- Reformat code to make it more readable
svn: r822
2005-09-09 22:28:47 +00:00
Sam Tobin-Hochstadt
6f8d1ef4f2
getter-setter:
...
- Fix bug in handling of structures with set! patterns
nested inside other patterns.
test-structure:
- add placeholder documentation for fields
- use #f instead of (make-inspector)
svn: r812
2005-09-09 15:58:34 +00:00
Robby Findler
442e9fad32
,
...
svn: r531
2005-08-02 04:12:41 +00:00
Robby Findler
b01290c3ef
fixed bug in provide/contract
...
svn: r411
2005-07-21 00:22:36 +00:00
Robby Findler
4b0e802fe4
fixed bugs dealing with super structs in provide/contract and fixed (newly exposed) bugs in mrflow
...
svn: r391
2005-07-18 13:06:30 +00:00
Robby Findler
20aa3cef02
made struct library work better with copy-struct; still not perfect
...
svn: r381
2005-07-16 04:41:29 +00:00
Sam Tobin-Hochstadt
b752dcddef
Fix two bugs caused by clean ups, by adding requires of match-helper and provides of match:test-no-order.
...
Fix totally broken handling of structs with immutable fields, as reported in bug 7398.
svn: r354
2005-07-05 22:22:02 +00:00
Robby Findler
4070be1c1a
exported coerce-contract
...
svn: r353
2005-07-05 21:37:21 +00:00
Matthew Flatt
3d8c40afe4
fixed verify- ops to take old-format exploded signatures
...
svn: r277
2005-06-30 16:40:13 +00:00
Robby Findler
e3b5ba8ef8
moved contract library to private, in order to export a few more names to special places
...
svn: r272
2005-06-29 23:33:51 +00:00
Matthew Flatt
0d4bc2cd9d
299.107
...
svn: r259
2005-06-28 17:01:03 +00:00
Matthew Flatt
e4a71a9b3c
match phase clean-up and minor contract-expansion improvement
...
svn: r232
2005-06-22 21:31:11 +00:00
Eli Barzilay
daa18fcba0
typos
...
svn: r66
2005-06-08 00:28:39 +00:00
Eli Barzilay
017d151d59
Adding collects, with all the right properties (except eoln-style).
...
svn: r3
2005-05-27 18:56:37 +00:00