version 1 . pointer Actor.Ref . ; Each Attenuation is a stage. The sequence of Attenuations is run RIGHT-TO-LEFT. ; That is, the newest Attenuations are at the right. SturdyRef = . ; 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 = . Alts = . Resolve = . ;--------------------------------------------------------------------------- ConstructorSpec = CRec / CArr / CDict . CRec = . CArr = . CDict = . Lit = . Pattern = PDiscard / PAtom / PPointer / PBind / PAnd / PNot / Lit / PCompound . PDiscard = <_>. PAtom = =Boolean / =Float / =Double / =SignedInteger / =String / =ByteString / =Symbol . PPointer = =Pointer . PBind = . PAnd = . PNot = . PCompound = . PCompoundMembers = { any: Pattern ...:... }. Template = TRef / Lit / TCompound . TRef = . TCompound = . TCompoundMembers = { any: Template ...:... }.