Commit Graph

64 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
e7beef3f4f Remove unused macro.
Convert function to macro for inlining.
2011-04-20 09:41:42 -04:00
David Van Horn
760a58b65d Fixes more spelling errors. 2011-02-04 19:44:13 -07:00
Vincent St-Amour
e56663c943 Add a predicate field to base types, which makes checking for
subtyping of value types easier.

However, this means that base types can't be marshaled as before,
since these predicates can't be marshaled. Instead, we now marshal
base types as identifiers that refer to their base type object.
2011-01-31 16:39:13 -05:00
Sam Tobin-Hochstadt
b6b840076b Lots more laziness, and useless require removal. 2010-09-09 16:08:03 -04:00
Eli Barzilay
8e0f8dd39c More "~n" -> "\n" changes 2010-08-26 12:11:00 -04:00
Sam Tobin-Hochstadt
510c80b700 Better printing for environments. 2010-08-18 16:37:32 -04:00
Sam Tobin-Hochstadt
d030d0631d Fix missing unquote 2010-07-09 13:52:39 -04:00
Sam Tobin-Hochstadt
c01b239779 Refactor struct type representation.
- fields now represented by fld struct.
 - mutability on per-field basis
 - accessors are per field

This fixes lots of existing bugs, allows future #:mutable on fields.
2010-06-29 17:33:36 -04:00
Sam Tobin-Hochstadt
12384c6c3f Change type variable environments from hash tables to sets. 2010-06-21 18:29:59 -04:00
Sam Tobin-Hochstadt
d570006db8 Add index-env.
- Remove Dotted and DottedBoth values from tvar-env
 - Abstract env extension and lookup for tvar/index-env
 - Abstract index inference
 - Remove pointless parameterizations
2010-06-21 18:29:58 -04:00
Sam Tobin-Hochstadt
a9c34dae6a Remove dotted-env. 2010-06-21 18:29:58 -04:00
Sam Tobin-Hochstadt
50f93b9ed7 More environment refactoring.
- rationalize naming of files
- split files by env constructed
2010-06-21 18:29:55 -04:00
Sam Tobin-Hochstadt
7e9763cf14 Stratify environments to only include props when needed. 2010-06-21 18:29:54 -04:00
Sam Tobin-Hochstadt
647c4eef59 Refactor environments.
- mapping stored as dict
 - use id tables for identifiers
 - use env-filter instead of filter
 - eliminate spurious use of conses
2010-06-21 18:29:54 -04:00
Sam Tobin-Hochstadt
4925e7e51f Refactor provide handling.
- use id-tables instead of lists
 - smarter iteration
 - prepare for eliminating declarations when not needed, but don't do it yet
2010-06-21 15:42:52 -04:00
Sam Tobin-Hochstadt
0379e534e3 New interface for unstable/mutated-vars
- functional hash tables
 - fix clients
2010-06-10 13:28:29 -04:00
Sam Tobin-Hochstadt
638245e4c5 Better type annotation support.
- Delay more errors for additional reporting.
 - Don't re-check expressions that were checked for inference.
 Closes PR 10098.
2010-05-19 10:10:54 -05:00
Sam Tobin-Hochstadt
459a675b90 rename to rkt 2010-04-30 09:51:32 -04:00
Sam Tobin-Hochstadt
04f58cab86 Merge remote branch 'origin/master' into samth/new-logic2
Conflicts:
	collects/drscheme/private/insert-large-letters.ss
	collects/tests/typed-scheme/unit-tests/typecheck-tests.ss
2010-04-30 09:34:31 -04:00
Sam Tobin-Hochstadt
27b0c01cdd Split filter operations into their own file.
Take into account the type of arguments in filter generation.
2010-04-27 19:12:06 -04:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Sam Tobin-Hochstadt
f7bf6d8a22 more progress towards let 2010-04-23 18:36:15 -04:00
Sam Tobin-Hochstadt
788630d26a progress towards let 2010-04-23 16:40:05 -04:00
Sam Tobin-Hochstadt
5b5a6980d5 annotated eta works 2010-04-21 14:57:05 -04:00
Sam Tobin-Hochstadt
f57ef37a66 Everything now compiles without names 2010-04-19 18:42:25 -04:00
Sam Tobin-Hochstadt
fca1044972 Merge branch 'master' into samth/new-logic2 2010-04-19 16:14:11 -04:00
Sam Tobin-Hochstadt
41e469d7ae Update structure types to have constructor ids.
Use constructor to generate better contracts for poly structs.
2010-04-14 15:06:14 -04:00
Sam Tobin-Hochstadt
d4e0c16d55 a new branch of the whole tree
svn: r18648
2010-03-27 14:49:58 +00:00
Sam Tobin-Hochstadt
78c14e434b Add `with-type' for defintions, add #:result keyword.
Fix contract for top-arr.
Remove static version of printing conditional.
Fix brokenness in print-converting.

svn: r18416
2010-03-01 22:31:24 +00:00
Stevie Strickland
8e3a67936e Add `unregister-type'
Add type regions.
Untyped lexical vars not an internal error.

svn: r18374
2010-02-27 01:26:16 +00:00
Sam Tobin-Hochstadt
90c8fcff11 Generate proper contracts for polymorphic struct types.
Document `Nothing'.

svn: r18074
2010-02-12 21:57:58 +00:00
Sam Tobin-Hochstadt
39a8c288ec Better error message when definition is missing. Fixes PR 10751.
svn: r18042
2010-02-10 20:32:53 +00:00
Sam Tobin-Hochstadt
62653d3c41 Error on duplicate type annotations.
svn: r17549
2010-01-07 21:20:45 +00:00
Sam Tobin-Hochstadt
d0c8a19ce8 Fix abstraction of implications.
Fix contract for lookup-typed/lexical.
Default cases for printing.
Abstract out indexing functions for Nat/Integer split.

svn: r17272
2009-12-11 23:00:37 +00:00
Sam Tobin-Hochstadt
92dbf99965 logic works properly now, it seems
svn: r17264
2009-12-10 23:35:28 +00:00
Sam Tobin-Hochstadt
16c152e5a4 revert all of the interning changes since they didn't work
svn: r17262
2009-12-10 17:15:17 +00:00
Sam Tobin-Hochstadt
e3bafbe298 checkpoint
svn: r17054
2009-11-25 02:30:41 +00:00
Sam Tobin-Hochstadt
fb29a2498e Move a bunch of functions from typed-scheme/utils/utils to unstable.
Add convenience lib for unstable docs.
Add char support to format-{id,symbol}
Add unstable/sequence library.

svn: r16789
2009-11-15 22:15:29 +00:00
Sam Tobin-Hochstadt
99a70b38d8 Move mutated-vars and poly-c libraries to unstable collection.
- add docs
 - change requires
 - fix `letrec-syntaxes+values'
Fix contract on `author+email'

svn: r16628
2009-11-09 02:29:02 +00:00
Sam Tobin-Hochstadt
6af7d32709 fix 9967
svn: r15720
2009-08-12 21:52:21 +00:00
Eli Barzilay
a70bf64fd9 Newlines at EOFs
svn: r15380
2009-07-04 02:28:31 +00:00
Sam Tobin-Hochstadt
19c4aa6ba4 Sort unions on re-construction to make contract happy.
Use resolve-once more.
Improve `overlap', in particular use keys.
Resolve names and apps before doing structure comparison.

svn: r14884
2009-05-20 18:35:59 +00:00
Sam Tobin-Hochstadt
ef095c931a Make env struct transparent.
svn: r14857
2009-05-18 22:17:32 +00:00
Sam Tobin-Hochstadt
1047f7625d Handle ValuesDots in check-below.
Fix typo in valuesdots handling in values->tc-results
Handle ValuesDots in do-ret.
Don't try to construct silly wrappers for `apply values'
Don't use rest as list extension if it's #f
Fix tc-result handling for check-subforms/check
Add stronger contracts for Scope
Always generate substitution for infer/dots.
Fix type of `time-apply'

svn: r14815
2009-05-14 18:57:02 +00:00
Sam Tobin-Hochstadt
f349525244 Contracts for lexical-env
Fix type of quotient/remainer function

svn: r14792
2009-05-12 21:51:01 +00:00
Sam Tobin-Hochstadt
07341c605b Remove `make-arr/values'
Accessors now have appropriate latent objects
Handle function application for unions, error, mu, parameters

svn: r14724
2009-05-05 23:03:02 +00:00
Sam Tobin-Hochstadt
6662b72162 Fix reconstruction of Latents, which do not have keys.
svn: r14652
2009-04-29 14:35:52 +00:00
Sam Tobin-Hochstadt
af7b966c82 more contracts
more fixes

svn: r14632
2009-04-27 21:58:35 +00:00
Sam Tobin-Hochstadt
f2bffcabab Sync to trunk again.
Fix require/contract.
Subtyping, printing for refinements.

svn: r14626
2009-04-27 18:26:00 +00:00
Sam Tobin-Hochstadt
8cbdf3ee95 compiles again
svn: r14625
2009-04-27 16:06:54 +00:00