Commit Graph

22 Commits

Author SHA1 Message Date
Matthew Flatt
c95a398754 move most of the 'scheme' collection to the 'racket' collection 2010-04-20 15:24:48 -06:00
Stevie Strickland
3404c0e27a Factor out _all_ the first-order checks into a single procedure, and rework
that procedure so that you feed it #f instead of a (no longer possible) dummy
blame value for the first-order case.

svn: r18452
2010-03-03 20:49:37 +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
Carl Eastlund
1d4cdbeb45 Exports from scheme/contract/private/blame: removed constructor; fixed confusing selector names.
svn: r17909
2010-01-31 03:03:30 +00:00
Carl Eastlund
2bad47fd0f Ported more code to use new contract bindings.
svn: r17727
2010-01-19 01:01:28 +00:00
Carl Eastlund
7763a4079a Ported mzlib units to new contract system.
svn: r17718
2010-01-18 18:26:02 +00:00
Stevie Strickland
8c01eb975a We don't need the full scheme/contract here.
svn: r16053
2009-09-17 20:59:32 +00:00
Stevie Strickland
538cc8862f Changing from stxclass to syntax/parse.
svn: r15979
2009-09-11 19:47:27 +00:00
Robby Findler
5c73253e03 changed the low-level api for contracts so the projections accept an extra argument indicating if the contract is being used positively or negatively
svn: r15850
2009-09-01 16:25:08 +00:00
Stevie Strickland
44523232e4 While this gets us most of the way there, it doesn't get us all the way,
because signature identifiers are shown as quoted.  I'll think about this
a little longer.

svn: r13904
2009-03-03 02:07:30 +00:00
Stevie Strickland
2f065df887 Instead of just using the quoted versions of the contracts, actually evaluate
them, with signature elements rewritten to quoted versions of the same, so
that we get a better result for the name of the contract used by contract
errors.

svn: r13903
2009-03-03 02:00:31 +00:00
Stevie Strickland
837906b783 Cleanups.
svn: r13884
2009-02-28 20:34:06 +00:00
Stevie Strickland
b58c5881c6 We can't actually change how exports are set, we can only change how they're
retrieved, so having each export be a cons of an accessor/mutator pair is
misleading.  Remove the mutator, just have the unit set-box! the box directly,
and just export the accessor.

svn: r13882
2009-02-28 19:46:47 +00:00
Stevie Strickland
c221f41695 Fix handling of imports in unit contracts.
svn: r13864
2009-02-27 01:02:27 +00:00
Stevie Strickland
5a1f31668d More name-setting fun.
svn: r13807
2009-02-23 22:22:06 +00:00
Stevie Strickland
e727f4fd08 Fixing some more inferred-name placements.
svn: r13806
2009-02-23 22:05:09 +00:00
Stevie Strickland
78dbc22598 Try to set up the inferred-name property appropriately.
svn: r13805
2009-02-23 21:46:22 +00:00
Stevie Strickland
e453483b09 Okay, after some deep thought, I think I finally have a mental model for
exactly what unit/c is doing here that's appropriate for fixing this
section of code.  ASCII art diagrams for the win!

This also shows how a unit/c contract addition differs from the use
of unit/new-import-export to switch sigs, which means that I'll likely
not be able to unify as much of the guts of the two as I'd like.  Schade.

svn: r13605
2009-02-15 09:59:51 +00:00
Stevie Strickland
cbcad0528c There is now a new form, define-unit/contract, that basically mixes
define-unit with the application of a unit contract.  So you can think
of it as a define/contract for units that keeps the static info needed
for link inference.

svn: r13584
2009-02-14 21:32:02 +00:00
Stevie Strickland
ebe06e9572 Allowing _all_ types of tagged-sig-specs in unit/c, though whether that
makes sense or not, we'll see.  Easy enough to set up, and it also sets
up the plan for a new form I'd like to add, which is why I've factored out
the syntax classes into their own file.

svn: r13570
2009-02-14 07:40:50 +00:00
Stevie Strickland
387c8b210f * Fix unit/c so that less unnecessary code is generated.
* Fix contracts for signatures and units so that references to
   other signature members work appropriately.
 * Add text about signature and unit contracts to the Guide.

svn: r13562
2009-02-13 22:50:49 +00:00
Stevie Strickland
fbb5de4fa7 Adding the initial cut at unit/c.
svn: r13524
2009-02-11 22:46:48 +00:00