Commit Graph

65 Commits

Author SHA1 Message Date
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
c24daa5dbb Add `define-predicate'
svn: r18497
2010-03-10 00:10:03 +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
Sam Tobin-Hochstadt
2e90dfc081 Re-enable typechecking of auto-language.ss
Add `syntax-e' as a path.
Turn on contracts for objects.
Refactor Noel's additions.
Fix `require/typed' at the REPL.

svn: r18345
2010-02-26 00:25:23 +00:00
Sam Tobin-Hochstadt
33c18b3985 providing static struct information to untyped code works
svn: r18198
2010-02-19 23:27:06 +00:00
Sam Tobin-Hochstadt
1039e68e03 New representation for free variables, now stored in struct.
Interning now merely used to create key, eq? not = for types.

svn: r18107
2010-02-17 00:09:38 +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
318833f422 Add supertypes for mutable types, so that predicates work correctly.
svn: r17971
2010-02-04 23:39:15 +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
791ec55787 fixes
svn: r17265
2009-12-11 00:25:59 +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
cd0a94d465 sync to trunk
svn: r17249
2009-12-09 19:44:12 +00:00
Sam Tobin-Hochstadt
eae4c140fa conversion to contracts for optional keywords
svn: r17236
2009-12-07 15:34:54 +00:00
Sam Tobin-Hochstadt
e3bafbe298 checkpoint
svn: r17054
2009-11-25 02:30:41 +00:00
Sam Tobin-Hochstadt
750c971d07 checkpoint
svn: r16931
2009-11-21 00:11:37 +00:00
Sam Tobin-Hochstadt
0ae5843f11 Add unstable/match with == match expander.
Add 'match expander' tech def.

svn: r16814
2009-11-16 16:58:11 +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
Eli Barzilay
44d88cee6b newlines at EOFs
svn: r16630
2009-11-09 03:49:50 +00:00
Ryan Culpepper
7483b7ed20 unstable:
added struct and syntax libraries

svn: r16621
2009-11-08 19:20:53 +00:00
Ryan Culpepper
987ab4c5e8 removed old stxclass collection
Please apply to release branch.

svn: r16047
2009-09-17 16:11:20 +00:00
Sam Tobin-Hochstadt
ed65dacdcd fix uses of syntax-parse attributes
svn: r15984
2009-09-11 22:49:56 +00:00
Sam Tobin-Hochstadt
417b9d16e0 use splicing-syntax-class
svn: r15981
2009-09-11 21:17:42 +00:00
Sam Tobin-Hochstadt
8001ab7fb0 Simplify a syntax class
svn: r15977
2009-09-11 19:19:41 +00:00
Sam Tobin-Hochstadt
eda69b472a Remove almost all uses of `stxclass' library.
svn: r15944
2009-09-09 21:24:05 +00:00
Sam Tobin-Hochstadt
63d318fd4b New type parser, written using syntax/parse.
- uses keywords with bindings
 - : macro in separate file so it can be used earlier
 - internal function in separate file
FilterSet/c and LatentFilterSet/c contracts
Avoid returning #f when `look-for-in-orig' fails
Add type for unsafe-cdr

svn: r15923
2009-09-08 19:51:34 +00:00
Sam Tobin-Hochstadt
5b79cd7c0c Use let/ec instead of let/cc
let/ec: and let/cc:
type for call-with-current-continuation
Start on ImpFilters

svn: r15220
2009-06-19 18:01:33 +00:00
Sam Tobin-Hochstadt
7b82069fa0 Add NoFilter and NoObject to represent no information about filter/object.
Handle these properly in check-below (with test).
Use NoFilter and NoObject to make if typechecking work properly with filters.
Reject mismatched filters/objects (with test).

New version of require/typed that handles opaque and struct requires.
Reorganize docs around this.

svn: r15155
2009-06-12 19:04:39 +00:00
Sam Tobin-Hochstadt
7d239a4dfa Instances can have any Type as their class.
Fix some handling of tc-results as pertains to classes.
Bottom is an ok Class.

svn: r14938
2009-05-22 21:41:12 +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
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
5300481176 Move `hashof' contract combinator to utils/utils.ss
Fix frees for arr to use `fix-bounds' properly.
Match : symbolically in ->*

svn: r14786
2009-05-12 19:53:48 +00:00
Sam Tobin-Hochstadt
dbe5556b45 Add missing file.
Fix bug in struct type creation.
Add ability to disable printing dynamically.
Fix recursion into objects & paths.

svn: r14747
2009-05-08 19:00:07 +00:00
Sam Tobin-Hochstadt
c5b4ac4f21 Rename id to mk-id to avoid name clashes.
Start on new tc-app as copy.

svn: r14660
2009-04-29 19:52:53 +00:00
Sam Tobin-Hochstadt
1edf62a912 resolve conflicts
svn: r14598
2009-04-24 21:21:06 +00:00
Sam Tobin-Hochstadt
c51dd1e8b0 new version of abstract-filters that handles multiple values/arguments properly
strengthen contracts
improve match expanders

svn: r14057
2009-03-11 19:11:50 +00:00
Sam Tobin-Hochstadt
6c30e2d9e7 Remove some old debugging printfs in soon-to-be-dead code.
Fix some requires.
Start implementing metafunctions.
Strengthen contracts on filter-sets.
Rename N B Sym.

svn: r13988
2009-03-06 19:50:42 +00:00
Sam Tobin-Hochstadt
9d0ee637c7 Fix name of Type/c
Fix fold on Result.
Add comments.
New -struct constructor with opt args.
Fix tests to agree with contracts.

svn: r13934
2009-03-03 23:18:00 +00:00
Sam Tobin-Hochstadt
af3449cf56 more file moving
svn: r13797
2009-02-23 03:02:00 +00:00
Sam Tobin-Hochstadt
0343ae06f3 Remove macro-debugger require.
Use `this-syntax'
More contract renamers
Finish type-abbrev.ss

svn: r13785
2009-02-21 23:55:32 +00:00
Sam Tobin-Hochstadt
b57c78e0a4 finished implementing printing
svn: r13779
2009-02-21 18:31:23 +00:00
Sam Tobin-Hochstadt
b14da998bf rename printer file
svn: r13778
2009-02-21 18:08:11 +00:00
Sam Tobin-Hochstadt
85de5f27bf checkpoint
svn: r13777
2009-02-21 18:07:07 +00:00
Sam Tobin-Hochstadt
70e174c0e1 Type rep compiles
svn: r13768
2009-02-21 15:23:42 +00:00
Sam Tobin-Hochstadt
0edfd7f31f Finished new representation defs and folding.
New definition of `define-requirer' that doesn't use lib requires.
New `defprinter' syntax.

svn: r13755
2009-02-20 23:35:02 +00:00
Sam Tobin-Hochstadt
428e7c471b checkpoint
svn: r13749
2009-02-19 21:28:41 +00:00
Sam Tobin-Hochstadt
72ff13bea9 new function representation
svn: r13744
2009-02-19 17:39:19 +00:00
Sam Tobin-Hochstadt
e5e0adb499 checkpoint again
svn: r13735
2009-02-19 01:39:11 +00:00
Sam Tobin-Hochstadt
26fe69d9a7 fix some strange stxclass strangeness
svn: r13722
2009-02-18 04:31:28 +00:00
Sam Tobin-Hochstadt
c0861fd39b checkpoint again
svn: r13718
2009-02-18 02:58:47 +00:00