Sam Caldwell
e75af5ae1c
infer a type for fields sans declared type
2020-12-11 16:40:00 -05:00
Sam Caldwell
4cd90a6295
add more require & provide specs
2020-12-11 16:40:00 -05:00
Sam Caldwell
e5b797b450
fix the type of run-ground-dataspace
2020-12-11 16:39:59 -05:00
Sam Caldwell
bdf4c30218
add multi-accumulator for/fold
2020-12-11 16:39:59 -05:00
Sam Caldwell
a1660114df
work towards using typedefs, debugging
2020-12-11 16:39:58 -05:00
Sam Caldwell
a6fc1f20e4
get typed syndicate to work without using the stop list
2020-08-17 11:24:06 -04:00
Sam Caldwell
060ca752f3
fix several bugs in role graph analysis
2020-05-29 11:15:07 -04:00
Sam Caldwell
6c79e5cd5c
track branching for each kind of effect in match
2020-03-10 11:44:25 -04:00
Sam Caldwell
480feb961c
improve spawn error messages
2020-03-10 11:44:24 -04:00
Sam Caldwell
ab15f7306f
typed define/dataflow
2020-03-10 11:44:21 -04:00
Sam Caldwell
945256b567
internal events for typed lang
2020-03-10 11:44:15 -04:00
Sam Caldwell
cefe70c590
Change type names Know -> Asserted, \negKnow -> Retracted
2020-03-10 11:44:15 -04:00
Sam Caldwell
9893f4dea1
provide Branch and Effs types
2020-03-10 11:44:14 -04:00
Sam Caldwell
0d4f8df3b4
During type abbreviation
2020-03-10 11:44:14 -04:00
Sam Caldwell
d9da970742
print types different
2020-03-10 11:44:13 -04:00
Sam Caldwell
5d922fe030
cleanups and improvements
2020-03-10 11:44:13 -04:00
Sam Caldwell
c1190958bd
remove stop-when abomination
2020-03-10 11:44:13 -04:00
Sam Caldwell
6230ed577e
tweak how types are printed
2020-03-10 11:44:12 -04:00
Sam Caldwell
67e0eebdc2
priorities for query handlers, on-add, on-remove
2020-03-10 11:44:12 -04:00
Sam Caldwell
7026d6908d
Use the communication type (via a turnstile `mode`) when elaborating
...
patterns in facets
2020-03-10 11:44:11 -04:00
Sam Caldwell
60c58d2b7b
elaborate more patterns
2020-03-10 11:44:10 -04:00
Sam Caldwell
d91f13bd2c
some work towards a better pattern language
2020-03-10 11:44:10 -04:00
Sam Caldwell
adc0819be0
limited support for effect polymorphism
2020-03-10 11:44:09 -04:00
Sam Caldwell
d236d99d47
stop-when derived form
2020-03-10 11:44:09 -04:00
Sam Caldwell
b56319042c
query-hash
2020-03-10 11:44:07 -04:00
Sam Caldwell
f4f517cd02
require&provide maybe,either
2020-03-10 11:44:07 -04:00
Sam Caldwell
c9378d057d
move patterns to core expressions
2020-03-10 11:44:07 -04:00
Sam Caldwell
1feab5d174
assertion-struct macro
2020-03-10 11:44:05 -04:00
Sam Caldwell
530c17ff32
split out core-expressions with #%app, which is now more explicit
2020-03-10 11:44:05 -04:00
Sam Caldwell
9d5453ff5b
first take on local inference
2020-03-10 11:44:05 -04:00
Sam Caldwell
f00ec81e48
move definition of primitive base types
2020-03-10 11:44:04 -04:00
Sam Caldwell
f6cd87394e
start on for loops
2020-03-10 11:44:04 -04:00
Sam Caldwell
39d81686fd
hash tables
2020-03-10 11:44:04 -04:00
Sam Caldwell
2ddafb240a
add sequences
2020-03-10 11:44:04 -04:00
Sam Caldwell
82705763b4
type abstractions
2020-03-10 11:44:04 -04:00
Sam Caldwell
581319eacb
split out primitives
2020-03-10 11:44:03 -04:00
Sam Caldwell
3c800a92db
split out files
2020-03-10 11:44:03 -04:00
Sam Caldwell
29c446df39
Attach useful metadata as syntax properties to some types
...
In order to make defining judgments like subytping and intersection
more extensible, introduce a form for defining type constructors that
describes:
- how it behaves wrt intersction (product-like or container-like)
- variances for subtyping
- the type constructor transformer, for making new instances
This eliminates a lot of very repetitive code, and should make things
much more extensible
2020-03-10 11:44:03 -04:00
Sam Caldwell
006e5e0bf5
simplify implementation of overlaps?
2020-03-10 11:44:03 -04:00
Sam Caldwell
d5ac65007e
Keep track of branches for role effects in turnstile lang
2020-03-10 11:44:02 -04:00
Sam Caldwell
572be6b45d
look into leader impl simulating spec a bit
2020-03-10 11:44:02 -04:00
Sam Caldwell
0897036557
Don't use syndicate's action-collecting module-begin
...
Implicitly starting a dataspace with top-level actions is a hole for
the type system, which needs to know the type of possible assertions.
Instead, provide `run-ground-dataspace` for kicking off the program.
2019-01-25 11:16:07 -05:00
Sam Caldwell
c7cc84302e
Instead of attaching syntax properties during expansion, generate code
...
that does so
This resolves the "namespace mismatch: cannot locate module instance"
error.
2019-01-25 11:16:07 -05:00
Sam Caldwell
3a06e2324c
Useful primitives: symbols, bytestrings
2019-01-25 11:16:06 -05:00
Sam Caldwell
c7d78159e3
require/typed - no contracts
2019-01-25 11:16:06 -05:00
Sam Caldwell
7c3d87eeb2
require-struct
2019-01-25 11:16:06 -05:00
Sam Caldwell
221a550aed
rename effect keys to not break with updated turnstile
2019-01-25 11:16:06 -05:00
Sam Caldwell
817e292760
Revert "begin splitting up roles.rkt"
...
This reverts commit da1263dc97
.
2019-01-25 11:16:05 -05:00
Sam Caldwell
7117816a74
Revert "more splitting up"
...
This reverts commit 49e7ba1b0e
.
2019-01-25 11:16:05 -05:00
Sam Caldwell
1b0f41f465
more splitting up
2019-01-25 11:16:05 -05:00