Commit Graph

383 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
2cd7fe5499 Simplify pattern for expressions in type env.
Attempt to avoid doing local-expansion repeatedly.

svn: r17812
2010-01-25 14:46:34 +00:00
Sam Tobin-Hochstadt
5e1b355e32 Syntax for predicates with non-empty paths
svn: r17660
2010-01-14 23:17:56 +00:00
Sam Tobin-Hochstadt
1ab2a41092 Paths for first' and rest'
svn: r17654
2010-01-14 20:00:37 +00:00
Sam Tobin-Hochstadt
91629fd31a Reject some cases of nested types.
svn: r17619
2010-01-12 20:36:30 +00:00
Sam Tobin-Hochstadt
4fa4f6fd2d Propogate expected type through `reverse'.
New loop special case for `for/list'.

svn: r17609
2010-01-11 20:48:26 +00:00
Sam Tobin-Hochstadt
f13453e889 `andmap' now works as a predicate in Typed Scheme
svn: r17575
2010-01-08 19:05:58 +00:00
Sam Tobin-Hochstadt
0d46fcb48a Create new `typed/test-engine' collection.
Remove dependence of `typed-scheme' on `test-engine'.

svn: r17567
2010-01-08 15:38:17 +00:00
Sam Tobin-Hochstadt
6199fc8867 Fix error messages on malformed All.
svn: r17546
2010-01-07 20:31:23 +00:00
Sam Tobin-Hochstadt
a40d5c5569 Improve error messages.
svn: r17545
2010-01-07 20:16:05 +00:00
Sam Tobin-Hochstadt
b71b196764 More type names
Fixes PR 10646 (as it evolved)

svn: r17533
2010-01-07 16:48:05 +00:00
Sam Tobin-Hochstadt
a8e1c829c2 Fix `type-apply'
Fix duplicate filters

svn: r17522
2010-01-07 00:55:51 +00:00
Sam Tobin-Hochstadt
8b7fb01692 fix lots of numeric types
svn: r17520
2010-01-06 23:21:31 +00:00
Sam Tobin-Hochstadt
c7cb124c95 Put dynamic behavior of `check-expect' into functions.
Give those functions types.

svn: r17519
2010-01-06 23:03:08 +00:00
Sam Tobin-Hochstadt
582ca03d18 Use syntax-parse and syntax-classes for type annotation macros.
Add `let-values:' and `let*-values:', fixes PR 9793

svn: r17516
2010-01-06 22:15:18 +00:00
Sam Tobin-Hochstadt
5af212e825 Add `make-list'
Fix `let/ec:'

svn: r17340
2009-12-17 19:01:23 +00:00
Sam Tobin-Hochstadt
b9fd34b925 Fix type of string->number
svn: r17313
2009-12-15 22:03:10 +00:00
Sam Tobin-Hochstadt
22903bffcd Fix handling of logical props in `tc-if'.
New numeric hierarchy.
Quoted lists and vectors now use the expected type, and quoted lists have (List a b c) type.  
Fix some contracts.
More general handling of polymorphic function application.
Use `make-provide/contract-transformer' to generate correct blame for typed provided identifiers.
Add mutable pairs. 
Use `raise-syntax-error' for better error messages in mzscheme.
Use `match*' instead of `list'
Some fixes to appease the contract checking.
Catch-all printing cases.
Use names in Base contract generation.
Types for lots of new primitives.
Move numeric primitives to their own file.
Move indexing primites to their own abstracted file.
Better error message from `define-struct:'
Fix 'insert-large-letters.ss' for new Number hierarchy.
Add `typed/scheme' and `typed/scheme/base', which use new number hierarcy types, stricter indexing types.

svn: r17284
2009-12-13 04:45:17 +00:00
Sam Tobin-Hochstadt
a1f647121d Fix type of sqrt
svn: r17273
2009-12-11 23:08:48 +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
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
be77cee733 Fix parsing of quoted lists in types to produce list types.
svn: r17237
2009-12-07 15:50:51 +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
70f085713d PR 10647
svn: r17235
2009-12-07 13:55:36 +00:00
Sam Tobin-Hochstadt
76b10347da Support some keyword arguments in type parsing/type->contract.
svn: r17189
2009-12-05 00:48:46 +00:00
Sam Tobin-Hochstadt
e3bafbe298 checkpoint
svn: r17054
2009-11-25 02:30:41 +00:00
Sam Tobin-Hochstadt
176920530f improve error messages with `syntax-parse'
svn: r17023
2009-11-24 04:04:31 +00:00
Sam Tobin-Hochstadt
750c971d07 checkpoint
svn: r16931
2009-11-21 00:11:37 +00:00
Sam Tobin-Hochstadt
6497745560 Skip backup files in tests.
More specific numeric types.
More subtyping relationships.

svn: r16922
2009-11-20 15:20:23 +00:00
Sam Tobin-Hochstadt
485c8a3567 checkpoint
svn: r16915
2009-11-20 05:20:23 +00:00
Sam Tobin-Hochstadt
1da2c7cd7d many fixes
svn: r16913
2009-11-20 03:56:57 +00:00
Sam Tobin-Hochstadt
111b71c844 checkpoint
svn: r16908
2009-11-20 00:06:32 +00:00
Sam Tobin-Hochstadt
d28add0fa9 start on typed/scheme
svn: r16896
2009-11-19 19:47:51 +00:00
Sam Tobin-Hochstadt
25f9bcfe03 Add types for with-output-to-string, open-output-nowhere
Fix time.ss test not to print

svn: r16790
2009-11-15 22:38:30 +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
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
dcb5f5cfb1 Types for all functions documented in reference/vector.scrbl
Fix docs for vector-arg{min,max}.

svn: r16602
2009-11-07 07:11:00 +00:00
Sam Tobin-Hochstadt
a5849fb05a Better error message for inference with keywords.
Do inference when loop is unannotated, even when argument are.
Don't infer for ((lambda when vars are annotated.
Make promise contracts work.
Fix types of min, max, port->lines, subbytes,  bytes-length, bytes, bytes-ref

svn: r16397
2009-10-21 13:30:03 +00:00
Sam Tobin-Hochstadt
37106bd6f7 Add `typed/scheme/system'
Special handling of (letrec ([x e]) x)
Allow functions with optional keyword args to be inferred when kws not supplied.
Infer instantiations for kw functions in simple cases.
Add `Path-String' type
Fix types of `filter', `with-{input-to,output-from}-file'
Add `port->lines'
New 'metrics.ss' test

svn: r16385
2009-10-20 18:30:37 +00:00
Sam Tobin-Hochstadt
6a83901a8b Don't error for branches with wrong number of results where return type is Bot.
Allow case-lambda to be subtype of equiv union type.
Add types for path?, fold-files, assert

svn: r16357
2009-10-18 01:10:00 +00:00
Sam Tobin-Hochstadt
96f664354d Elimintate printing of complex filters.
Allow parsing of ...* and ...a
Parameter for printing ...* and ...a

svn: r16225
2009-10-02 20:41:56 +00:00
Eli Barzilay
cee0e5f326 fix optional argument to number<->string functions
svn: r16123
2009-09-24 15:26:13 +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
5fc019ba6c Remove last uses of stxclass.
svn: r15976
2009-09-11 17:49:50 +00:00
Sam Tobin-Hochstadt
bc25b75eb3 Make type keywords show check syntax info
svn: r15925
2009-09-08 20:16:48 +00:00
Sam Tobin-Hochstadt
4907d266df Move parse-type2 to parse-type.
Re-enable typed-scheme tests automatically.

svn: r15924
2009-09-08 20:02:03 +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
b3dde2ca7f Handle type ascription and type instantiation better with expected type.
Add remove-ascription
Identify incorrect element of wrongly typed list.
Use function argument types as expected types.
Allow multiple uses of orig-module-stx, older one takes precedence.

svn: r15857
2009-09-01 22:25:35 +00:00