Sam Caldwell
ce0c296b5c
parse quoted turnstile types
2019-08-26 11:09:27 -04:00
Sam Caldwell
60ed8c2677
tweak how types are printed
2019-08-26 11:09:27 -04:00
Sam Caldwell
eba7ed072c
cleanup
2019-08-26 11:09:27 -04:00
Sam Caldwell
c811b9a45f
forgot to add maybe.rkt and either.rkt
2019-08-26 11:09:26 -04:00
Sam Caldwell
3faaa1c580
typed flink working!
2019-08-26 11:09:26 -04:00
Sam Caldwell
23bee726b1
priorities for query handlers, on-add, on-remove
2019-08-26 11:09:26 -04:00
Sam Caldwell
3aedb63a9c
client and jobs (not working)
2019-08-26 11:09:26 -04:00
Sam Caldwell
807e6bb8f7
map list op
2019-08-26 11:09:26 -04:00
Sam Caldwell
98a779bdc1
resolve mutual dependency in flink via dataflow
2019-08-26 11:09:25 -04:00
Sam Caldwell
c37c060dc9
fancify patterns in flink
2019-08-26 11:09:24 -04:00
Sam Caldwell
c78b76b38c
fancify the patterns in book-club
2019-08-26 11:09:24 -04:00
Sam Caldwell
22a228ab4b
Use the communication type (via a turnstile `mode`) when elaborating
...
patterns in facets
2019-08-26 11:09:24 -04:00
Sam Caldwell
296a77d714
clean up patterns in flink
2019-08-26 11:09:24 -04:00
Sam Caldwell
4fdce7fc0c
elaborate more patterns
2019-08-26 11:09:24 -04:00
Sam Caldwell
13e988fe58
some work towards a better pattern language
2019-08-26 11:09:24 -04:00
Sam Caldwell
24efe43a6f
typed flink getting closer
2019-08-26 11:09:24 -04:00
Sam Caldwell
99d5916bd1
limited support for effect polymorphism
2019-08-26 11:09:23 -04:00
Sam Caldwell
20693f234e
more flink
2019-08-26 11:09:23 -04:00
Sam Caldwell
deca0a82be
progress on flink
2019-08-26 11:09:23 -04:00
Sam Caldwell
96e9431e15
first take on match-define-like form
2019-08-26 11:09:23 -04:00
Sam Caldwell
8cf13a9bbf
stop-when derived form
2019-08-26 11:09:23 -04:00
Sam Caldwell
c283dae7e4
positive? primitive
2019-08-26 11:09:23 -04:00
Sam Caldwell
559e9bb11b
for/first
2019-08-26 11:09:22 -04:00
Sam Caldwell
df9f3ebbd2
zero? primitive
2019-08-26 11:09:22 -04:00
Sam Caldwell
c8a1253d7b
examples/flink.rkt: work on job manager and utilities
2019-08-26 11:09:22 -04:00
Sam Caldwell
fc220a4e16
Use a mutable, compile-time table for type metadata
2019-08-26 11:09:22 -04:00
Sam Caldwell
a84b80a49b
Make inference slightly more lenient wrt unions
...
some tests not working because of syntax-property failure
2019-08-26 11:09:22 -04:00
Sam Caldwell
ed695c66d6
add error form
2019-08-26 11:09:22 -04:00
Sam Caldwell
4420f6cd74
improve handling of type variables
2019-08-26 11:09:21 -04:00
Sam Caldwell
d9e651a668
tweak how pattern types are handled
2019-08-26 11:09:21 -04:00
Sam Caldwell
66a3ece353
flink-support
2019-08-26 11:09:21 -04:00
Sam Caldwell
db41cb63d7
query-hash
2019-08-26 11:09:21 -04:00
Sam Caldwell
349fa19d26
require&provide maybe,either
2019-08-26 11:09:21 -04:00
Sam Caldwell
5238b74912
move patterns to core expressions
2019-08-26 11:09:21 -04:00
Sam Caldwell
3def83502a
more primitive operations
2019-08-26 11:09:20 -04:00
Sam Caldwell
5fda25a42e
more hash operations
2019-08-26 11:09:20 -04:00
Sam Caldwell
9dd11ef7db
more list operations
2019-08-26 11:09:20 -04:00
Sam Caldwell
8f92368d8f
typed-flink: task manager
2019-08-26 11:09:20 -04:00
Sam Caldwell
dc0e434caa
make sure begin always has a definition context
2019-08-26 11:09:20 -04:00
Sam Caldwell
fd40ab2e52
more set operations
2019-08-26 11:09:20 -04:00
Sam Caldwell
5310956848
more hash functions
2019-08-26 11:09:20 -04:00
Sam Caldwell
1590687e7a
typed flink - task runner
2019-08-26 11:09:19 -04:00
Sam Caldwell
68f14919d7
fix output type for actors without interests
2019-08-26 11:09:19 -04:00
Sam Caldwell
309d6867d9
fix argument order bug in hash-update
2019-08-26 11:09:19 -04:00
Sam Caldwell
8819af878e
typed flink data definitions
2019-08-26 11:09:19 -04:00
Sam Caldwell
3b35000a5e
assertion-struct macro
2019-08-26 11:09:19 -04:00
Sam Caldwell
69660e02dd
split out core-expressions with #%app, which is now more explicit
2019-08-26 11:09:19 -04:00
Sam Caldwell
4b692428af
Improve scoping structure of for-clauses
2019-08-26 11:09:18 -04:00
Sam Caldwell
2c0bef7da4
make list operations polymorphic functions
2019-08-26 11:09:18 -04:00
Sam Caldwell
75539d0ec3
fix ty-var bug
2019-08-26 11:09:18 -04:00
Sam Caldwell
47d2568a93
first take on local inference
2019-08-26 11:09:18 -04:00
Sam Caldwell
1bdb9b7820
move definition of primitive base types
2019-08-26 11:09:18 -04:00
Sam Caldwell
97b3a9a0b5
subtyping for effect-free functions
2019-08-26 11:09:18 -04:00
Sam Caldwell
63089efdbc
fixup fold in book club
2019-08-26 11:09:17 -04:00
Sam Caldwell
1b2527920e
start on for loops
2019-08-26 11:09:17 -04:00
Sam Caldwell
899d8c460d
hash tables
2019-08-26 11:09:17 -04:00
Sam Caldwell
af56bc283d
add sequences
2019-08-26 11:09:17 -04:00
Sam Caldwell
33522647fd
allow polymorphic function definitions
2019-08-26 11:09:17 -04:00
Sam Caldwell
c9563cd0a2
type abstractions
2019-08-26 11:09:17 -04:00
Sam Caldwell
80ef12ef4d
split out primitives
2019-08-26 11:09:16 -04:00
Sam Caldwell
1c9f53590d
split out files
2019-08-26 11:09:16 -04:00
Sam Caldwell
c9a44ab45e
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
2019-08-26 11:09:16 -04:00
Sam Caldwell
e3c7926b92
simplify implementation of overlaps?
2019-08-26 11:09:16 -04:00
Sam Caldwell
e16db164df
look more at book club roles
2019-08-26 11:09:16 -04:00
Sam Caldwell
362d7c877d
More leader-related role finangling
2019-08-26 11:09:15 -04:00
Sam Caldwell
19f915620e
Keep track of branches for role effects in turnstile lang
2019-08-26 11:09:15 -04:00
Sam Caldwell
c726fb2bdd
look into leader impl simulating spec a bit
2019-08-26 11:09:15 -04:00
Sam Caldwell
47dc84f034
some more simulation tests
2019-08-26 11:09:15 -04:00
Sam Caldwell
0cc550ea43
leader-spec simulates itself!
2019-08-26 11:09:15 -04:00
Sam Caldwell
324557e8b5
simplest simulation example passes
2019-08-26 11:09:14 -04:00
Sam Caldwell
50448f41a7
subtyping
2019-08-26 11:09:14 -04:00
Sam Caldwell
126046caa9
remember initial state when compiling
2019-08-26 11:09:14 -04:00
Sam Caldwell
a8d398eec7
small improvements
2019-08-26 11:09:13 -04:00
Sam Caldwell
170e2b28ce
incorporate branching!
2019-08-26 11:09:13 -04:00
Sam Caldwell
480b67ea51
More on facet states, including graphviz view
2019-08-26 11:09:13 -04:00
Sam Caldwell
64016053ff
prototyping interpretation of roles as state machines
2019-08-26 11:09:13 -04:00
Sam Caldwell
a3380ea403
fixups for package installation
2019-08-26 11:08:30 -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
d363bd0c46
typed chat server example
2019-01-25 11:16:07 -05:00
Sam Caldwell
0c37b4e0b7
tcp driver shim module
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
d8df2beb3e
small cleanup
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
Sam Caldwell
c11d719f20
begin splitting up roles.rkt
2019-01-25 11:16:05 -05:00
Sam Caldwell
70aafc8bdf
re-finangle `define/intermediate` to allow require & provides
...
Needed to change from `make-rename-transformer` to
`make-variable-like-transformer` because apparently rename transformers
are treated differently when referred to from another model, hiding the
syntax properties on the target.
2019-01-25 11:16:05 -05:00
Sam Caldwell
dcc6bbcbe7
file system roles w messages
2019-01-25 11:16:05 -05:00
Sam Caldwell
1b7d5a2330
cell example
2019-01-25 11:16:04 -05:00
Sam Caldwell
1b5cf6d772
messages
2019-01-25 11:16:04 -05:00
Sam Caldwell
57934b389f
fix making defn context with #f #f
2019-01-25 11:16:04 -05:00
Sam Caldwell
46379858c2
stuff
2019-01-25 11:16:04 -05:00
Sam Caldwell
139e0bcac5
book club
2019-01-25 11:16:04 -05:00
Sam Caldwell
86330bde03
dataflow
2019-01-25 11:16:04 -05:00
Sam Caldwell
0f2469c364
query set
2019-01-25 11:16:04 -05:00
Sam Caldwell
144e20bdde
query-value
2019-01-25 11:16:03 -05:00