Commit Graph

613 Commits

Author SHA1 Message Date
Matthew Flatt
f08649a007 further improve procedure? and procedure-arity-includes? optimization on procedure names bound in a module top-level
svn: r14725
2009-05-05 23:08:24 +00:00
Matthew Flatt
4623a1ac07 some improvement in eliminating procedure? and procedure-arity-includes? statically
svn: r14723
2009-05-05 19:22:55 +00:00
Eli Barzilay
4b28ee8d34 reformat
svn: r14714
2009-05-04 21:04:37 +00:00
Matthew Flatt
83cd3964f4 fix file-descriptor leak in process[*]/ports (PR 10229)
svn: r14710
2009-05-04 12:22:01 +00:00
Eli Barzilay
c0a8a01222 Changed @itemize{...} to @itemize[...] (done after comparing the doc
tree and verifying that there are no changes).
(Also fixed a few bugs that were in the code)

svn: r14427
2009-04-05 17:46:20 +00:00
Ryan Culpepper
eb349682c3 scheme/signature: fixed to recognize scheme require forms
svn: r14396
2009-04-01 03:14:34 +00:00
Stevie Strickland
99aac7d745 Sam and I did some work to allow automatic inferred linking in
(define-values/)invoke-unit/infer.

svn: r14315
2009-03-27 13:47:12 +00:00
Matthew Flatt
2109cec2f4 free-id=? propagation through module exports; add 'not-free-identifier=? syntax property to disable free-id=? propagation; add prop:rename-transformer and prop:set-transformer; fix scheme/local so that local syntax bindings are visible to later definitions (v4.1.5.3)
svn: r14191
2009-03-19 20:22:18 +00:00
Eli Barzilay
977b08c5c4 Fix bug in calling put_short with a bad value
svn: r14166
2009-03-18 01:20:42 +00:00
Ryan Culpepper
3d5377d8f8 pretty-printer: changed 'module' printing
svn: r14082
2009-03-13 01:44:30 +00:00
Robby Findler
283c1819a9 a bunch of improvements to the splash screen (loads less code before the splash appears, got rid of a bunch of dynamic-requires that were not necessary, fixed the lack of special screen on prince kuhio and king kamehameha days, got rid of the flicker in the tools icons)
svn: r13980
2009-03-06 16:35:04 +00:00
Eli Barzilay
3931fb7e35 gzvector is gone, have gzbytes instead, (almost?) all input buffers are bytes
svn: r13972
2009-03-05 22:38:26 +00:00
Eli Barzilay
4b7ec27191 fix a really stupid bug that I introduced in r4490
svn: r13971
2009-03-05 20:55:15 +00:00
Matthew Flatt
b4f6c524a1 added prop:print-converter
svn: r13938
2009-03-04 02:54:22 +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
bd4c6f40ba Just a small change, nothing big.
svn: r13885
2009-03-01 01:12:03 +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
cf005e3297 Adding unit/s and define-unit/s, which is the inferred version of
unit-new-import-export etc.

svn: r13860
2009-02-26 22:52:08 +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
7e8816ce0f * Add initial version of define-struct/contract
* Allow uncontracted exports of syntax from a with-contract form.

svn: r13717
2009-02-18 02:25:45 +00:00
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