Vincent St-Amour
e24955b66a
Add set types to TR.
...
Original patch by Eric Dobson.
original commit: 632e36f751ea454874548cdb62d6cb73694c773d
2011-04-28 18:22:39 -04:00
Vincent St-Amour
64b062cb6f
No need for EphemeronTop since ephemerons are covariant.
...
Closes PR 11633.
original commit: 9740d5542b1cd0046ebdbb1c28ba73ea66025366
2011-04-26 15:35:22 -04:00
Eric Dobson
b22c8c9c24
Beginning of ephemeron patch
...
original commit: 80fa8d3c9799ece292b764f69d10377a34d5495d
2011-04-26 15:35:22 -04:00
Sam Tobin-Hochstadt
172d85f97d
Add type keys for Struct and StructTop.
...
original commit: fe60793b4de78f80e0f12605e9853b6ab6638a6d
2011-04-20 09:41:42 -04:00
Sam Tobin-Hochstadt
403354ad49
Remove useless requires.
...
original commit: 51083dbce6bc66305a7d3809097bdaba07c78313
2011-04-20 09:41:42 -04:00
Ryan Culpepper
332517bc27
created racket/syntax from parts of unstable/syntax
...
original commit: 73ab1675222761363f6633061bc1156189f4ba59
2011-04-07 09:47:20 -06: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
Sam Tobin-Hochstadt
05e1489dfb
Better handling of `hash-*' functions, and hashes as sequences.
...
original commit: 73dbf42e0e6fb750d871060d6ed34adf6e207eec
2010-12-08 18:22:29 -05:00
Sam Tobin-Hochstadt
21eb1eeadc
Remove outdated comment.
...
original commit: a45ce954d798f178cfd17f556f84d55dead2d460
2010-10-07 10:18:06 -04:00
Sam Tobin-Hochstadt
70a3eb6153
Fix for new ->i syntax.
...
original commit: d1835175d7cc0cab1bc717b052c1d080e7f443f3
2010-09-10 18:38:02 -04:00
Sam Tobin-Hochstadt
63f6827622
Fix `hash-name' to avoid collisions.
...
original commit: eea479b34a2014f259f59098a38aa33ba0ee1971
2010-09-09 16:08:04 -04:00
Sam Tobin-Hochstadt
e717d29b74
Lots more laziness, and useless require removal.
...
original commit: b6b840076b275d653843400f18259bf7f67c7a53
2010-09-09 16:08:03 -04:00
Robby Findler
780c2159b8
changed the ->d contracts to ->i contracts
...
original commit: d419e8c12a554d660a65198dd102bc03e01c93a8
2010-09-09 14:21:35 -05:00
Sam Tobin-Hochstadt
7efb07a4b0
Add Futureof' type, types for
future' and `touch'
...
original commit: b08de170bc616d2217c6fde3dff8c3f1b042eb3b
2010-08-25 10:27:07 -04:00
Sam Tobin-Hochstadt
f9b3146577
Fix variance of hash tables and parameters
...
original commit: 6e489f8464d2bc60e64a03e3c618e8ebf7561129
2010-08-13 11:06:56 -04:00
Ryan Culpepper
f3054a84c0
Added uses of unstable/struct
...
original commit: 07f57aac9b3f52552397bd53597de192ff62fbbc
2010-07-13 12:07:47 -06:00
Robby Findler
7477ced0dc
rewrote an ->d contract so that it would work with a let*-style scoping
...
original commit: 41cfcbe862d48722d0efef76d08b14b0ec428498
2010-07-10 10:01:25 -05:00
Sam Tobin-Hochstadt
d3be8100a0
add variance helper functions
...
original commit: a84796d8d7c7696ee635308ebf173c375466ebb3
2010-07-09 13:52:39 -04:00
Sam Tobin-Hochstadt
ac2e4153b0
add `make-constant'
...
original commit: c6fb95d44d2869baa2f53f3f8dba04b19620da81
2010-07-09 13:52:39 -04:00
Sam Tobin-Hochstadt
887f054a55
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.
original commit: c01b2397796cce0ade2ed7515ffe33c9eb338c4f
2010-06-29 17:33:36 -04:00
Sam Tobin-Hochstadt
c898d882c6
recreate selector table automatically.
...
original commit: a33f460b2547866d492bf01c81ded9b2a669ea26
2010-06-24 16:48:10 -04:00
Sam Tobin-Hochstadt
7f6da53efa
Use the correct field numbers in substructs.
...
Maintain table of struct accessors/mutators.
original commit: 3c8952d63d2cd28a3b5a588c0367b53dc963308b
2010-06-24 14:53:38 -04:00
Sam Tobin-Hochstadt
c10334cfb0
More progress on refactoring infer
...
original commit: 82e7d281cb028e9d2e5c57a9a8c01b4d4e18275a
2010-06-21 18:30:25 -04:00
Sam Tobin-Hochstadt
9b93ec46d3
Fix free index computation when the body refers to the bound.
...
original commit: e8a591d2915c54fdf5b674d9859b7ebc7b13dd73
2010-06-21 18:30:24 -04:00
Sam Tobin-Hochstadt
0d7111128c
Refactor free variables.
...
- free-idxs no longer holds free de Bruijn indexes
This information is not needed, and not stored anywhere
- free-idxs holds free *index* variables, in the sense of the TOPLAS submission
original commit: 662f982b724e7194f5729a9894fc642f06e7910f
2010-06-21 18:30:24 -04:00
Sam Tobin-Hochstadt
d37f9f7d54
Switch to using functional hash tables for free variables.
...
original commit: b787c7766c3cac9a5054d6a76ec5de1a78a540c2
2010-06-21 18:30:23 -04:00
Sam Tobin-Hochstadt
72f1d63d90
Properly compute Dotted variance for ListDots and ValuesDots.
...
original commit: 0fb1ac66bd03748767a30c41ec69207b9349e1bf
2010-06-21 18:29:58 -04:00
Sam Tobin-Hochstadt
54a57ab177
First attempts at adding ListDots (and, incidentally, List*) types.
...
original commit: 40dbb6389cd22c6f6dff42a20bdf23e32b2ba0d2
2010-06-21 18:29:55 -04:00
Sam Tobin-Hochstadt
8088618596
Fix contract for structs
...
original commit: 02238a7c6d713e9e210ab9efee994eb98c843284
2010-06-17 15:26:13 -04:00
Vincent St-Amour
ce236fdf46
Added Channel types.
...
original commit: ec799fb208197df8b2f4cafc0b0af3aad423871a
2010-06-09 14:54:35 -04:00
Sam Tobin-Hochstadt
e16c33e1a6
Sequenceof type.
...
- inferencing and subtyping relation with vectors, lists, etc
- use in `make-sequence'
- add tests
original commit: 78023d08f99bd423a17e532b6ff9b1ded758b658
2010-06-09 11:03:12 -04:00
Sam Tobin-Hochstadt
b656915497
Improve verbose printer.
...
- Fewer newlines.
- Avoid printing hidden fields.
original commit: fac0e197cfe75a4a811b0d953674731e8be14e7b
2010-05-24 13:23:37 -07:00
Sam Tobin-Hochstadt
2fdcb1ef9a
mostly done with heterogenous vectors
...
original commit: 2c03f2223b55483bc02d66946097ed17e63529f3
2010-05-14 11:00:22 -04:00
Sam Tobin-Hochstadt
136f0942bd
Descend into path elements.
...
original commit: 6f7e88cfef024c4207d8187c0c9c2a4d0da19875
2010-05-12 17:04:43 -04:00
Sam Tobin-Hochstadt
2addf717a0
rename to rkt
...
original commit: 459a675b90443b59e46bccae476a6f040fa8434d
2010-04-30 09:51:32 -04:00
Matthew Flatt
94184a7671
rename all files .ss -> .rkt
...
original commit: 28b404307793f041bb3363135a2968e283855318
2010-04-27 16:50:15 -06:00
Sam Tobin-Hochstadt
95dfc50d12
fix the fold for Class types
...
original commit: 826eeab7cb2fb738da9b56a8dd02010dc5174e53
2010-04-27 11:39:15 -04:00
Sam Tobin-Hochstadt
8f93f965fc
use the provide infrastructure for arr
...
original commit: 613f02a26637b4658715f8873a195979ec42f3a6
2010-04-20 12:38:00 -04:00
Sam Tobin-Hochstadt
017accf104
Everything now compiles without names
...
original commit: f57ef37a6657ac43848ae09ac20fedbec438db93
2010-04-19 18:42:25 -04:00
Sam Tobin-Hochstadt
b797c59d21
start removing names
...
original commit: df1572231ea34907db23f7c930a19bea7e4e6249
2010-04-19 17:52:10 -04:00
Sam Tobin-Hochstadt
6890aab175
Update structure types to have constructor ids.
...
Use constructor to generate better contracts for poly structs.
original commit: 41e469d7aefd9aab480594caaba62dd7019ec0fd
2010-04-14 15:06:14 -04:00
Sam Tobin-Hochstadt
af7254875a
a new branch of the whole tree
...
svn: r18648
original commit: d4e0c16d55c167dbef9eefac8b4820fbada0f6b1
2010-03-27 14:49:58 +00:00
Sam Tobin-Hochstadt
2f1771b849
Add `define-predicate'
...
svn: r18497
original commit: c24daa5dbb2e4a503e81385620008b70d044f76c
2010-03-10 00:10:03 +00:00
Sam Tobin-Hochstadt
b0a1fde7aa
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
original commit: 78c14e434b7f6dffc6c404d090b449b097e96cfb
2010-03-01 22:31:24 +00:00
Sam Tobin-Hochstadt
56732a6d6e
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
original commit: 2e90dfc081a3160abaa49aff9f535a901999c6a5
2010-02-26 00:25:23 +00:00
Sam Tobin-Hochstadt
b0a08fe0b8
providing static struct information to untyped code works
...
svn: r18198
original commit: 33c18b3985bce1bab5028c67e06eec5335722eb4
2010-02-19 23:27:06 +00:00
Sam Tobin-Hochstadt
5a47ebf0c7
New representation for free variables, now stored in struct.
...
Interning now merely used to create key, eq? not = for types.
svn: r18107
original commit: 1039e68e034196550e4def3e9f0233e6751201ab
2010-02-17 00:09:38 +00:00
Sam Tobin-Hochstadt
a61aef0339
Generate proper contracts for polymorphic struct types.
...
Document `Nothing'.
svn: r18074
original commit: 90c8fcff1194799ed6f522e7554d49571b1f3074
2010-02-12 21:57:58 +00:00
Sam Tobin-Hochstadt
4c1cf6b520
Add supertypes for mutable types, so that predicates work correctly.
...
svn: r17971
original commit: 318833f4226d9249077c772f87ee705ecfd4c617
2010-02-04 23:39:15 +00:00
Sam Tobin-Hochstadt
2669a3269a
Fix abstraction of implications.
...
Fix contract for lookup-typed/lexical.
Default cases for printing.
Abstract out indexing functions for Nat/Integer split.
svn: r17272
original commit: d0c8a19ce84ce1ef674c1c43e69b56ee7e0a63a2
2009-12-11 23:00:37 +00:00