Commit Graph

16 Commits

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