Commit Graph

1701 Commits

Author SHA1 Message Date
Stevie Strickland
caad0a01f3 Only apply a single contract wrapping to a value contracted through unit
exporting/importing.  Also add some more unit contract tests.

svn: r13203

original commit: e1d5ced45ea68ee376cd16728fa3a5dfc73eb8c2
2009-01-18 10:38:52 +00:00
Stevie Strickland
98280bd936 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

original commit: 39d9cfbb0aac1f619782a5f1867d3b68c75c18c3
2009-01-16 20:41:51 +00:00
Stevie Strickland
b4bd9f99b3 Missed a case. Oops.
svn: r13142

original commit: 9df50b125a7aa278e087c17450794861735429e5
2009-01-15 05:37:23 +00:00
Stevie Strickland
650f7a3219 Okay, let's try using the "internal" names instead of the "external", which
might make some errors more obvious.

svn: r13141

original commit: bd802748e03c3434195279056f4223b94ddfc48f
2009-01-15 05:32:46 +00:00
Stevie Strickland
f5961b496a 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

original commit: 6e86da95e60f9d2aaef92c73226c9f99f374c3ae
2009-01-15 05:17:27 +00:00
Stevie Strickland
855492f109 Add error checking for contracted form, also added documentation in reference
svn: r13135

original commit: dbe366c6a0855abc117d7be2f160be058b882ec8
2009-01-15 00:42:49 +00:00
Stevie Strickland
95759e5196 Change this more to how it should be.
svn: r13124

original commit: c7ee5b600c1023f612df6c4549f0bde66eef1416
2009-01-14 21:35:07 +00:00
Stevie Strickland
242e3f0266 Fixing these back up to how they were before.
svn: r13123

original commit: d3f703b04368b74d5435fcb81d8de8521c4976e1
2009-01-14 21:31:46 +00:00
Stevie Strickland
dc8c149c77 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

original commit: 12fc114993b4c5962791984e2ff47340d7a89a88
2009-01-14 03:14:26 +00:00
Eli Barzilay
8f600ef6f7 newlines at EOFs
svn: r13105

original commit: d1a0086471bf5e9553a9b056b26286c427831d38
2009-01-14 03:10:47 +00:00
Stevie Strickland
4a1629bf41 Going to try switching this back, but need to sync from trunk to get Matthew's
changes to see if it works.

svn: r13098

original commit: b5efb99548e940818a92f41c174bc713bfa80e6b
2009-01-14 01:12:52 +00:00
Stevie Strickland
6a6a4909d4 Move away from using the error-syntax to grab the unit name wherever we want
it -- just use a syntax parameter.

svn: r13096

original commit: 37b2272ecf1a3e6826060560c826483ce4d64ced
2009-01-13 23:08:47 +00:00
Stevie Strickland
4380d8a399 Allow multiple identifier/contract pairs in the same contracted form.
svn: r13054

original commit: 0db2eb851a46185f0f09a130f707e1cdd748c50e
2009-01-09 22:22:24 +00:00
Stevie Strickland
4d8f6fdeb0 Tag the contracts so we know what are truly contracts and which are just
placeholder #fs.

svn: r13048

original commit: af69c0bbeccf2fab5e11b104cd8bb3a686f343f9
2009-01-09 19:50:28 +00:00
Stevie Strickland
ea41bc867d 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

original commit: bae2c7b5e121448891289fde194ffbaaced33a24
2009-01-09 19:08:03 +00:00
Stevie Strickland
81e4bee047 There's no need for the special-casing define-values with one binding, so
simplify this.

svn: r13044

original commit: 8d1b82bcd21e42fcc2df2827291a8264aef189d9
2009-01-09 00:59:04 +00:00
Stevie Strickland
679f32c6dc Small fixes
svn: r13043

original commit: a932bfc84a65d6a6d9a9cf124931ce0ca3b30117
2009-01-09 00:33:43 +00:00
Stevie Strickland
3301fdba75 We do _not_ want (void) last, we want it first here.
svn: r13040

original commit: e402d7ea36a8d8b85119c183458a76645776922d
2009-01-08 20:52:18 +00:00
Stevie Strickland
343618feec Changed to be more like what Sam and I envisioned.
svn: r13039

original commit: bf0d872afdcb3b511051da314cfd476c9d6e65ef
2009-01-08 20:50:33 +00:00
Matthew Flatt
365bc53e44 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

original commit: 0663588ee1f03c92ad6d4d0956a293d43e6f266d
2009-01-07 17:49:14 +00:00
Robby Findler
42e6044cd4 opened up the trace library a little more to make it more useable for Redex
svn: r13027

original commit: cda64e40da21ef9e639faa82f741bfd736edf245
2009-01-07 15:44:07 +00:00
Matthew Flatt
3fd92992ee revised Mac OS X sleeping; optional atomic mode for FFI callbacks
svn: r13016

original commit: 61685c72f9f4dc9c759011c02c013ee92ea185be
2009-01-06 13:07:45 +00:00
Eli Barzilay
87927edac4 2008 -> 2009
svn: r13001

original commit: 8a2753efb8fb4df490feec8d52c570cba17d2bdd
2009-01-04 15:34:50 +00:00
Matthew Flatt
2e250514c6 scheme/foreign: allow #f as NULL function pointer, allow callback as cpointer
svn: r12992

original commit: d596401804242ca39007e56d798e12f3852810f0
2009-01-03 18:51:15 +00:00
Eli Barzilay
0dc7813924 minor improvement
svn: r12931

original commit: c11196839be2150d8741248e10eda3453af405b4
2008-12-23 09:02:44 +00:00
Matthew Flatt
000fe5277f fine-tune typechecking index entry
svn: r12920

original commit: ec600c59bb9caa15f10fb68844677e56a4ce86dc
2008-12-21 13:57:46 +00:00
Matthew Flatt
90abe67ff6 change _fpointer handling to work with function pointers in structs and other such uses; add 'function-ptr' casting operation
svn: r12913

original commit: 82ead03b92f7288fede1aaf6679312fc5d2093f2
2008-12-20 05:09:35 +00:00
Eli Barzilay
0a87e4bd26 fix _-identifier? typo
svn: r12912

original commit: a62b6a312809f2cc9b10a8cc9b92b73f4b9ef69f
2008-12-20 03:06:59 +00:00
Matthew Flatt
e73dd4b4af add FFI types _string/utf-16/null and _string/ucs-4/null
svn: r12911

original commit: 7dc56df9499127695e4fc09d754bdd4cdd411fa5
2008-12-19 23:59:33 +00:00
Matthew Flatt
588e3b23a5 ctype->layout in scheme/foreign; prototype Objective-C binding in ffi collection
svn: r12890

original commit: 2c95f77c3141a0827bd094d8d93b3e3fa39ef8b5
2008-12-18 20:05:21 +00:00
Eli Barzilay
ad2792fb85 ctype-basetype now holds:
* a symbol naming the type for primitive types
* a list of ctypes for cstruct types
* another ctype for user-defined ctypes

svn: r12882

original commit: 6283205982477aec904affbffa8eab57d239dd31
2008-12-18 06:48:10 +00:00
Stevie Strickland
dcacda86fa Remove unused argument
svn: r12872

original commit: 821a3ae90057e9e0115df51e27d1572bfa8c50cd
2008-12-16 20:35:19 +00:00
Stevie Strickland
3db841f79a Handle this similarly to scheme/private/contract.
svn: r12869

original commit: f7c37571ce844987fcb1bbfc8c20580b70e25864
2008-12-16 19:42:06 +00:00
Stevie Strickland
b4695eeac4 These lets aren't doing anything, so remove them.
svn: r12769

original commit: bc62c06e1cdd0abf4e3068dee7c1a28eb3886674
2008-12-10 19:29:21 +00:00
Stevie Strickland
6eaf47ef9a Last changes, everything works up to here.
svn: r12765

original commit: 8bc883d1cbf2921c4a42b2b19441de0155b742c2
2008-12-10 18:51:40 +00:00
Stevie Strickland
e9627fb9e2 I'd like a better way of handling export contracts (some of the work that
should be doable at compile time is being done at run time), but at least
this works for now and gives us a chance to play around with it.

svn: r12763

original commit: 56854a84bd2958f23eae2d04a185ed29eafbc077
2008-12-10 17:19:39 +00:00
Stevie Strickland
bee6f21c4d Do the let so that (hopefully) the contract errors will get reported on the
identifier.  With a small change in scheme/contract, it does, but even with
this, it doesn't seem to.  How odd.

svn: r12760

original commit: 90ad3f9221a9b5c31a673dcc820304e7b6c86872
2008-12-09 23:16:48 +00:00
Stevie Strickland
d9d718daa8 Add contracts to unit imports and values imported via
define-values/invoke-unit.  We still need contracts on unit exports,
and we might want to do the stuff here in a cleaner fashion (particularly
for define-values/invoke-unit).

svn: r12759

original commit: a9be78545d95d72e5076d14369afae8b5774dbad
2008-12-09 22:14:11 +00:00
Eli Barzilay
ac1f721985 if the path is empty, use /
svn: r12750

original commit: 169c69a0bc6d0faff5473b75ff6ee17bef45ae84
2008-12-09 02:39:45 +00:00
Stevie Strickland
2c7fb0cd5f Removing the work that's now on unit-contracts.
svn: r12744

original commit: 52b76b8dfafcb2f284db19fd6d9b3c8da87420ce
2008-12-08 17:09:33 +00:00
Stevie Strickland
66dad85db5 Adding current unit contract work over here.
svn: r12743

original commit: bf5dddbd13fa45fd1950289624bbd05e9ec92135
2008-12-08 17:06:53 +00:00
Stevie Strickland
83ff7d7e62 Now to move the contract info appropriately into sigs from signatures.
svn: r12712

original commit: beb5f195300b0db3dda7c4f8273563ecaeba65f0
2008-12-05 17:55:47 +00:00
Stevie Strickland
5227c36efb Start on adding contracts to units. Here we're just adding contract(ed) forms,
but they're not (yet) used further in.

svn: r12711

original commit: 1b4d2cb7bf4eb7a3340e8a29b370994d9eaf1b35
2008-12-05 17:47:37 +00:00
Eli Barzilay
75308c9158 switch to #lang, reformat
svn: r12655

original commit: 7ea8ab6592e4ea96121d24c3b3fa4ed355e653cd
2008-12-01 03:21:46 +00:00
Matthew Flatt
510305451c remove broken define*-struct
svn: r12590

original commit: 7a66101d308e01124e513ccec5aa1ba6f34fa7dc
2008-11-25 18:14:57 +00:00
Matthew Flatt
4e48a33a49 scheme/package (and more int-def repairs)
svn: r12589

original commit: ed536c002e3ef5a7f908584f9d50421fcac827b4
2008-11-25 17:58:21 +00:00
Matthew Flatt
7134eca95d provide open*-package
svn: r12586

original commit: b7addbab82ad04384f2c381b098857b9e745efc6
2008-11-25 03:13:06 +00:00
Matthew Flatt
985cd6e47d another int-def binding simplification repair
svn: r12585

original commit: 5f3b7e5c6f26298c519be93f6d45fc865d626aaf
2008-11-25 03:08:08 +00:00
Matthew Flatt
bfb0bc4ffd revised internal-definitions context and a basic 'define-package' form
svn: r12579

original commit: a0f91d905e78288ac9ee252f24e8157f5cbea3f9
2008-11-24 19:52:41 +00:00
Stevie Strickland
ba3812ca9c Missed a file.
svn: r12452

original commit: eca59f6b1d98b59301a68c56f902f571340a5a16
2008-11-14 16:49:10 +00:00