Commit Graph

974 Commits

Author SHA1 Message Date
Matthew Flatt
9ca5f6b340 fix regexp-replace* 2010-04-16 17:27:53 -04:00
Matthew Flatt
4bc155905a Perl-like handling of empty matches in regexp-match*, etc., though without Perl-like filtering of empty strings in the result of regexp-split (PR 10855) 2010-04-14 22:53:14 -04:00
Matthew Flatt
1c34ccec44 improve regexp support (PR 10855, halfway) 2010-04-14 18:40:08 -04:00
Matthew Flatt
bdb71498e3 module paths normalize to .rkt, load handler converts .rkt back to .ss if necessary
svn: r18788
2010-04-11 16:55:18 +00:00
Matthew Flatt
5e22bb81f5 constant-folding repairs to some unsafe operations
svn: r18745
2010-04-07 12:48:15 +00:00
Matthew Flatt
2c36427b20 fix compiler bug with unsafe-c[ad]r and constant folding (PR 10850)
svn: r18742
2010-04-07 02:25:27 +00:00
Matthew Flatt
3cc95b31ef add prop:struct-info
svn: r18730
2010-04-03 13:08:39 +00:00
Matthew Flatt
2cb9f378aa Racket experiments
svn: r18725
2010-04-02 21:29:59 +00:00
Kevin Tew
191b111109 Communciate Structs
svn: r18715
2010-04-01 17:03:51 +00:00
Matthew Flatt
b2d65a1b95 fix the interaction of chaperones, keywords, and the whole zoo of reflective procedure operations
svn: r18711
2010-04-01 13:14:50 +00:00
Eli Barzilay
581cbb461b Change `generator' to have a form of (generator () body ...). The empty
place will have initial input names, so having this first will make
existing code break with an easy to fix syntax error, rather than having
confusing failures.  (Also made it throw a very clear error message if
there is no () now.)

svn: r18705
2010-04-01 07:45:41 +00:00
Matthew Flatt
baab09fc1b drop the uglier half of the Mac OS X thread-local variable hack; thread GC state through mark functions (to avoid overhead of thread-local accesses); fix some procedure-arity bugs and work toward fixing chaperones and some other procedure operations on keyword procedures
svn: r18661
2010-03-29 15:06:47 +00:00
Matthew Flatt
b8c3112b98 fix chaperones on parameters
svn: r18654
2010-03-28 15:56:04 +00:00
Matthew Flatt
73807aef24 chaperones (v4.2.5.3)
svn: r18650
2010-03-28 01:10:33 +00:00
Matthew Flatt
72db535760 fix optimizer bug for inlining procedures under 'let' in rator position
svn: r18622
2010-03-25 20:09:41 +00:00
Sam Tobin-Hochstadt
23d16b904f fix embed-in-c
svn: r18584
2010-03-19 15:27:47 +00:00
Stevie Strickland
dde2011ec7 Add ->dm and case->m, which are the implicit method versions of ->d and
case->.

This should be included in the release.

svn: r18579
2010-03-18 21:28:41 +00:00
Kevin Tew
8299803e06 [Places] channel tests
svn: r18577
2010-03-18 16:42:14 +00:00
Kevin Tew
e7b6b4a3da place holder for place-channel tests
svn: r18548
2010-03-15 21:28:57 +00:00
Stevie Strickland
c7c8f7061e Add documentation, and also add tests for appropriate init-field behavior.
svn: r18541
2010-03-15 08:47:09 +00:00
Stevie Strickland
924842d9e9 * Fix inits so that we either call the previous class/c wrapper's init
or let continue-make-super take control if we were the first wrapper
* Fix up handling of init/contract sorting so that things are performed
  at the right phase (at least if we're going to treat names as symbols).
* Fix up new tests so that all contract layers are tested.

svn: r18540
2010-03-15 08:29:22 +00:00
Stevie Strickland
7ec061cdbf * Factor out zipping of inits/contracts of the init closure
* Add tests for higher-order behavior

svn: r18538
2010-03-15 07:37:25 +00:00
Stevie Strickland
1bd29dd7e9 Okay, we're going to add back init contracts, which I'd somewhat done before.
In this version, we're not going to have any reasonable first-order checks as
to whether or not the class actually accepts the initialization arguments that
are being contracted.  I'm also just going to handle by-name at first, since
that's all I originally discussed in the paper.

svn: r18534
2010-03-15 06:49:49 +00:00
Stevie Strickland
40b35a2b73 Now that we have a way of marking procedures as methods at runtime,
fix up all projection applications and uncomment out the tests for
appropriate method arity errors.

svn: r18504
2010-03-10 04:07:00 +00:00
Stevie Strickland
0982626a67 Add test cases, which let us see where we're failing at the moment.
svn: r18496
2010-03-09 23:56:20 +00:00
Matthew Flatt
4673b36dcf adjust inlining heuristics again
svn: r18479
2010-03-06 03:44:07 +00:00
Stevie Strickland
bf60da75e1 Refactor out new has-contract?/value-contract functionality so that it's
the responsibility of the (higher-order) contract to add the contract
(plus possibly more in the future) to the wrapped value.

svn: r18469
2010-03-04 21:10:44 +00:00
Stevie Strickland
5fe0a790c1 Change how contracts for multiple values are handled to be a little cleaner
syntactically.

svn: r18458
2010-03-04 00:04:07 +00:00
Stevie Strickland
f2788561d3 Add the ability to contract more than one value returned from a with-contract
block in expression position.

svn: r18456
2010-03-03 21:54:18 +00:00
Matthew Flatt
fced29e946 fix regexp bug in unicode-category patterns
svn: r18427
2010-03-02 15:09:47 +00:00
Sam Tobin-Hochstadt
1c1a2dde38 Fix pconvert of hashtables.
svn: r18414
2010-03-01 20:27:55 +00:00
Robby Findler
d7f8c62371 fixed immutable boxes and vectors
svn: r18407
2010-03-01 14:47:38 +00:00
Stevie Strickland
16dbb0edc1 Fix bug in field mutation on contracted objects.
svn: r18390
2010-02-27 20:59:40 +00:00
Stevie Strickland
7dacfaea85 Add with-contract for expression positions.
svn: r18372
2010-02-27 01:05:03 +00:00
Matthew Flatt
02583a1a08 ad hoc car/cdr optimizations
svn: r18354
2010-02-26 19:14:56 +00:00
Sam Tobin-Hochstadt
2bda690d2d remove error printf for drdr
svn: r18349
2010-02-26 14:37:51 +00:00
Carl Eastlund
8b93f081bc Renamed make-set{,eq,eqv} to set{,eq,eqv} for uniformity with list, vector, etc.
svn: r18338
2010-02-25 19:46:36 +00:00
Stevie Strickland
9f9e83b671 Yes, I know that we get different results for how it prints out. This needs
to be fixed.  But for now, I'm commenting this out with a note to myself to
get this fixed.

svn: r18322
2010-02-24 17:46:51 +00:00
Stevie Strickland
6326731a15 Fix the tests that break due to semantic changes in object-contract.
svn: r18290
2010-02-23 04:34:05 +00:00
Stevie Strickland
d820493feb First cut of converting object-contract to share a common base that
object/c will also use.

svn: r18274
2010-02-22 21:55:32 +00:00
Carl Eastlund
1d6111c532 Renamed simple-contract and simple-flat-contract to make-contract and make-flat-contract.
svn: r18259
2010-02-22 02:51:16 +00:00
Stevie Strickland
a0769da5ea Add the contract shorthands for -> and ->* to use for methods where we don't
care about properties of this.

svn: r18248
2010-02-21 02:54:06 +00:00
Stevie Strickland
ffa34e1f7d Add augride, which is like augment but enables the contract writer to give
subclasses an idea of whether a method can be augmented (augment) or whether
a method augmentation can be overridden (augride).

svn: r18240
2010-02-21 00:17:42 +00:00
Stevie Strickland
f72ca7bb1b Now inherit works (and tests!)
svn: r18237
2010-02-20 22:54:11 +00:00
Stevie Strickland
370792b881 Refactoring done, and I think that's actually cleaned up things a bit. Now
to handle inherit.

svn: r18236
2010-02-20 22:44:53 +00:00
Stevie Strickland
a4d6252d16 Start inherit contracts (which are useful for mixins). Tests, plus parsing.
svn: r18232
2010-02-20 21:28:20 +00:00
Stevie Strickland
a169105ed0 Sync up to trunk, because keeping up to date is the right thing to do (and
hopefully it'll get rid of the issues in tests/future/future.ss).

svn: r18228
2010-02-20 19:36:15 +00:00
Matthew Flatt
e38e8d88e0 basic set library
svn: r18222
2010-02-20 13:00:48 +00:00
Matthew Flatt
d2bdc2eca8 fix test problems
svn: r18221
2010-02-20 12:23:01 +00:00
Stevie Strickland
c59805ab9e Syncing up to trunk before I go to bed, so setup-plt can run while I
sleep.

svn: r18220
2010-02-20 10:59:49 +00:00