Commit Graph

11 Commits

Author SHA1 Message Date
Stephen Chang
bf126449b4 define-type-constructor supports annotated bound vars
- use this to impl forall in fomega
- define-type-constructor default arity is =1
- define explicit normalize fn in fomega -- speeds up tests 15%
- move same-type to define-syntax-category
2015-10-09 16:59:48 -04:00
Stephen Chang
2278adcf95 replace provide/requires with "extends...except"/"reuse...from" forms
- introduce basic define-typed-syntax instead of define-syntax
- add fomega3 --- same as fomega2, without the duplication
  - app and lam are both types and terms
  - arrow is both type and kind
  - same tests as fomega2
2015-10-01 16:21:29 -04:00
Stephen Chang
cb7a49ab06 use #lang typecheck 2015-09-23 17:01:13 -04:00
Stephen Chang
d1814cb57a code cleanup; add define-sub-relation
- all tests passing
2015-08-28 16:57:38 -04:00
Stephen Chang
efaef8b60e progress commit: stuck on fomega+define-syntax-category 2015-08-21 19:28:36 -04:00
Stephen Chang
6feff7d3b3 completed: type valiation; new type constructor pattern matching 2015-08-19 19:29:07 -04:00
Stephen Chang
1a831454f4 progress commit: use typechecking system to typecheck types
- ported (tests passing) up to stlc+sub.rkt
2015-08-14 19:37:09 -04:00
Stephen Chang
3d4fe8f71a new define-type-constructor: exist-tests.rkt passing 2015-08-07 18:12:47 -04:00
Stephen Chang
f0d314b46d consolidate typecheck.rkt: impl everything in terms of infer fn 2015-07-09 15:30:12 -04:00
Stephen Chang
b0a8d192ef finish exist.rkt 2015-07-09 14:00:36 -04:00
Stephen Chang
e678912c2c add stlc+rec-iso files; rename record files; start exist
- previously forgot to add stlc+rec-iso.rkt and tests
- rename files with records (eg stlc+var, stlc+rec+sub)
  - use "reco" to avoid confusion with recursive types ("rec")
- start exist.rkt --- existential types
2015-07-08 17:24:15 -04:00