Stephen Chang
6d33532aab
add more ifc3 tests
2017-03-21 17:56:04 -04:00
Stephen Chang
fd8a59a45f
add ifc3, ifc3-tests
2017-03-21 17:56:04 -04:00
Stephen Chang
ad6978a432
add fsm3
2017-03-21 17:56:04 -04:00
Stephen Chang
0c1635e984
rosette3: add tests checking displayed output
2017-03-21 17:56:04 -04:00
Stephen Chang
311c5ab117
rosette3: elimindate some code duplication
...
- use current-host-lang and typed-out
- reuse more unlifted forms (eg, let from ext-stlc)
2017-03-21 17:56:04 -04:00
Stephen Chang
824803388f
fix non-turnstile mlish to work with define-primop and current-host-lang
2017-03-21 17:56:04 -04:00
Stephen Chang
39ad3e1726
ext-stlc: multi-expr let body and top-lvl fn defs
2017-03-21 17:56:04 -04:00
Stephen Chang
b4d5c710b3
use current-host-lang in define-primop and typed-out
2017-03-21 17:56:03 -04:00
Stephen Chang
297e5df6ae
start host lang param experiment
2017-03-21 17:56:03 -04:00
Stephen Chang
4f400b5e0a
refine if: create sym val only when test is sym bool
2017-03-21 17:56:03 -04:00
Stephen Chang
593f4f5881
fix merge remnant
2017-03-21 17:56:03 -04:00
Stephen Chang
3edf1e031a
fixes to complete rebase master
2017-03-21 17:56:03 -04:00
Stephen Chang
3140cbff36
small addition to rosette notes
2017-03-21 17:56:03 -04:00
Stephen Chang
17b78ef229
add symbolic reflection forms; add sec7 guide tests
...
- for/all and define-lift not working with assert-type
- how to associate pred with newly lifted (type) of values?
2017-03-21 17:56:03 -04:00
Stephen Chang
583469c25f
add remaining libs; add sec6 guide tests
2017-03-21 17:56:03 -04:00
Stephen Chang
60c13fdd18
add structs (generics dont completely work); add sec5 guide tests
2017-03-21 17:56:03 -04:00
Stephen Chang
61751777ae
add forms and tests for guide sec49 solver and sols
2017-03-21 17:56:03 -04:00
Stephen Chang
e2fa3bcaa5
add pairs; add list, vector, and box fns; add guide 4.6-8 tests
...
- add distinguish car/cdr from first/res
- add immut boxes
- add evaluate special case: nested Constant
2017-03-21 17:56:03 -04:00
Stephen Chang
3995203803
add sec45 guide tests
2017-03-21 17:56:03 -04:00
Stephen Chang
5862112f57
add remaining sec44 guide tests; use term cache to improve testing
2017-03-21 17:56:03 -04:00
Stephen Chang
a242442a46
start sec4.4 tests; fix ~> arity; transfer stx props in define
...
- change solvable, etc stx-prop-related err msg
2017-03-21 17:56:03 -04:00
Stephen Chang
e3171e2b47
change BVPred input to Any; add remaining sec4.3 BV examples
2017-03-21 17:56:03 -04:00
Stephen Chang
3495584667
update rosette notes about Constant subtyping rule(s)
2017-03-21 17:56:03 -04:00
Stephen Chang
6ff4410841
add rhs Constant clause in sub?; fix cons to create U
2017-03-21 17:56:03 -04:00
Stephen Chang
a605de099b
check for constants in forall and exists
2017-03-21 17:56:03 -04:00
Stephen Chang
2e7e6a5d5c
better checks for pred?s in debug
2017-03-21 17:56:03 -04:00
Stephen Chang
d8f674b362
remove type annotation from ??
2017-03-21 17:56:03 -04:00
Stephen Chang
2e50bec36a
complete Constant; TODO: check for Constant in synthesize, etc?
2017-03-21 17:56:03 -04:00
AlexKnauth
4fa8bac761
start on the Constant constructor
2017-03-21 17:56:03 -04:00
Stephen Chang
8e55e44363
eliminate type annotation in define-symbolic
...
- relevant preds have analogous type as stx prop
- add extra more precise solvable? and function? stx props
- define-symbolic et al require explicit preds (no exprs) (for now)
2017-03-21 17:56:03 -04:00
Stephen Chang
e3fc26354d
add script to run all rosette tests (no require)
2017-03-21 17:56:03 -04:00
Stephen Chang
c601a4f46b
start hash tables
2017-03-21 17:56:03 -04:00
Stephen Chang
4007d64ff1
add remaining logic ops; add sec4 tests; TODO: add hash and fix sol ops
2017-03-21 17:56:03 -04:00
Stephen Chang
f22619f47b
add more arith tests
2017-03-21 17:56:03 -04:00
Stephen Chang
56bdcb73d8
add more numeric primitives
2017-03-21 17:56:03 -04:00
Stephen Chang
739355ad83
add Boxof and ~>
2017-03-21 17:56:03 -04:00
Stephen Chang
7ef84a313d
support symbolic Listof; add letrec, remaining sec2 tests
2017-03-21 17:56:03 -04:00
Stephen Chang
79abcce491
add optimize, remaining sec3 tests; fix CList-CListof subtyping
2017-03-21 17:56:03 -04:00
Stephen Chang
dfdc0eae37
add CList and list fns
2017-03-21 17:56:03 -04:00
Stephen Chang
01799a12da
add with-ctx shorthand
2017-03-21 17:55:45 -04:00
Stephen Chang
3d9ef8424c
start dependent types example
2017-03-10 17:03:30 -05:00
Stephen Chang
0bccf822ad
type= handles literals
2017-03-06 13:21:49 -05:00
Stephen Chang
50f08886d1
rackunit-typechecking: add more esc chars
2017-03-03 16:20:16 -05:00
Stephen Chang
772a2f1337
fix mlish chameneos test again
2017-02-17 12:09:58 -05:00
Stephen Chang
8be9371ed2
fix mlish chameneos test
2017-02-17 11:27:58 -05:00
Stephen Chang
f68308c38d
fix stx->datum
2017-02-16 17:59:56 -05:00
Stephen Chang
a44a94ce5c
add toplvl checking form
2017-02-13 18:33:46 -05:00
Stephen Chang
fd389086ef
increase timeouts for typeclass tests
2017-02-08 13:27:53 -05:00
Stephen Chang
115aae8e73
completely separate type and kind api, etc; generalize type environment
...
Previously, "type" functions were reused a lot to manipulate kinds, and other
metadata defined via `define-syntax-category`, but this meant it was impossible
to define separate behavior for some type and kind operations, e.g., type=? and
kind=?. This commit defines a separate api for each `define-syntax-category`
declaration.
Also, every `define-syntax-category` defines a new `define-NAMEd-syntax` form,
which implicitly uses the proper parameters, e.g., `define-kinded-syntax` uses
`kindcheck?`, `current-kind-eval`, and the ':: kind key by default (whereas
before, it was using typecheck?, type-eval, etc).
This commit breaks backwards compatibility. The most likely breakage results
from using a different default key for kinds. It used to be ':, the same as
types, but now the default is '::.
This commit also generalizes the contexts used with `define-NAMEd-syntax` and
`infer`.
- all contexts now accept arbitrary key-values associated with a variable
- all contexts use let* semantics, where a binding is in scope for subsequent
bindings; this means that one environment is sufficient in most scenarioes,
e.g., type and term vars can be mixed (if properly ordered)
- environments allow lone identifiers, which are treated as type variables by
default
2017-02-08 13:07:24 -05:00
Stephen Chang
f8cb9959cd
add timeout to try to satisfy pkg-build
2017-01-27 15:35:37 -05:00