Matthew Flatt
b2dbe63ed1
small doc fixes, plus change to syntax pattern matching to allow null as a dotted match after ellipses
...
svn: r8384
2008-01-23 01:35:26 +00:00
Sam Tobin-Hochstadt
f951cac011
Use let-bound identifiers properly for handle-end-ddk-list.
...
svn: r8372
2008-01-20 14:36:32 +00:00
Sam Tobin-Hochstadt
f2c9c59b06
Start add match-...-nesting parameter.
...
svn: r8371
2008-01-20 14:35:58 +00:00
Sam Tobin-Hochstadt
3f93fd0f25
Use an extra let binding to make Typed Scheme happy.
...
svn: r8366
2008-01-18 22:44:54 +00:00
Robby Findler
3cf6ed4673
mostly finished the contract library changes
...
svn: r8195
2008-01-03 18:10:43 +00:00
Robby Findler
90de53d2b2
finished ->d
...
svn: r8166
2007-12-30 23:36:58 +00:00
Robby Findler
342eb86c10
finished the new ->*
...
svn: r8086
2007-12-20 20:35:58 +00:00
Matthew Flatt
f70ea2d03a
shared
...
svn: r8069
2007-12-19 21:32:07 +00:00
Robby Findler
9a0498b44d
moved class, contracts, serialize, and traits into scheme/ and changed the class and contract interface so that contracts no longer depend on the class system (instead its the other way around)
...
svn: r8017
2007-12-15 18:46:55 +00:00
Matthew Flatt
a58893f4ba
fix bug in deserializer related to order of shared values
...
svn: r7978
2007-12-12 21:50:31 +00:00
Robby Findler
a295a42c15
improved contract library so that structs without mutators work and it now passes the test suite
...
svn: r7879
2007-11-30 22:50:01 +00:00
Sam Tobin-Hochstadt
b997f8b0f7
Use symbolic comparison for => in match, to handle new bindings from `cond'.
...
svn: r7864
2007-11-29 23:02:23 +00:00
Robby Findler
47a4b69e5d
some progress on the contract test suite
...
svn: r7850
2007-11-28 04:38:23 +00:00
Matthew Flatt
5f312dcbde
doc fixes
...
svn: r7832
2007-11-25 19:48:41 +00:00
Matthew Flatt
44478fa8e0
match docs
...
svn: r7817
2007-11-22 18:51:26 +00:00
Matthew Flatt
6056159ad7
class and mzc -k fixes
...
svn: r7724
2007-11-14 16:24:48 +00:00
Matthew Flatt
39cedb62ed
v3.99.0.2
...
svn: r7706
2007-11-13 12:40:00 +00:00
Robby Findler
359196ae82
improved contract libraries handling of #%app for provide/contract'd variables
...
svn: r7590
2007-10-29 21:07:43 +00:00
Robby Findler
3724e47d0c
possible fix to PR 9204
...
svn: r7587
2007-10-29 02:28:30 +00:00
Robby Findler
018bc0e8f6
removed extraneous requires
...
svn: r7548
2007-10-21 22:57:12 +00:00
Robby Findler
176a888bb4
changed the case-> combinator back so that it does not use a symbolic comparison to find -> and friends
...
svn: r7460
2007-10-09 12:57:18 +00:00
Matthew Flatt
4ebccec087
fix problem with lifting contract applications by delaying expansion to an expression context
...
svn: r7434
2007-10-05 19:57:05 +00:00
Robby Findler
d9cb743afc
removed an optimization that obscures the names in contracted functions
...
svn: r7379
2007-09-18 15:48:28 +00:00
Robby Findler
ac52b9f2ba
avoid lifting more than once
...
svn: r7364
2007-09-17 16:33:40 +00:00
Eli Barzilay
f7e4690841
set svn:eol-style
...
svn: r7358
2007-09-17 05:16:55 +00:00
Robby Findler
bd93217061
refactored the contract system so that contracts do not depend on the class system, and now the class contracts are exported from class.ss
...
svn: r7357
2007-09-17 02:27:05 +00:00
Robby Findler
b7c441833e
tried to improve size of generated code for structs
...
svn: r7348
2007-09-15 19:57:28 +00:00
Robby Findler
33311ab211
few minor improvements to the code generated by the contract library
...
svn: r7339
2007-09-14 21:27:53 +00:00
Eli Barzilay
449d9097c7
Avoid having hard-wired paths in contract error messages.
...
These will use "<collects>/..." now. (A perhaps better solution
is to do what "mzlib/etc.ss" does and insert code that expands
to the file on the client machine.)
svn: r7306
2007-09-10 02:26:59 +00:00
Eli Barzilay
6f83062a51
improved code for build-src-loc-string (no change in functionality)
...
svn: r7303
2007-09-09 18:25:29 +00:00
Matthew Flatt
e4cbc4e6a9
371.2
...
svn: r7263
2007-09-02 17:39:32 +00:00
Eli Barzilay
6793e45228
typo
...
svn: r7029
2007-08-06 13:00:49 +00:00
Robby Findler
67dd80eb78
changes noticed by Matthew
...
svn: r6980
2007-07-29 18:56:32 +00:00
Robby Findler
cb47325215
fixed parameter contracts
...
svn: r6833
2007-07-07 15:19:46 +00:00
Matthew Flatt
9764065c6a
370.5
...
svn: r6832
2007-07-07 08:31:19 +00:00
Robby Findler
2dfd35e5c7
added parameter/c
...
svn: r6770
2007-06-29 16:44:18 +00:00
Shu-Yu Guo
5016e59f8e
fixes match
...
svn: r6674
2007-06-16 16:58:37 +00:00
Robby Findler
ea5b3493f3
fixed define-contract-struct so that it defines (via define-syntax) the struct name, following the define-struct covention
...
svn: r6664
2007-06-14 21:14:14 +00:00
Robby Findler
3857b95a7b
fixed PR 8737
...
svn: r6596
2007-06-12 15:23:54 +00:00
Robby Findler
f597eef4db
svn: r6558
2007-06-09 18:33:37 +00:00
Robby Findler
377c5b3ad0
had to find a new way to defeat the inlining
...
svn: r6413
2007-05-30 17:32:39 +00:00
Robby Findler
2f97ee61a8
fixed comment
...
svn: r6292
2007-05-25 13:22:29 +00:00
Robby Findler
e41ff4705e
improved error checking for provide/contract struct clauses
...
svn: r6155
2007-05-05 17:50:19 +00:00
Robby Findler
5ac3fdd86e
added unsafe list contract combinators
...
svn: r6096
2007-04-29 21:46:27 +00:00
Matthew Flatt
e9bf34f193
369.11
...
svn: r6085
2007-04-29 02:08:24 +00:00
Robby Findler
2cb314de1b
improved error message a little more, thanks to Jon Rafkind
...
svn: r6073
2007-04-28 21:50:05 +00:00
Robby Findler
bbb4f1c307
tweaked wording of any error message
...
svn: r6071
2007-04-28 20:21:04 +00:00
Robby Findler
ddf5ddaf68
fixed a bug in structs
...
svn: r6059
2007-04-27 22:02:14 +00:00
Robby Findler
c3e07c0a8c
removed bogus inference from matcher's optimizer
...
svn: r6034
2007-04-24 18:22:10 +00:00
Matthew Flatt
a45251d272
369.10
...
svn: r6003
2007-04-20 01:16:15 +00:00
Robby Findler
db8cba03aa
added unconstrained-domain->
...
svn: r5967
2007-04-17 18:54:19 +00:00
Matthew Flatt
a47e48fc20
fix inferred name of field values and values installed into fields with set!
...
svn: r5880
2007-04-07 23:36:24 +00:00
Eli Barzilay
433c9a57ec
new sandbox in mzlib
...
svn: r5873
2007-04-06 08:56:23 +00:00
Matthew Flatt
81b7aea7d9
fix expansion of match-define to use define-values instead of begin with set!
...
svn: r5786
2007-03-19 01:55:21 +00:00
Robby Findler
058bb56915
added guilty-party
...
svn: r5783
2007-03-17 21:39:59 +00:00
Robby Findler
69ed5483cf
improved source locations for previous fix
...
svn: r5765
2007-03-09 22:42:40 +00:00
Robby Findler
e61faf231e
fixed bug mentioned by Paulo Matos on plt-scheme mailing list
...
svn: r5764
2007-03-09 22:38:51 +00:00
Robby Findler
d67ab8b0a9
improved the expansion to make runtime error reporting better
...
svn: r5703
2007-02-27 23:48:00 +00:00
Robby Findler
81ce545d63
added define-opt/c
...
svn: r5515
2007-01-31 01:12:19 +00:00
Robby Findler
de59204fa5
some cleanup
...
svn: r5503
2007-01-30 00:54:23 +00:00
Robby Findler
7ab052ebb9
fixed a bug
...
svn: r5485
2007-01-28 15:25:46 +00:00
Robby Findler
4ad8fdadea
merged the opt/c changes back into the trunk (finally!)
...
svn: r5481
2007-01-28 02:54:16 +00:00
Matthew Flatt
272980489c
avoid chains of derived-from-... names (due to previous attempt at fixing the string vs. symbol problem)
...
svn: r5444
2007-01-24 02:37:01 +00:00
Matthew Flatt
c0c04fb2fc
make derived-from-... name a symbol in a class record
...
svn: r5443
2007-01-24 02:34:38 +00:00
Matthew Flatt
dbaccc2d5c
fix cert problem when internal and external names are provided, but no initial value is provided
...
svn: r5403
2007-01-19 01:50:17 +00:00
Eli Barzilay
19c33a8e2a
no need for string->immutable-string when creating exceptions
...
svn: r5372
2007-01-17 01:18:50 +00:00
Matthew Flatt
87c0d5754e
369.5
...
svn: r5366
2007-01-16 20:55:13 +00:00
Matthew Flatt
32ec113ed1
fix public-final-name-localized bug
...
svn: r5354
2007-01-15 05:58:28 +00:00
Matthew Flatt
7b13755dad
unit clean-up
...
svn: r5160
2006-12-22 01:26:58 +00:00
Sam Tobin-Hochstadt
2b876b1f11
Port render-test-list.scm and helpers to use new-style units.
...
svn: r5035
2006-12-05 22:51:47 +00:00
Eli Barzilay
3459c3a58f
merged units branch
...
svn: r5033
2006-12-05 20:31:14 +00:00
Shu-Yu Guo
eaf71a272a
typos, name tests for opt/c.
...
svn: r4781
2006-11-05 06:45:58 +00:00
Carl Eastlund
22fd8f51cc
Added tracing capabilities to mzscheme's class system.
...
- class-internal.ss exports two versions (traced/untraced) of macros/functions
- classidmap.ss provides expansion to both forms (traced/untraced)
- class-traced.ss exports traced versions
- class.ss (unchanged) exports untraced versions
- class-events.ss contains hooks called by traced version
Functionality will be used by tool to be released via PLaneT.
svn: r4778
2006-11-04 20:46:52 +00:00
Shu-Yu Guo
bd0b34a9ac
- refactored opt/c to its own struct/prop
...
- moved opters next to their respective original contracts where possible
- the rest moved to contract-basic-opters.ss to avoid module cycle
- fixed some typos
svn: r4774
2006-11-04 05:02:57 +00:00
Matthew Flatt
60fe398868
added trait, finally
...
svn: r4681
2006-10-25 08:02:59 +00:00
Robby Findler
90b688b143
fixed PR 8293
...
svn: r4420
2006-09-23 02:54:25 +00:00
Sam Tobin-Hochstadt
605c510b9e
Merged changes from branch:
...
http://svn.plt-scheme.org/plt/branches/samth/match2
revisions 4220:4417
Included Matthew's version of regexp-error change, not Sam's.
Major changes:
- simplification pass
- define match-letrec in terms of match-define
- show steps of match-expander in macro stepper
- substantial refactoring of gen-match
- removed unused times-used-neg field of test struct
- added match:internal-error
- general refactoring
- bug fix in parsing of quasi-patterns
svn: r4418
2006-09-22 18:35:22 +00:00
Matthew Flatt
bbcd99e537
allow regexps for pregexp pattern in match
...
svn: r4410
2006-09-22 01:59:40 +00:00
Sam Tobin-Hochstadt
0a5ff7fddd
Fix bug in definition of match-define.
2006-09-20 11:30:20 -04:00
Sam Tobin-Hochstadt
00383c4c5d
convert-pat:
...
- reformatting
- use constant-data?
render-test-list-impl:
- reformatting
- refactoring
2006-09-20 11:02:15 -04:00
Sam Tobin-Hochstadt
a6f8fbe350
Fix bug in conversion of dotted patterns.
2006-09-19 14:31:17 -04:00
Sam Tobin-Hochstadt
086db937b8
pregexp can now return a regexp object.
2006-09-19 13:01:04 -04:00
Sam Tobin-Hochstadt
b42e317e0c
Changed convert-pat to use syntax/loc.
2006-09-15 12:12:10 -04:00
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