Commit Graph

1657 Commits

Author SHA1 Message Date
Vincent St-Amour
aa2132e024 Bytes are a sequence of the new Byte type.
original commit: 46f086282d7302e7e015109c9f945a92350e384c
2011-01-31 16:39:15 -05:00
Vincent St-Amour
8542bc4073 Edit TR's optimizer's docs to reflect that Float-Complex is the only
complex type that can be optimized.

original commit: 5dbc752542ec6dec03fb4060ecff16a8cfb5a095
2011-01-31 16:39:15 -05:00
Vincent St-Amour
f6590e9db2 Fix optimizer to work with new types.
original commit: 768bb6336142726023bfe2029b5aa25728bda0a3
2011-01-31 16:39:14 -05:00
Vincent St-Amour
956a1533c8 Fix TR tests.
original commit: a0a54b231db5c81e9ab66302399b6adc660b701f
2011-01-31 16:39:14 -05:00
Vincent St-Amour
3d6b5893ba 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.

original commit: e56663c943fe4ae355b6d626d3c84b6ec8ea7fd1
2011-01-31 16:39:13 -05:00
Vincent St-Amour
881a3d31e7 Avoid generating large contracts for common numeric types.
original commit: 3e27ed607c983bd26d3ccf0c98f4504b86b1642d
2011-01-31 16:39:13 -05:00
Vincent St-Amour
d5941cb2d6 TR's numeric tower is now built from unions of non-overlapping base types.
A lot of the work that was done by special-casing number types can now be
done by TR's handling of unions. This makes it easier to add more numeric
types to the tower and should make writing down types for numeric
primitives much less error-prone.

In addition, this commit adds several numeric types that will help get
tighter bounds on integer arithmetic, such as Index types. They will have
to be integrated to the base environment before they can be useful.

original commit: d4c93cc12e6df893ba2e782f0e0ea5529738315a
2011-01-31 16:39:13 -05:00
Vincent St-Amour
ddd166c799 Make bare union constructor smarter.
original commit: 78c4809177e6781a42dd29dd9b0bb96c77fa0e01
2011-01-31 16:39:12 -05:00
Vincent St-Amour
6473431d0d Documented opt-lambda: and popt-lambda:.
original commit: 4b3e621d0ff54671befe96bff3c49109128e8861
2011-01-31 16:39:12 -05:00
Vincent St-Amour
6a0aa26fde Fix nightly running of TR tests.
original commit: 36ae5a9d50883395e521ead9abdcfe0321bf7943
2011-01-27 16:49:45 -05:00
Vincent St-Amour
b13ebb0924 Generalize hash table literals and subtypes of symbol.
Closes PR 11670.

original commit: 2bd0145603f411e01ce6e16bfcf6ffc842b6801a
2011-01-26 14:23:19 -05:00
Eli Barzilay
f71157285c Abstract the initialization stuff into a separate function.
Make it available outside so in the future I can use it in the PL class
code.

original commit: 5998ecc56430c34cabb13519a92fe755eff145cd
2011-01-14 08:35:55 -05:00
Vincent St-Amour
9f19fceabb Fix portable-fixnum?.
original commit: 7808be5e20c022799d16d3a7044dc1e17dd04898
2011-01-12 14:20:29 -05:00
Vincent St-Amour
6d105153f1 Fix portable fixnum size.
original commit: cb723092e26f980600df3d66c54321da28b0490e
2011-01-05 14:42:31 -05:00
Sam Tobin-Hochstadt
d2424d72fa Fix TR tests for new contract error messages.
original commit: 2431f8f70646e00d3c65ef6d9d00fc75459d3ff0
2010-12-29 13:46:57 -05:00
Sam Tobin-Hochstadt
84a3802952 Document ordering in `case-lambda' types.
Closes PR 11394.

original commit: 25d2827d0dbf25e797c20aa6ec24cd3b7794554d
2010-12-13 07:26:31 -05:00
Carl Eastlund
034c06a30e New test case for formatting bug in TR error messages.
original commit: 5b18305e11b1f2bcba0e6d6e4ebfd7d51fb6ccba
2010-12-10 17:26:17 -05:00
Vincent St-Amour
ee11638bc6 Scheme -> Racket
original commit: 740b8308d7d52c1b4b9f00282d1b1c5187cd81e3
2010-12-10 17:17:02 -05:00
Vincent St-Amour
432b1040dc Update TR tests to reflect new contract error messages.
original commit: 09ffb7049288731040aa33c41b5c13952d9ab285
2010-12-10 16:59:13 -05:00
Vincent St-Amour
73046316e6 Allow running individual TR tests.
original commit: b9d67eea2f08e5eed8a5d28539aa749e2a64f790
2010-12-10 16:59:12 -05:00
Vincent St-Amour
8e569511e8 Fix double application of format.
Closes PR 11524.

original commit: f8c01299f971c65509877e22feaaa4f2ccb79227
2010-12-10 16:59:12 -05:00
Vincent St-Amour
a00e498399 Error when running TR's test harness with no tests.
original commit: 407d9b5f0792ff94438a7e5f5448f54dddb8f7d9
2010-12-10 13:44:47 -05:00
Vincent St-Amour
a650c59fb3 Test for errors in rhs.
original commit: 365d2726660ab9342f229789f268e2461cdd2063
2010-12-08 20:32:20 -05:00
Vincent St-Amour
f4a1a31f61 Typecheck body of letrec using original types instead of potentially undefined type.
original commit: 81ef5f9418b0011daa980d438c0eed451b37d578
2010-12-08 20:32:20 -05:00
Vincent St-Amour
0ccef7d4bc Error if we get a type that may be undefined and we don't expect it.
original commit: 53719600d8de6c504c126a316eb87deb2c49ebdd
2010-12-08 20:32:20 -05:00
Vincent St-Amour
2865f2801f letrec: consider outside bindings safe.
original commit: b045153177afe8aaebdbf179dbe27670b1cf577d
2010-12-08 20:32:19 -05:00
Sam Tobin-Hochstadt
bcb395b986 Fix type of `-'
original commit: 463ab0d30943f5453eaac16e1d966dd9dae093eb
2010-12-08 19:31:57 -05:00
Sam Tobin-Hochstadt
eacda65291 Add `defined?' assertions to fix DrRacket.
original commit: e70ccafd7b591df218a1ae036f599c671eb57824
2010-12-08 18:53:56 -05:00
Sam Tobin-Hochstadt
1527fba4b3 Allow arbitrary filter specification in function types.
Allow (A -> B -> C) for curried function types.

original commit: 87eab889d68dd46bfd5b0f4d79942bc104cb3da2
2010-12-08 18:22:29 -05:00
Sam Tobin-Hochstadt
05e1489dfb Better handling of `hash-*' functions, and hashes as sequences.
original commit: 73dbf42e0e6fb750d871060d6ed34adf6e207eec
2010-12-08 18:22:29 -05:00
Vincent St-Amour
5acfe5b67d Take into account potentially undefined values in letrec.
Closes PR11511.

original commit: dc2df4882b6abca46839ace724924df5ab0d7707
2010-12-08 18:17:06 -05:00
Vincent St-Amour
dc0473f67f map + syntax->list -> syntax-map
original commit: 33581fd67e26e5cc21acac50b5380087e8e9c8b8
2010-12-08 18:17:05 -05:00
Matthew Flatt
f844b4ed00 move Typed Racket manuals to the Languages section
original commit: 94e2d46a8eea69ea3705c3747152e9c578d0fff2
2010-11-27 19:01:17 -07:00
Vincent St-Amour
d7a8f14636 Fix type for abs. Closes PR 11430.
original commit: e7c252739ddab37973cf3c013660d6c2244c44b8
2010-11-23 14:15:04 -05:00
Vincent St-Amour
26a2fd0163 Add type for fl->exact-integer. Closes PR 11429.
original commit: 54991835d603a81ddaee6845e4930bfe0ab9de24
2010-11-23 14:15:04 -05:00
Vincent St-Amour
8d3499453f Fix type for arithmetic-shift. Closes PR 11428.
original commit: 58d1f75dc1b1e2d9c17427641fa6f295aec96706
2010-11-23 14:15:03 -05:00
Vincent St-Amour
67eb57c526 Add type for integer-sqrt. Closes PR 11427.
original commit: 7a7fe577cd464c80b4b344aef4a072c25c7652fa
2010-11-23 14:15:03 -05:00
Vincent St-Amour
b9303a1f4b Fix type for raise-type-error. Closes PR 11426.
original commit: e10f139ad82748ee5d6b959c1f6225886b41084d
2010-11-23 14:15:03 -05:00
Vincent St-Amour
44e1994364 More precise type for sgn. Closes PR 11424.
original commit: 2c74984fcd442fd73802244801946e2d4dd8ba8c
2010-11-23 14:15:02 -05:00
Eli Barzilay
46cbe83ff3 Clarify comment re `fixnum?' non-use at the syntax level, and add a note
to the `fixnum?' documentation.

original commit: 9a485064ed81366579f2a5c7cebf591de7e07be2
2010-11-05 01:48:23 -04:00
Vincent St-Amour
9c5a1e0086 Fixed a fixnum typechecking issue.
original commit: 4c081c127ab91067c3a69568175d7274b090f986
2010-11-04 17:27:34 -04:00
Vincent St-Amour
26aafa3ea6 Fixed potential danger with fixnum optimizations.
original commit: c0a6137c67228933ad94d88409ffd86e30e922ae
2010-11-04 15:35:21 -04:00
Vincent St-Amour
b5d29776df Add optional argument to make-hash and co.
original commit: c633913b9484c623ca6e56c7b485613c9d60716b
2010-10-27 16:15:50 -04:00
Sam Tobin-Hochstadt
db3c6bbbe0 Avoid dumb parsing bugs in require/typed.
original commit: 561fdc8db580c828a45dc27c4ca61b21dccad311
2010-10-26 18:09:45 -04:00
Matthew Flatt
28406c5093 swap vector*-ref' and vector-ref', etc.
Merge to 5.0.2

original commit: 5d8e000d6d37cb9a032f4bcf4d82c63d8e51bae1
2010-10-25 11:22:35 -06:00
Vincent St-Amour
9b5a5a6bb5 Fix opt-lambda:. Merge to 5.0.2.
original commit: a15236ea4f1ba84c9351632e9469e1cd34b5375b
2010-10-20 14:32:37 -04:00
Vincent St-Amour
4a6b3b2b57 Removed logging when no optimization actually happens.
original commit: 12a5454b147468df59e92cb7057e0e9515ad5abd
2010-10-14 14:13:06 -04:00
Sam Tobin-Hochstadt
f0fad4383a Add type for `compose'
original commit: 24bddafa82e28a3eee675c1ad99ae1dcde59d46a
2010-10-14 11:44:14 -04:00
Vincent St-Amour
759a3707c8 Fixed a test to reflect implicit let in cond instead of implicit begin.
original commit: 3f5ea8a5be1da62f4766585f891e7c5340c52588
2010-10-14 10:53:43 -04:00
Vincent St-Amour
1a4e176824 Inexact-Complex -> Float-Complex
original commit: 27e722f27b673cbfcee60aaba75dfdcab7e396c5
2010-10-12 16:47:46 -04:00