commit
e47a37e3f0
9 changed files with 104 additions and 0 deletions
@ -0,0 +1,9 @@
@@ -0,0 +1,9 @@
|
||||
version 1 . |
||||
embeddedType Actor.Ref . |
||||
|
||||
BoxState = <BoxState @value int>. |
||||
SetBox = <SetBox @value int>. |
||||
|
||||
; BoxCap = BoxState / <Observe =SetBox @observer embedded>. |
||||
; ClientCap = SetBox / <Observe =BoxState @observer embedded>. |
||||
. |
@ -0,0 +1,9 @@
@@ -0,0 +1,9 @@
|
||||
version 1 . |
||||
embeddedType Actor.Ref . |
||||
|
||||
;As implemented |
||||
Observe = <Observe @label symbol @observer embedded>. |
||||
|
||||
; ;As will be implemented soon |
||||
; Observe = <Observe @pattern Pattern @observer embedded>. |
||||
. |
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
version 1 . |
||||
embeddedType Actor.Ref . |
||||
|
||||
Resolve = <resolve @sturdyref sturdy.SturdyRef @observer embedded>. |
||||
Bind = <bind @oid any @key bytes @target embedded>. |
@ -0,0 +1,14 @@
@@ -0,0 +1,14 @@
|
||||
version 1 . |
||||
embeddedType sturdy.WireRef . |
||||
|
||||
Assertion = any . |
||||
Handle = int . |
||||
Event = Assert / Retract / Message / Sync . |
||||
Oid = int . |
||||
Turn = [TurnEvent ...]. |
||||
TurnEvent = [@oid Oid @event Event]. |
||||
|
||||
Assert = <assert @assertion Assertion @handle Handle>. |
||||
Retract = <retract @handle Handle>. |
||||
Message = <message @body Assertion>. |
||||
Sync = <sync @peer embedded>. |
@ -0,0 +1,14 @@
@@ -0,0 +1,14 @@
|
||||
version 1 . |
||||
embeddedType Actor.Ref . |
||||
|
||||
UserId = int . |
||||
|
||||
Join = <joinedUser @uid UserId @handle embedded>. |
||||
|
||||
NickClaim = <claimNick @uid UserId @name string @k embedded>. |
||||
|
||||
UserInfo = <user @uid UserId @name string>. |
||||
|
||||
Says = <says @who UserId @what string>. |
||||
|
||||
NickConflict = <nickConflict>. |
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
version 1 . |
||||
embeddedType Actor.Ref . |
||||
|
||||
Present = <Present @username string>. |
||||
Says = <Says @who string @what string>. |
@ -0,0 +1,43 @@
@@ -0,0 +1,43 @@
|
||||
version 1 . |
||||
|
||||
; Each Attenuation is a stage. The sequence of Attenuations is run RIGHT-TO-LEFT. |
||||
; That is, the newest Attenuations are at the right. |
||||
SturdyRef = <ref @oid any @caveatChain [Attenuation ...] @sig bytes>. |
||||
|
||||
; An individual Attenuation is run RIGHT-TO-LEFT. |
||||
; That is, the newest Caveats are at the right. |
||||
Attenuation = [Caveat ...]. |
||||
|
||||
; embodies 1st-party caveats over assertion structure, but nothing else |
||||
; can add 3rd-party caveats and richer predicates later |
||||
Caveat = Rewrite / Alts . |
||||
Rewrite = <rewrite @pattern Pattern @template Template>. |
||||
Alts = <or @alternatives [Rewrite ...]>. |
||||
|
||||
Oid = int . |
||||
WireRef = @mine [0 @oid Oid] / @yours [1 @oid Oid @attenuation Caveat ...]. |
||||
|
||||
;--------------------------------------------------------------------------- |
||||
|
||||
ConstructorSpec = CRec / CArr / CDict . |
||||
CRec = <rec @label any @arity int>. |
||||
CArr = <arr @arity int>. |
||||
CDict = <dict>. |
||||
|
||||
Lit = <lit @value any>. |
||||
|
||||
Pattern = PDiscard / PAtom / PEmbedded / PBind / PAnd / PNot / Lit / PCompound . |
||||
PDiscard = <_>. |
||||
PAtom = =Boolean / =Float / =Double / =SignedInteger / =String / =ByteString / =Symbol . |
||||
PEmbedded = =Embedded . |
||||
PBind = <bind @name symbol @pattern Pattern>. |
||||
PAnd = <and @patterns [Pattern ...]>. |
||||
PNot = <not @pattern Pattern>. |
||||
PCompound = <compound @ctor ConstructorSpec @members PCompoundMembers>. |
||||
PCompoundMembers = { any: Pattern ...:... }. |
||||
|
||||
Template = TRef / Lit / TCompound . |
||||
TRef = <ref @name symbol>. |
||||
TCompound = <compound @ctor ConstructorSpec @members TCompoundMembers>. |
||||
TCompoundMembers = { any: Template ...:... }. |
||||
|
Loading…
Reference in new issue