Commit Graph

14730 Commits

Author SHA1 Message Date
Eli Barzilay
2406ac6011 Welcome to a new PLT day.
svn: r18292
2010-02-23 08:50:34 +00:00
Stevie Strickland
8cc22294ff Sync up to trunk.
svn: r18291
2010-02-23 07:25:24 +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
70b5fe6294 Of course, it would help if this was correct.
svn: r18289
2010-02-23 04:18:29 +00:00
Stevie Strickland
e4f7f0032e Get rid of the loop that's no longer a loop, and also add in the necessary
object unwrapping.

svn: r18288
2010-02-23 04:13:09 +00:00
Stevie Strickland
e9a6aa31ca Remove a load of crap from mzlib's object-contract that's no longer needed.
svn: r18287
2010-02-23 04:03:39 +00:00
Stevie Strickland
978a9586f5 We no longer need the #:error thing here, because we've fixed object-contract
for real now.

svn: r18286
2010-02-23 04:02:03 +00:00
Stevie Strickland
14ab0175c3 Okay, expanding field accesses and mutations to basically inline the
unwrapping operation helps a bit, especially with inherited fields.
Unfortunately, as one might expect, TANSTAAFL applies here.  In order
to make sure that we keep the contracted objects around as much as
possible to make sure there are no holes, we end up making local and
inherited field access codes 2-3x more than they did before.  However,
this is still something on the order of 5x faster than external
access.  But blah.

CONTRACTS ARE NOT FREE.  Just ask your local lawyer.

svn: r18285
2010-02-23 03:15:43 +00:00
Sam Tobin-Hochstadt
f2ee3aa7b6 Fix bad hashtable type inference.
svn: r18284
2010-02-23 02:05:40 +00:00
Matthias Felleisen
2e791579ad fixed small typo in on-tick for universe
svn: r18283
2010-02-23 02:01:18 +00:00
Stevie Strickland
53381bbf03 Remove unwrapping in find-method/who until I figure out what I actually need
to do.

Also fix up is-a? and subclass? so that they should work the same when
contracts are removed from a program.

svn: r18282
2010-02-23 01:15:11 +00:00
Stevie Strickland
f1b0bfdd79 Yeah, accessors need arguments.
svn: r18281
2010-02-23 00:46:47 +00:00
Stevie Strickland
cfdb9dd39b Time to unveil object/c.
svn: r18280
2010-02-23 00:43:25 +00:00
Stevie Strickland
ab2561e08a Now we don't need to recur down to unwrap something, but if we get a wrapped
primitive object in a method send, we need to unwrap all objects for its
method.

svn: r18279
2010-02-23 00:40:59 +00:00
Sam Tobin-Hochstadt
88817e6bd3 fix obvious bogosity
svn: r18278
2010-02-23 00:01:47 +00:00
Stevie Strickland
2af44afb17 Now I see -- I was handling local fields in an incorrect manner. We don't
want later projections to affect local accesses or mutations -- so we just
have to add the unwrap check in case it's a wrapped object.

svn: r18277
2010-02-22 22:43:47 +00:00
Stevie Strickland
0e3af71176 So now object-contract works again, but we seem to have introduced a bug
in the class/c inherit-field form, so now time to fix that.

svn: r18276
2010-02-22 22:26:27 +00:00
Stevie Strickland
a3a1d0d9c7 Fix shadowing in make-wrapper-class. Now delay lookup for
accessors/mutators used for internal field access.  This fixes public
fields, but not private fields.  Next should fix that up.

Will definitely need to benchmark all this delay though.

svn: r18275
2010-02-22 22:10:30 +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
Eli Barzilay
275de1b3f4 typo (PR10671)
svn: r18273
2010-02-22 21:27:20 +00:00
Eli Barzilay
177f572cda Russian and Ukranian translation files from Sergey Semerikov
svn: r18272
2010-02-22 21:27:17 +00:00
Ryan Culpepper
d4b0f917df rewrote schemeunit test
svn: r18271
2010-02-22 21:12:11 +00:00
Stevie Strickland
815dd80923 Sync up to catch my fix.
svn: r18270
2010-02-22 20:58:53 +00:00
Stevie Strickland
11b8fd4204 Fix vector creation for internal field access.
svn: r18269
2010-02-22 20:57:36 +00:00
Ryan Culpepper
d4eee108f4 schemeunit:
added ryanc to plt:responsible
  test-suite list trampoline, make-test-suite

svn: r18268
2010-02-22 20:48:31 +00:00
Sam Tobin-Hochstadt
8a11336b51 revert this change, since it breaks insert large letters
svn: r18267
2010-02-22 20:06:34 +00:00
Robby Findler
18e8f00572 added a preference to remember the log viewer's setting
svn: r18266
2010-02-22 19:45:17 +00:00
Stevie Strickland
c2fcdbba65 Class Contracts Phase 2: Object/c Boogaloo
This isn't just a copy of trunk r18264 -- it has a slight difference in how
local field accessors and mutators are handled that will eventually play a
larger role.

svn: r18265
2010-02-22 19:09:42 +00:00
Robby Findler
f1e7c7e4b0 Probably fix for PR 10773
svn: r18264
2010-02-22 18:04:04 +00:00
Sam Tobin-Hochstadt
e417da3598 Switch to the current version of schemeunit.
svn: r18263
2010-02-22 17:58:18 +00:00
Jay McCarthy
1eea5163cc Supporting byte-regexps and boxes in tester. Improving speed/allocation of parser and noting places where we could do better. Updating struct contracts in code and docs.
svn: r18262
2010-02-22 15:47:57 +00:00
Mike Sperber
21ca9596b5 Synch German string constants with latest.
svn: r18261
2010-02-22 10:20:30 +00:00
Eli Barzilay
e946fffe90 Welcome to a new PLT day.
svn: r18260
2010-02-22 08:50:35 +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
Matthew Flatt
ed2010bd70 fix text renderer
svn: r18255
2010-02-21 13:04:06 +00:00
Robby Findler
1d378bc6d7 fixed a broken reference
svn: r18254
2010-02-21 12:37:06 +00:00
Eli Barzilay
cbb86e58c2 Welcome to a new PLT day.
svn: r18253
2010-02-21 08:50:54 +00:00
Ryan Culpepper
48ea3224f8 schemeunit: fixed some properties and dangling requires
svn: r18252
2010-02-21 04:49:09 +00:00
Stevie Strickland
d3a280501f Merge in branches/sstrickl/cc-phase1, which includes the first phase of
my class contracts work.

This adds the following features:
  * class/c, a contract combinator for classes.
  * set-field!, which was conspicuously missing from the class library.
  * ->m and ->*m, shorthand arrow contracts for methods.

svn: r18251
2010-02-21 04:47:34 +00:00
Stevie Strickland
6f3b676fa5 Syncing up.
svn: r18249
2010-02-21 03:37:21 +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
Robby Findler
71b4df4a29 removed some more one-of/c's in favor of or/c
svn: r18247
2010-02-21 02:29:12 +00:00
Robby Findler
ad352387c9 added string constants for the menus added in the previous commit
svn: r18246
2010-02-21 02:09:25 +00:00
Robby Findler
95debe6353 added keyboard shortcuts for the first 9 tabs to the windows menu (on the mac)
svn: r18245
2010-02-21 02:06:57 +00:00
Robby Findler
5ad04e3b2c changed some defconstructor/make's into defconstructor's
svn: r18244
2010-02-21 02:06:28 +00:00
Ryan Culpepper
3b630af6f9 schemeunit:
moved internal modules to schemeunit/private
  moved tests to tests/schemeunig
  added schemeunit/gui

drscheme:
  fixed bug in show-backtrace-window

svn: r18243
2010-02-21 01:03:42 +00:00
Stevie Strickland
e72928d444 Yeah, I should add augride here.
svn: r18242
2010-02-21 00:26:58 +00:00
Stevie Strickland
c6e671581f Want to call this something more generic, as method contracts have specific
restrictions, but contracts on fields do not.

svn: r18241
2010-02-21 00:22:37 +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
5df617e4d4 Forgot to add this to the literals list.
svn: r18239
2010-02-20 23:45:55 +00:00