Sam Caldwell
f1be0fdfac
more list operations
2020-03-10 11:44:06 -04:00
Sam Caldwell
93e1fea202
typed-flink: task manager
2020-03-10 11:44:06 -04:00
Sam Caldwell
16ce86c6c9
make sure begin always has a definition context
2020-03-10 11:44:06 -04:00
Sam Caldwell
c097e218d0
more set operations
2020-03-10 11:44:06 -04:00
Sam Caldwell
12fd4ad756
more hash functions
2020-03-10 11:44:06 -04:00
Sam Caldwell
f460011a5d
typed flink - task runner
2020-03-10 11:44:06 -04:00
Sam Caldwell
51e26efda6
fix output type for actors without interests
2020-03-10 11:44:06 -04:00
Sam Caldwell
122f7629c3
fix argument order bug in hash-update
2020-03-10 11:44:05 -04:00
Sam Caldwell
c96725b8e3
typed flink data definitions
2020-03-10 11:44:05 -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
ed01517c8c
Improve scoping structure of for-clauses
2020-03-10 11:44:05 -04:00
Sam Caldwell
10ae47c26c
make list operations polymorphic functions
2020-03-10 11:44:05 -04:00
Sam Caldwell
6f52c7fc61
fix ty-var bug
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
b1cca8f377
subtyping for effect-free functions
2020-03-10 11:44:04 -04:00
Sam Caldwell
cf17ae28a5
fixup fold in book club
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
e88b64f5c1
allow polymorphic function definitions
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
fa7af3444c
look more at book club roles
2020-03-10 11:44:03 -04:00
Sam Caldwell
58c1b52ac4
More leader-related role finangling
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
5752c9299c
some more simulation tests
2020-03-10 11:44:02 -04:00
Sam Caldwell
7dfc4a93da
leader-spec simulates itself!
2020-03-10 11:44:02 -04:00
Sam Caldwell
ff81748848
simplest simulation example passes
2020-03-10 11:44:02 -04:00
Sam Caldwell
f0c52f6eaa
subtyping
2020-03-10 11:44:02 -04:00
Sam Caldwell
e141abd678
remember initial state when compiling
2020-03-10 11:44:02 -04:00
Sam Caldwell
d285de5bb2
small improvements
2020-03-10 11:44:01 -04:00
Sam Caldwell
04f4acbda3
incorporate branching!
2020-03-10 11:44:01 -04:00
Sam Caldwell
abce2d6046
More on facet states, including graphviz view
2020-03-10 11:44:01 -04:00
Sam Caldwell
d35495029b
prototyping interpretation of roles as state machines
2020-03-10 11:44:01 -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
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
Sam Caldwell
c66b62cf46
simple example
2019-01-25 11:16:01 -05:00
Sam Caldwell
e7e8f5e174
fix pattern compilation
2019-01-25 11:16:01 -05:00
Sam Caldwell
938d3c519d
fix bugs, null-ary stops
2019-01-25 11:16:01 -05:00
Sam Caldwell
35b3811462
cond, match
2019-01-25 11:16:01 -05:00
Sam Caldwell
af91b669b7
lambdas
2019-01-25 11:16:01 -05:00
Sam Caldwell
5130197e27
utilities
2019-01-25 11:16:01 -05:00
Sam Caldwell
3705d95856
stop statement
2019-01-25 11:16:00 -05:00
Sam Caldwell
33af13016b
dataspace form
2019-01-25 11:16:00 -05:00
Sam Caldwell
1a4fc4dd4f
check input and output safety in spawn rule
2019-01-25 11:16:00 -05:00
Sam Caldwell
e79237b1d3
small adjustment to Role type
2019-01-25 11:16:00 -05:00
Sam Caldwell
4bd8d20b0b
refactor effect checking
2019-01-25 11:16:00 -05:00
Sam Caldwell
5803b8f9b0
refactor how effects are checked & propagated
2019-01-25 11:16:00 -05:00
Sam Caldwell
5bd391dd77
rename facet effect key from e to f
2019-01-25 11:16:00 -05:00
Sam Caldwell
71c2846a93
roles for bank account facets
2019-01-25 11:15:59 -05:00
Sam Caldwell
29e09ff3ef
start on facet role types
2019-01-25 11:15:59 -05:00
Sam Caldwell
1e66554b8e
note on performance
2019-01-25 11:15:59 -05:00
Sam Caldwell
8808b5aca9
typed book club
2019-01-25 11:15:59 -05:00
Sam Caldwell
5124b8e715
parse action types in transition,quit to allow empty lists
2019-01-25 11:15:59 -05:00
Sam Caldwell
ceb0c60d20
start on typed book club
2019-01-25 11:15:58 -05:00
Sam Caldwell
fb675a850c
add tuple and patch utilities and set datatype
2019-01-25 11:15:58 -05:00
Sam Caldwell
46a833a66e
typed bank account
2019-01-25 11:15:58 -05:00
Sam Caldwell
5934c1626f
typed box and client
2019-01-25 11:15:58 -05:00
Sam Caldwell
9a3d921de3
starter for typed/syndicate/core
2019-01-25 11:15:58 -05:00
Sam Caldwell
cff784384a
add constructor types
2019-01-25 11:15:58 -05:00
Sam Caldwell
b1c000e12e
more wip on TS
2019-01-25 11:15:58 -05:00
Sam Caldwell
82e5c8504c
wip on typed syndicate
2019-01-25 11:15:57 -05:00