Commit Graph

257 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
4f2a113076 Eliminate expressions with dotted pre-types.
- Now looks for (List T ...) types.
 - special handling of `map', `andmap', `ormap' when list arg is dotted
 - remove tc-dots-unit

original commit: 4c3f279ab910de4fc5a059e48025d7118c97129b
2010-06-21 18:29:57 -04:00
Sam Tobin-Hochstadt
d91f1e9998 Change type of ... rest args to have (List T ...) types.
original commit: 4cbeb0b2f00e652ce15e5638e15ca83a131b3b8b
2010-06-21 18:29:56 -04:00
Sam Tobin-Hochstadt
021e1146cb More environment refactoring.
- rationalize naming of files
- split files by env constructed

original commit: 50f93b9ed7abeb1d4e687078cb5fef6976d008aa
2010-06-21 18:29:55 -04:00
Sam Tobin-Hochstadt
f581c7796d Refactor environments.
- mapping stored as dict
 - use id tables for identifiers
 - use env-filter instead of filter
 - eliminate spurious use of conses

original commit: 647c4eef5940fde0395f9a19496244acab5f62b2
2010-06-21 18:29:54 -04:00
Sam Tobin-Hochstadt
3f49f996de Refactor provide handling.
- use id-tables instead of lists
 - smarter iteration
 - prepare for eliminating declarations when not needed, but don't do it yet

original commit: 4925e7e51f487e3e9dcc3646a28cd30bf334cd02
2010-06-21 15:42:52 -04:00
Stevie Strickland
c903ffe15c Fix use of add-type-expr from commit 5d835ded.
original commit: 0aae2c866f2906c1b4111aff438d3f931afa43f7
2010-06-19 14:58:52 -04:00
Sam Tobin-Hochstadt
a4cec9ce13 Fix error message for 1-arg apply
original commit: 1e15ce1f3299d235cd72eeb171f7224099fba41a
2010-06-19 14:58:52 -04:00
Vincent St-Amour
a4b8973528 Added the type of the 1 literals in expressions of the form (- x 1) to
the type table.

original commit: 5d835ded47e51e29a86a457e97f87f88561fe1d8
2010-06-18 17:43:05 -04:00
Sam Tobin-Hochstadt
d31b37acc1 handle multiple body expression properly
original commit: 0262ef681ac4394f9c2f8f19836777ee1fcc7a56
2010-06-17 12:50:30 -04:00
Sam Tobin-Hochstadt
90039fecdc Try harder to find types for loop variables.
- use `find-annotation' more
 - recognize (let ([x y]) ...)

original commit: bdbb6d48e62e8009154a095f1fc5752766ab34fe
2010-06-17 11:26:33 -04:00
Sam Tobin-Hochstadt
36d46fac77 eq? is a predicate for eof
original commit: f73d63e1afdca9f509ff0a143ae2348875766ce2
2010-06-15 14:59:08 -04:00
Sam Tobin-Hochstadt
b19c37e9df Actually typecheck actuals even when there's a type annotation.
original commit: 1cff0a1f85e30ca231cde5fa94ec2d8c47b74d68
2010-06-11 19:35:56 -04:00
Sam Tobin-Hochstadt
589306a88f Refactor #%module-begin and #%top-interaction for Typed Scheme.
original commit: 5f069ed4bb033531d39c8b268180f4ef70598c57
2010-06-11 11:55:21 -04:00
Sam Tobin-Hochstadt
ed35e04293 New interface for unstable/mutated-vars
- functional hash tables
 - fix clients

original commit: 0379e534e3f0024473d6af9379d0cac0d2bd1a37
2010-06-10 13:28:29 -04:00
Sam Tobin-Hochstadt
2ddda6b00a Support case-lambda with multiple branches with keyword arguments.
original commit: 78832fe332fccfe7c533243c4e1f1c1d0e3753e4
2010-06-08 17:50:48 -04:00
Sam Tobin-Hochstadt
2d28ab5f13 Special-case (- x 1) for use in loops.
original commit: 7f300a2c4f9d934522a3b3ba3d5c949b5bd075ed
2010-06-08 12:05:56 -04:00
Sam Tobin-Hochstadt
fcfd000fcc Properly handling immutable invariant structs.
original commit: 7df8e3279396e7483a5645603726afa5424a071a
2010-06-07 14:03:06 -04:00
Sam Tobin-Hochstadt
371934cf82 Fix error message for multiple values.
original commit: d4a8c52c7102778e6b1ef8fae8b5c75774069487
2010-05-27 10:10:26 -04:00
Sam Tobin-Hochstadt
1c955c4e56 Better internal error messages.
original commit: 460bb348e10f07534bc74e7f91b8b4bc8655ac68
2010-05-24 14:05:05 -07:00
Sam Tobin-Hochstadt
af4ff86f52 Remove tc-toplevel from the typechecking unit.
original commit: 986318065d71817c59c9571e72fe8abcce4944cd
2010-05-24 14:03:14 -07:00
Sam Tobin-Hochstadt
5ba6d3297f Only do abstraction of filters at `let's.
original commit: 5b0f705b8374a3a136250a40560d4e5e00c6fba3
2010-05-24 14:01:00 -07:00
Sam Tobin-Hochstadt
291937c278 Allow expected type to have weaker filters and objects.
Closes PR 10729.

original commit: 9fe3747a19e38d2041814d897f7db0e67d02a0e0
2010-05-19 15:14:18 -05:00
Sam Tobin-Hochstadt
eb9f6a9916 Better type annotation support.
- Delay more errors for additional reporting.
 - Don't re-check expressions that were checked for inference.
 Closes PR 10098.

original commit: 638245e4c52f6bdaba7d62ac3d88a24462a09ace
2010-05-19 10:10:54 -05:00
Sam Tobin-Hochstadt
d30ba6ac02 More fixes for Vincent.
original commit: 535dc73fad6d22a5a057d18aa0ba4ff00f926810
2010-05-17 18:03:34 -04:00
Sam Tobin-Hochstadt
2776f825c2 Fix internal error detected by vincent.
original commit: 7ecf424ff88d0365da3be7af3051b0acc2cfe1ab
2010-05-17 16:06:27 -05:00
Sam Tobin-Hochstadt
7b401c4e80 Add annotation to test.
Fix default case for `vector-set!'

original commit: 21b5c25c90a323d443b9611d9c0d30d30afb7dea
2010-05-14 11:00:23 -04:00
Sam Tobin-Hochstadt
479db80e36 sensible handling of literal vectors
original commit: ff36a6e8d1595cd0ee0c495efe240ebc23707419
2010-05-14 11:00:23 -04:00
Sam Tobin-Hochstadt
6f16d9e2d6 more sensible version of het vectors.
add vector-length, vector-set!

original commit: 7ac925695fadf3c8af20b2d65037c8bc6310f9b4
2010-05-14 11:00:23 -04:00
Sam Tobin-Hochstadt
597a8151b3 fix typo
original commit: 798a7f2a3c2189f14cc99143143be86c4eb0b2b5
2010-05-14 11:00:22 -04:00
Sam Tobin-Hochstadt
a4717c49ef Fix het vec with strange expected types
original commit: f40000c9c752b79d029cf2328425c5b012c16d47
2010-05-14 11:00:22 -04:00
Sam Tobin-Hochstadt
cd0c71d923 Finish het vectors
original commit: ec14f2c0b81ee4e5052555cbdabfd0a53c821bec
2010-05-14 11:00:22 -04:00
Sam Tobin-Hochstadt
2fdcb1ef9a mostly done with heterogenous vectors
original commit: 2c03f2223b55483bc02d66946097ed17e63529f3
2010-05-14 11:00:22 -04:00
Sam Tobin-Hochstadt
bf8b4e8080 Don't generate extra filters unless they're useful.
original commit: 814c02664ee7892af26f6c0d0b8d90cbf55bdc4a
2010-05-13 13:37:24 -04:00
Sam Tobin-Hochstadt
2f061da0ea abstract even when out of bindings
original commit: a7a56ce856e4082b951be6c51d762eb19f97d5e7
2010-05-12 21:34:18 -04:00
Sam Tobin-Hochstadt
2ceba6db20 Fix typo
original commit: 264bf78559a67d49e87581944d25a9a6b0bd0150
2010-05-12 18:43:55 -04:00
Sam Tobin-Hochstadt
772abbfa81 Updates along useless paths are not errors.
original commit: 4ceda9970005b4da3b56b0e48a0d69de05e3fa54
2010-05-12 18:24:19 -04:00
Sam Tobin-Hochstadt
5fb5d7125b Allow dummy filtersets
original commit: 41f0152435e5f8ae7edefa75b1c4e965cf6349df
2010-05-12 17:31:58 -04:00
Sam Tobin-Hochstadt
620fb6182a debugging
original commit: dbe9a0f997461f209c6893479b2fe76f9c0384e0
2010-05-12 17:06:04 -04:00
Sam Tobin-Hochstadt
b0b01fa807 flatten and filters before using them
original commit: e0c82c8ac6d4400c723d2ebace2f8efadd3fd923
2010-05-12 15:10:37 -04:00
Sam Tobin-Hochstadt
2f671bdbff Fix contracts.
Handle improper formals lists.

original commit: e7c8ffb834f78bbe83033a8a1dbbfa27c829eddc
2010-05-12 11:53:27 -04:00
Sam Tobin-Hochstadt
cd4744d11b use aux function to avoid generating useless filters
original commit: c031729e4bcd46fab66ed1c3b0aa6578563126ec
2010-05-10 17:03:21 -04:00
Sam Tobin-Hochstadt
fb755e912c don't add to identifiers
original commit: 6baef71d57af67f230a0f8efb23fb2d7294f1e9c
2010-05-10 16:09:47 -04:00
Sam Tobin-Hochstadt
5912a6243a more contract fixes
original commit: 52c1f41a2036906ab6462abd5479053e2894b1ca
2010-05-10 15:50:24 -04:00
Sam Tobin-Hochstadt
bd2e4e09ad fix contract error, use the same contract for drest everywhere
original commit: d75232baa0a6076b2e16e73afcdc3fa79eb682a1
2010-05-10 15:42:45 -04:00
Sam Tobin-Hochstadt
d483be21af avoid trying to reconstruct bogus arrow type, use dummy instead
original commit: 8461045e8cfaf2dbd4fffb88eed046c44276796a
2010-05-10 15:42:23 -04:00
Sam Tobin-Hochstadt
3dfdcf9722 fix `implied-atomic?'
original commit: b1a49470eeaae287a8b2754308c476c3257434af
2010-05-10 11:51:18 -04:00
Sam Tobin-Hochstadt
80e644c20d produce the correct type
original commit: 62af50867a825aab3572a442276921b205180a3a
2010-05-05 17:50:20 -04:00
Sam Tobin-Hochstadt
9781bbfbf4 Require '#%paramz at the correct phase (thanks ryan)
original commit: 087c5129e33458acb20ee4fa9c7d07a4735c719d
2010-05-04 19:47:37 -04:00
Sam Tobin-Hochstadt
b45d2f1a0c handle full generality of extend-parameterization
original commit: 4984345657eda9736b458cf73f97996e3da1ce95
2010-05-04 19:47:37 -04:00
Sam Tobin-Hochstadt
55fb37ff16 fix problem reported by Sigrid on plt-scheme
original commit: 996405af9c5ba32c49d1051c85b573d1383e244a
2010-05-03 13:15:19 -04:00