Commit Graph

27 Commits

Author SHA1 Message Date
Stephen Chang
01a0bb28a7 improve rackunit-typechecking
- speed up by eliminating duplicate expansion in check-type
- use given type annotation as expected-type
  - eliminates unneeded type annotations
2016-04-06 17:10:46 -04:00
Stephen Chang
8369574812 fix stlc+effect; add check-props testing form 2016-03-14 01:29:46 -04:00
AlexKnauth
fe494c6ad3 fix another srcloc 2016-03-10 10:26:50 -05:00
AlexKnauth
f19eafcd8f propagate srcloc to check-equal? form 2016-03-10 10:15:24 -05:00
Stephen Chang
cd6c8920ab mlish: add concurrency prims and test 2016-03-03 23:38:21 -05:00
Stephen Chang
a8d461ea0d fix more app err msgs in tests; all tests passing 2016-02-27 17:31:20 -05:00
Stephen Chang
9000e126ff fix mlish tests to use new app err msg abstractions 2016-02-27 16:26:15 -05:00
Stephen Chang
d880b9d668 clean up app err msgs; need to fix tests 2016-02-26 16:54:12 -05:00
Stephen Chang
a3b9cbc712 fix define-type-constructor to properly error if used at runtime 2015-09-10 14:29:23 -04:00
Stephen Chang
d1814cb57a code cleanup; add define-sub-relation
- all tests passing
2015-08-28 16:57:38 -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
655c4acd5a cleanup typecheck.rkt 2015-07-28 19:14:27 -04:00
Stephen Chang
a44d946ffb add #%type annotation; add type->str; type constructor pattern match
- #%type annotation distinguishes types from terms
- is-type? checks #%type
- type->str fixes type printing
  - wasnt recursively calling get-orig
- use delay in "type" syntax-class norm attribute
  - fixes eager eval problem from before
- add more invalid type tests
  - only tested up to stlc+lit.rkt
- nicer type constructors
  - more concise, intuitive pat matching language
  - use for-meta 2 macros
2015-07-28 15:25:34 -04:00
Stephen Chang
daecc5c624 add tycon pattern matching to stlc
- fix stlc+lit tests
- current-promote is currently broken
- add err msg checking unit rackunit-typechecking
- works with new expander
2015-07-24 16:26:04 -04:00
Stephen Chang
dafa992176 add stlc+(iso)recursive types 2015-06-30 16:32:50 -04:00
Stephen Chang
98fdc8806c convert type representation to fully expanded syntax
- type-eval = expand/df
- fomega tyapp and tylam not yet implemented
2015-06-26 18:56:01 -04:00
Stephen Chang
3d422803f6 make define-type-const a macro to enable error checking 2015-06-12 19:30:00 -04:00
Stephen Chang
e39dc434b4 move eval-tau out of typecheck.rkt 2015-06-10 17:31:01 -04:00
Stephen Chang
50540efaa5 add current-typecheck-relation - generalizes equality and subtype 2015-06-04 15:22:39 -04:00
Stephen Chang
bec3be8b22 use parameters to implement extensible type relations (instead of eval) 2015-06-03 19:25:31 -04:00
Stephen Chang
d0459d58b0 move type=? out of typecheck.rkt and into each language def 2015-05-28 19:18:26 -04:00
Stephen Chang
f56fae94ab cleanup 2015-05-28 17:40:23 -04:00
Stephen Chang
01999fd2eb move eval-tau to vdash (and testing forms) 2015-05-28 17:28:16 -04:00
Stephen Chang
95aaf627b5 add stlc+sub 2015-05-27 16:07:39 -04:00
Stephen Chang
adf34fd219 add errors for invalid types 2015-05-20 15:20:43 -04:00
Stephen Chang
f317282609 tapl: reimplement stlc using rename-transformers instead of typeenv 2015-05-19 18:54:50 -04:00