Commit Graph

92 Commits

Author SHA1 Message Date
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
Sam Tobin-Hochstadt
21f9c0ec16 fixes
svn: r17265

original commit: 791ec557876881eaeafc29a43b339b7a7d632d84
2009-12-11 00:25:59 +00:00
Sam Tobin-Hochstadt
4741518170 logic works properly now, it seems
svn: r17264

original commit: 92dbf999651f54b7efd8167427db9aa2f38512d1
2009-12-10 23:35:28 +00:00
Sam Tobin-Hochstadt
1261ce2cdb revert all of the interning changes since they didn't work
svn: r17262

original commit: 16c152e5a4ca1797f20c127d443e4689e292e55f
2009-12-10 17:15:17 +00:00
Sam Tobin-Hochstadt
b68c553664 checkpoint
svn: r17258

original commit: 5767e23d875f1248e23132fe11f5b6b4ffb5cc39
2009-12-10 15:32:17 +00:00
Sam Tobin-Hochstadt
c29e86edca conversion to contracts for optional keywords
svn: r17236

original commit: eae4c140fae6f31fec65a9296a0d3e17d13172d7
2009-12-07 15:34:54 +00:00
Sam Tobin-Hochstadt
445c65e12e checkpoint
svn: r17054

original commit: e3bafbe298688ec0efe47a09254492f93027fa71
2009-11-25 02:30:41 +00:00
Sam Tobin-Hochstadt
e5c1d9e02b checkpoint
svn: r16931

original commit: 750c971d0727b495c55fb090e38d3fb3001d3624
2009-11-21 00:11:37 +00:00
Sam Tobin-Hochstadt
9dbe7c808f Add unstable/match with == match expander.
Add 'match expander' tech def.

svn: r16814

original commit: 0ae5843f1163a247f776b47ac29e38e31664bc03
2009-11-16 16:58:11 +00:00
Sam Tobin-Hochstadt
2c76766c1c 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

original commit: fb29a2498e964c6d7651ca6cc6a19c07ca28760b
2009-11-15 22:15:29 +00:00
Eli Barzilay
33d300977a newlines at EOFs
svn: r16630

original commit: 44d88cee6b13d29d08d5bdd8e9e7681ca70a3765
2009-11-09 03:49:50 +00:00
Ryan Culpepper
845fb67bb5 unstable:
added struct and syntax libraries

svn: r16621

original commit: 7483b7ed20c330602fcb9cd6b7ab976470a15b0f
2009-11-08 19:20:53 +00:00
Ryan Culpepper
8eb494615f removed old stxclass collection
Please apply to release branch.

svn: r16047

original commit: 987ab4c5e8c4548b9eb87f6f78c75b6877118065
2009-09-17 16:11:20 +00:00
Sam Tobin-Hochstadt
535ec1720f fix uses of syntax-parse attributes
svn: r15984

original commit: ed65dacdcd2c4c2d2cfe2177865598c97903dfd7
2009-09-11 22:49:56 +00:00
Sam Tobin-Hochstadt
2c3930216b use splicing-syntax-class
svn: r15981

original commit: 417b9d16e097f4944dbefc0d327b91da790c83b0
2009-09-11 21:17:42 +00:00
Sam Tobin-Hochstadt
0333d4f210 Simplify a syntax class
svn: r15977

original commit: 8001ab7fb0254cde97a76afb61e1d0a1a5fb786d
2009-09-11 19:19:41 +00:00