Commit Graph

537 Commits

Author SHA1 Message Date
Stephen Chang
6e90aeaf18 move tycon #:arity kw back to non-internal; all tests passing except turnstile/fomega2-3 2017-02-02 16:26:50 -05:00
Stephen Chang
8476c6daa7 fix expected type propagation problem (in lam2) in turnstile/mlish 2017-02-02 13:10:43 -05:00
Stephen Chang
7dd0c58b96 add type-agnostic current-ev and current-check
- all macrotypes tests passing
- most turnstile tests passing, except fomega?
2017-02-01 19:15:39 -05:00
Stephen Chang
e532907e47 generalize types and kinds in turnstile; turnstile/fomega tests passing 2017-02-01 13:31:21 -05:00
Stephen Chang
a788c4a7d5 macrotypes/mlish and macrotypes/mlish+adhoc tests passing 2017-01-31 14:30:46 -05:00
Stephen Chang
03b6d6e713 macrotypes/fomega2 tests passing 2017-01-31 11:58:57 -05:00
Stephen Chang
e09e442c41 macrotypes/tests/fomega-tests passing 2017-01-31 09:54:29 -05:00
Stephen Chang
a64ba6c075 WIP: dont overload ': key, eg use separate key for kinds 2017-01-30 17:16:28 -05:00
Stephen Chang
127a194e77 tests at same point as before: fomega wont recognize body of tylam at type 2017-01-30 15:36:49 -05:00
Stephen Chang
f825eef92f raco setup completes 2017-01-30 15:11:57 -05:00
Stephen Chang
25de3c5f20 add tag arg to infer fn, so it can be used for types and terms 2017-01-30 14:27:16 -05:00
Stephen Chang
9b53c60ea4 move define-basic-checked-stx, etc inside define-syntax-category 2017-01-30 14:01:55 -05:00
Stephen Chang
e9cc782aeb STUCK: infer must know about sep 2017-01-30 10:28:22 -05:00
Stephen Chang
f8cb9959cd add timeout to try to satisfy pkg-build 2017-01-27 15:35:37 -05:00
Stephen Chang
1826dc1682 fix travis script again 2017-01-26 16:28:29 -05:00
Stephen Chang
a1c97be85b fix travis script again 2017-01-26 16:25:39 -05:00
Stephen Chang
3c6c2f9f48 travis: install from git rather than through pkg server 2017-01-26 16:19:27 -05:00
Stephen Chang
6707945a29 drop racket 6.4 and 6.5 from travis; fix lens dep again 2017-01-26 15:19:30 -05:00
Stephen Chang
abcee6e9db bump racket dep; fix lens dep 2017-01-26 14:56:15 -05:00
Stephen Chang
f7de6fda4c remove lens-unstable dep
- add racket 6.4 dep
2017-01-26 13:54:46 -05:00
Stephen Chang
4522ccd598 add travis script 2017-01-26 13:19:43 -05:00
Stephen Chang
ba15bbd32f delete ad-hoc "run all" test scripts; use raco test instead
- add test-include-paths to run mlish test files
2017-01-25 21:22:06 -05:00
Stephen Chang
9c0b046d54 add some test timeouts 2017-01-25 16:36:46 -05:00
Stephen Chang
9f9294dc4c reduce lens dependency to lens-common and lens-unstable 2017-01-25 14:18:13 -05:00
Stephen Chang
6618f0e038 remove dependency on typed racket and sweet-exp 2017-01-25 10:47:42 -05:00
Stephen Chang
0084146c1c rename parse-typed-syntax to syntax-parse/typecheck; closes #50 again 2017-01-24 16:56:12 -05:00
Stephen Chang
896ec53151 document relation order for current-typecheck-relation; closes #48 2017-01-24 15:57:50 -05:00
Stephen Chang
b23ee8fc3f provide syntax-parse/typed-syntax as parse-typed-syntax
- but dont remove the old name
- closes #50
2017-01-24 14:51:03 -05:00
Stephen Chang
36c24c04b9 polish docs; explain #lang turnstile/lang and \succ form
closes #51
2017-01-24 12:59:02 -05:00
Stephen Chang
f100316674 ext-stlc: multibody lets; toplvl fn defs; properly transfer props on toplvl ids 2017-01-24 12:58:58 -05:00
AlexKnauth
232127da6f transfer srclocs so that check-syntax arrows work 2017-01-13 16:56:24 -05:00
Stephen Chang
995926e735 do some optimizations in typecheck.rkt: as much as 85% speedup in benchmarks
- move 'env prop logic to infer.rkt
- eliminate some dup expands (eg type-evals)

some before/afters --------------------
macrotypes/run-all-tests:      2m11s/20s 85%
macrotypes/mlish-general:      117s/34s  71%
macrotypes/mlish-shootout/rwo: 81s/31s   62%
macrotypes/mlish-typeclasses:  179s/149s 17%
turnstile/run-all-tests:       2m31s/29s 81%
turnstile/mlish-general:       139s/46s  67%
turnstile/mlish-typeclasses:   181s/155s 14%
2016-11-18 16:55:16 -05:00
Alex Knauth
4068d655d2 Merged in georges-duperon/macrotypes/fix-dependency-typed-racket-lib (pull request #30)
Added missing dependency on typed-racket-lib
2016-10-27 01:45:02 +00:00
Georges Dupéron
27e8d3d31a Added missing dependency on typed-racket-lib 2016-10-27 01:29:27 +02:00
Stephen Chang
ba1c954b96 start Bens "trivial" example 2016-10-18 17:08:25 -04:00
Stephen Chang
28fa5dd033 split def-kinded-stx from def-typed-stx; split any-type? from type?
- the former prevents using current-typecheck-relation at type/kind level
- the latter differentiates "well-formed" types (star)
  from valid types (any kind)
- move define-*ed-syntax and *-eval into define-syntax-category
- turnstile must wrap define-stx-category to define new define-*ed-syntax
- add any-*? pred and any-* stx class in def-stx-category
- fixes #44
- fixes #45
2016-10-14 14:16:49 -04:00
Stephen Chang
34b149e248 rearrange test script to avoid parameter conflicts 2016-10-13 21:46:31 -04:00
Stephen Chang
98568ceb99 add define-internal-type-constructor and define-internal-binding-type
- add fomega-no-reuse example
2016-10-13 21:21:05 -04:00
Stephen Chang
1c0fa751d6 split out a define-binding-type from define-type-constructor
- document #:arg-variances and variances; #:arr
- fixes #36
- start to split type constructor macro into (not working yet)
  - ty-: expands to expanded type representation
  - ty: performs kindchecking and expands to ty-
  - this makes it easier for programmers to implement their own kind
    system, but still get some turnstile conveniences like pat expanders
2016-10-13 15:20:30 -04:00
Stephen Chang
8a7d487e14 check if valid type when instantiating a type alias; fixed #5 2016-10-12 16:13:45 -04:00
Stephen Chang
c9c0970307 define-typed-syntax: properly handle implicit : with subsequent ⇒-props
- fixes #33
2016-10-12 15:17:31 -04:00
Stephen Chang
40a699cc81 [docs] minor edits to clarify binding phases 2016-10-12 14:52:10 -04:00
Stephen Chang
7677a7accb mlish: use define-typerule in define-type output, to match paper 2016-10-12 14:24:43 -04:00
Stephen Chang
a3433b9193 remove * version of pattern expanders 2016-10-12 14:10:03 -04:00
Stephen Chang
299051e902 add provides to guide examples 2016-10-12 13:20:38 -04:00
Stephen Chang
691ba9c51c Turnstile forms no longer automatically provide; add type-out
- not auto-providing more closely adheres to idiomatic Racket
- this commit changes:
  - define-typed-syntax
    - removed #:export-as option
  - define-base-type
    - removed #:no-provide option
  - define-type-constructor
    - removed #:no-provide option
- type-out helps with providing defined types
- in examples, move define and define-type-alias to ext-stlc
- fix bug in reuse where renamed id not provided
2016-10-12 10:46:05 -04:00
Stephen Chang
639a34c678 hide some test scripts from raco test
- these files should be manually run
- this hopefully prevents timeouts on the pkg server
2016-10-11 10:28:08 -04:00
Stephen Chang
fc5731de00 dont auto provide define-primops; add typed-out 2016-10-09 18:12:12 -04:00
Stephen Chang
8cce856e08 dont compile tests during install 2016-10-07 10:20:08 -04:00
Stephen Chang
83c9e7c122 remove todos in okasaki 2016-10-06 14:26:09 -04:00