Stevie Strickland
c6b92782e2
Rename cstruct to struct/ctc, to avoid confusion with cstruct from the ffi.
...
svn: r13661
2009-02-16 14:50:59 +00:00
Stevie Strickland
340035bef7
Adding cstruct, which is like the struct signature form but with contracts.
...
svn: r13647
2009-02-16 02:51:12 +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
af1e57d33e
Fix scoping of name.
...
svn: r13601
2009-02-15 06:36:00 +00:00
Stevie Strickland
62d82ca9be
Clean up some bindings, moving them from defines to letrec-syntax.
...
svn: r13599
2009-02-15 05:20:30 +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
dba74f8f15
Make a table of the original imports these came from for easy lookup. This
...
way we can actually bind only the identifiers which were in the original
signature over the contract.
svn: r13567
2009-02-14 02:33:15 +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
8656e7e918
Fix up the contracts so that they properly refer to locally defined variables.
...
svn: r13527
2009-02-12 03:51:40 +00:00
Stevie Strickland
fbb5de4fa7
Adding the initial cut at unit/c.
...
svn: r13524
2009-02-11 22:46:48 +00:00
Matthew Flatt
20f2e32f99
adjust handling of version numbers with dylib suffix
...
svn: r13476
2009-02-06 23:46:29 +00:00
Eli Barzilay
cc6ff9d5d7
use the cstruct type directly, not via ctype-basetype
...
svn: r13345
2009-02-01 03:31:41 +00:00
Stevie Strickland
f6493e1c32
Abstraction of the boxes used for unit imports/exports to allow for adding
...
contracts in an already created unit.
svn: r13331
2009-01-31 01:39:23 +00:00
Stevie Strickland
2f323578de
Disallow unit/new-import-export if contracts are involved. This is not
...
planned to be permanent, but until I've figured out how to implement the
fix, just say no.
svn: r13311
2009-01-29 07:19:23 +00:00
Stevie Strickland
e1d5ced45e
Only apply a single contract wrapping to a value contracted through unit
...
exporting/importing. Also add some more unit contract tests.
svn: r13203
2009-01-18 10:38:52 +00:00
Stevie Strickland
654a70ff90
Adding with-contract from sstrickl/with-contract, with a slight nudge to
...
the recent unit contract work to use the same syntax parameter as this
work.
svn: r13185
2009-01-16 22:59:48 +00:00
Stevie Strickland
39d9cfbb0a
Now that we're in with-contract land, use the same syntax parameter for units
...
as well as with-contract and define/contract.
svn: r13181
2009-01-16 20:41:51 +00:00
Stevie Strickland
0fcf609e2b
Syncing again
...
svn: r13178
2009-01-16 19:11:18 +00:00
Stevie Strickland
cc9925dd6b
Add unit contracts from branches/sstrickl/unit-contracts.
...
svn: r13177
2009-01-16 19:03:11 +00:00
Stevie Strickland
9df50b125a
Missed a case. Oops.
...
svn: r13142
2009-01-15 05:37:23 +00:00
Stevie Strickland
bd802748e0
Okay, let's try using the "internal" names instead of the "external", which
...
might make some errors more obvious.
svn: r13141
2009-01-15 05:32:46 +00:00
Stevie Strickland
6e86da95e6
Actually make this used specifically for blame, not the unit name.
...
We might end up collapsing this and what's introduced in with-contract.
svn: r13140
2009-01-15 05:17:27 +00:00
Stevie Strickland
dbe366c6a0
Add error checking for contracted form, also added documentation in reference
...
svn: r13135
2009-01-15 00:42:49 +00:00
Stevie Strickland
c7ee5b600c
Change this more to how it should be.
...
svn: r13124
2009-01-14 21:35:07 +00:00
Stevie Strickland
5ac3135cd6
Syncing up here as well.
...
svn: r13118
2009-01-14 18:27:06 +00:00
Stevie Strickland
4ca79e31ff
Syncing up to trunk.
...
svn: r13115
2009-01-14 16:45:50 +00:00
Stevie Strickland
12fc114993
Let's just make some differently painted identifiers so that some
...
error messages won't reveal the non-similarly-named ids behind the
curtain.
(I have my hammer, and damn if I won't use it.)
svn: r13107
2009-01-14 03:14:26 +00:00
Eli Barzilay
d1a0086471
newlines at EOFs
...
svn: r13105
2009-01-14 03:10:47 +00:00
Stevie Strickland
b5efb99548
Going to try switching this back, but need to sync from trunk to get Matthew's
...
changes to see if it works.
svn: r13098
2009-01-14 01:12:52 +00:00
Stevie Strickland
37b2272ecf
Move away from using the error-syntax to grab the unit name wherever we want
...
it -- just use a syntax parameter.
svn: r13096
2009-01-13 23:08:47 +00:00
Stevie Strickland
0db2eb851a
Allow multiple identifier/contract pairs in the same contracted form.
...
svn: r13054
2009-01-09 22:22:24 +00:00
Stevie Strickland
af69c0bbec
Tag the contracts so we know what are truly contracts and which are just
...
placeholder #fs.
svn: r13048
2009-01-09 19:50:28 +00:00
Stevie Strickland
bae2c7b5e1
Basically write begin-with-definitions here by hand, which _does_ work.
...
So that should pretty much give us unit contracts, modulo whether we can
separate out the projections so that contracts aren't checked twice
inappropriately.
svn: r13047
2009-01-09 19:08:03 +00:00
Stevie Strickland
8d1b82bcd2
There's no need for the special-casing define-values with one binding, so
...
simplify this.
svn: r13044
2009-01-09 00:59:04 +00:00
Stevie Strickland
a932bfc84a
Small fixes
...
svn: r13043
2009-01-09 00:33:43 +00:00
Stevie Strickland
e402d7ea36
We do _not_ want (void) last, we want it first here.
...
svn: r13040
2009-01-08 20:52:18 +00:00
Stevie Strickland
bf0d872afd
Changed to be more like what Sam and I envisioned.
...
svn: r13039
2009-01-08 20:50:33 +00:00
Stevie Strickland
22ee00b10f
Oh, no! Aliens, bio-duplication, nude conspiracies.. oh my God,
...
Lyndon LaRouche was right!
svn: r13037
2009-01-08 14:55:23 +00:00
Stevie Strickland
d5f0b90981
My fellow Americans. As a young boy, I dreamed of being a baseball,
...
but tonight I say, we must move forward, not backward, upward, not
forward, and always twirling, twirling, twirling towards freedom.
svn: r13036
2009-01-08 14:53:46 +00:00
Matthew Flatt
0663588ee1
change _string/utf-16 and _string/ucs-4 so that #f = NULL (for consistency with other pointer types), and drop the /null variants
...
svn: r13031
2009-01-07 17:49:14 +00:00
Robby Findler
cda64e40da
opened up the trace library a little more to make it more useable for Redex
...
svn: r13027
2009-01-07 15:44:07 +00:00
Matthew Flatt
61685c72f9
revised Mac OS X sleeping; optional atomic mode for FFI callbacks
...
svn: r13016
2009-01-06 13:07:45 +00:00
Eli Barzilay
8a2753efb8
2008 -> 2009
...
svn: r13001
2009-01-04 15:34:50 +00:00
Matthew Flatt
d596401804
scheme/foreign: allow #f as NULL function pointer, allow callback as cpointer
...
svn: r12992
2009-01-03 18:51:15 +00:00
Stevie Strickland
6d966c80af
Syncing
...
svn: r12982
2009-01-03 03:09:06 +00:00
Stevie Strickland
a80ac8d72f
Syncing up.
...
svn: r12981
2009-01-03 02:51:36 +00:00
Matthew Flatt
1c38bd2d3f
fix unit signature 'open' by adjusting 'rename', 'only', and 'execpt'
...
svn: r12964
2009-01-01 21:15:56 +00:00
Stevie Strickland
9e4d8d08b9
Syncing
...
svn: r12929
2008-12-23 03:20:02 +00:00
Stevie Strickland
4f002a60d5
Sync again
...
svn: r12928
2008-12-23 03:05:16 +00:00