Commit Graph

105 Commits

Author SHA1 Message Date
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
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
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
f100316674 ext-stlc: multibody lets; toplvl fn defs; properly transfer props on toplvl ids 2017-01-24 12:58:58 -05: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
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
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
83c9e7c122 remove todos in okasaki 2016-10-06 14:26:09 -04:00
Stephen Chang
cb36097f8d mlish define-type to more closely resemble paper 2016-10-05 10:33:18 -04:00
Stephen Chang
5296774b9a modify mlish app, lam and define to more closely resemble paper 2016-10-05 09:44:03 -04:00
Stephen Chang
7c68789628 convert mlish+adhoc define-instance to turnstile 2016-10-04 14:18:38 -04:00
Stephen Chang
80d0cec122 port rest of mlish+adhoc to turnstile 2016-10-04 13:44:22 -04:00
Stephen Chang
7113debd3c use more turnstile features in mlish+adhoc: define-type and match2 2016-10-03 18:41:43 -04:00
Stephen Chang
140843cf06 start move of mlish+adhoc to turnstile -- tests passing 2016-10-03 15:52:29 -04:00
Stephen Chang
362b0f310d manually merge mlish.rkt from adhoc branch to mlish+adhoc.rkt 2016-10-03 14:28:15 -04:00
Stephen Chang
df4c26dd8d type=? handles binding types by default
- closes #32
2016-09-29 14:27:17 -04:00
Stephen Chang
df63a0bf57 predefine "type" stx-category and define-primop in typecheck.rkt (and turnstile) 2016-09-24 16:43:17 -04:00
Stephen Chang
d0c14c7e07 define-typed-syntax: support define-simple-macro-like single-clause syntax 2016-09-24 15:12:45 -04:00
Stephen Chang
bce55e8741 allow omitting "_ ≫" in conclusion 2016-09-24 15:12:45 -04:00
Stephen Chang
e1ea378f7d drop more parens 2016-09-24 15:12:45 -04:00
Stephen Chang
f545503d19 allow optionally eliding more parens
- single env
- \vdash rhs
2016-09-24 15:12:45 -04:00
AlexKnauth
ccdb667fac move default-type-eval into typecheck.rkt 2016-09-17 09:15:41 -04:00
AlexKnauth
a075b9b4f8 fix ~?Some pattern expander 2016-09-02 10:57:46 -04:00
AlexKnauth
a56250b26e start on tests from section 3 of the Guide 2016-08-31 18:59:54 -04:00
AlexKnauth
3d92dbdde3 add #lang turnstile/lang; change #lang turnstile's #%module-begin 2016-08-31 18:49:25 -04:00
Stephen Chang
98c5a6c231 support multiple exprs in let body; add set! 2016-08-31 16:57:23 -04:00
Stephen Chang
3f61c468be rename rosette-guide-tests -> rosette-guide-sec2-tests 2016-08-31 16:22:55 -04:00
Stephen Chang
5436f70de3 add remaining Rosette guide, sec2 examples 2016-08-31 16:22:08 -04:00
Stephen Chang
761645833d split Bool into True and False in stlc+union; add current-bitwidth to rosett2 2016-08-31 15:42:29 -04:00
Stephen Chang
af98a9dec9 add solve 2016-08-31 15:19:12 -04:00
Stephen Chang
90e9517b3a add synthesize and lib/synthax 2016-08-31 15:02:21 -04:00
Stephen Chang
60fa8ab91f fix syntax taint errs produced by srcloc workaround in #%app 2016-08-31 12:58:56 -04:00
Stephen Chang
10a143a16d add verify, evaluate; and debug, render in separate libs 2016-08-30 16:58:15 -04:00
Stephen Chang
2a6167e4d0 add immutable vectors; add "of" suffix to data structure type constructors 2016-08-30 11:41:40 -04:00
Stephen Chang
54c0ee1cb6 fix inf loop in current-sub?
- add more guide tests
2016-08-29 16:57:50 -04:00
AlexKnauth
513f6dcfd4 use type-cast and assert-pred for assert-type 2016-08-29 16:13:46 -04:00
Stephen Chang
1a14c5e377 add rosette-guide-tests; add various forms
- let-symbolic
- vector
- begin
2016-08-29 15:25:26 -04:00
AlexKnauth
98e5cdc77f add more assert-type tests 2016-08-29 11:26:22 -04:00
Stephen Chang
a9cf9cb217 add tests for assert-type; use new lifted bitvector? as BVPred "pred" stx prop 2016-08-26 17:01:48 -04:00