Commit Graph

78 Commits

Author SHA1 Message Date
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
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
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