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