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
7815fad415
examples/flink: implement task delegation roles in terms of abstract
...
templates
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
3957f031c1
declare turnstile deps
2019-08-23 10:05:11 -04:00
Sam Caldwell
f85203ac73
examples/flink: small cleanups
2019-03-05 10:53:30 -05:00
Sam Caldwell
0da903e438
examples/flink: merge task assignment and delegation protocols
2019-02-26 15:48:26 -05:00
Sam Caldwell
22bd143025
examples/flink: rename map and reduce structs for slightly less overloading on task
2019-02-26 13:34:12 -05:00
Sam Caldwell
a6d6ceaa7c
examples/flink: tidy up a bit
2019-02-26 12:13:37 -05:00
Sam Caldwell
abc8669b74
examples/flink: describe the protocol
2019-02-26 10:50:00 -05:00
Sam Caldwell
a98ba7baab
examples/flink: avoid asking the task manager to do more than it is
...
capable of
2019-02-21 15:10:42 -05:00
Sam Caldwell
702c53f7d1
examples/flink: Split lines to words in job runner; trim punctuation on words
2019-02-18 16:03:27 -05:00
Sam Caldwell
bb028b1af8
examples/flink: create a job from a file
...
Doesn't handle punctuation properly
2019-02-18 15:45:10 -05:00
Sam Caldwell
fb778ab1ee
examples/flink: create tasks & jobs from an input string rather than
...
manually
2019-02-18 15:21:24 -05:00
Sam Caldwell
5cb0462ec4
examples: adapt Jonathan's flink exceprt to syndicate
2019-02-13 15:53:04 -05: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
36420274cb
send newlines in tcp2 chat client
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
Sam Caldwell
5104677fc6
define functions differently
2019-01-25 11:16:03 -05:00
Sam Caldwell
cabb4e2e7c
local define
2019-01-25 11:16:03 -05:00
Sam Caldwell
d7fc251bc8
walk/bind in begin as well
2019-01-25 11:16:03 -05:00
Sam Caldwell
94823854c0
code reuse!
2019-01-25 11:16:03 -05:00
Sam Caldwell
a9665d93d0
re-factor field shenanigans
2019-01-25 11:16:03 -05:00
Sam Caldwell
ad2e337268
free standing fields!
2019-01-25 11:16:02 -05:00
Sam Caldwell
00bf7d2364
during
2019-01-25 11:16:02 -05:00
Sam Caldwell
632c04139b
sets
2019-01-25 11:16:02 -05:00
Sam Caldwell
6d2d14459c
lists
2019-01-25 11:16:02 -05:00
Sam Caldwell
03285824c7
two buyer example
2019-01-25 11:16:02 -05:00
Sam Caldwell
ddff1c800c
on start and stop, spawned actors
2019-01-25 11:16:02 -05:00