From 9f1bf29c5bc40e7f735b706858a95865e9d23133 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Fri, 2 Oct 2015 12:22:03 -0700 Subject: [PATCH] set station by glyph --- ape/talk.hoon | 37 ++++++++++++++++++++++--------------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/ape/talk.hoon b/ape/talk.hoon index 500d228b8..ffa6e5413 100644 --- a/ape/talk.hoon +++ b/ape/talk.hoon @@ -110,7 +110,7 @@ [%banish p=span q=(list partner)] :: blacklist add [%block p=span q=(list partner)] :: blacklist add [%author p=span q=(list partner)] :: whitelist add - [%target p=(set partner)] :: set active targets + [%target p=$|(?(~ char) (set partner))] :: set active targets :: [%destroy p=span] :: [%create p=posture q=span r=cord] :: [%probe p=station] :: @@ -182,16 +182,10 @@ (stag %& stan) (stag %| pasp) == - ++ parq :: non-empty partners - %+ cook - |=(a=(list partner) (~(gas in *(set partner)) a)) + ++ parz :: non-empty partners + %+ cook ~(gas in *(set partner)) (most ;~(plug com (star ace)) parn) :: - ++ parz :: partner set - %+ cook - |=(a=(list partner) (~(gas in *(set partner)) a)) - (more ;~(plug com (star ace)) parn) - :: ++ nump :: number reference ;~ pose (stag %& dem:ag) @@ -216,13 +210,13 @@ qut == :: - ;~((glue ace) (perk %join ~) parq) - ;~((glue ace) (perk %bind ~) glyph (punt parq)) - ;~((glue ace) (perk %what ~) ;~(pose parq glyph)) + ;~((glue ace) (perk %join ~) parz) + ;~((glue ace) (perk %bind ~) glyph (punt parz)) + ;~((glue ace) (perk %what ~) ;~(pose parz glyph)) :: ;~(plug (perk %help ~) (easy ~)) (stag %number nump) - (stag %target parz) + (stag %target ;~(pose parz glyph (easy ~))) == -- ++ sh-abet @@ -303,6 +297,8 @@ :: ++ sh-poss :: passive update |= lix=(set partner) + ?^ buf.say.she + +>.$ =+ sap=(sh-pare lix) ?: =(sap passive.she) +>.$ @@ -937,8 +933,19 @@ (join [[%& our.hid nom] ~ ~]) :: ++ target :: %target - |= lix=(set partner) - (sh-pact lix) + |= lix=?((set partner) char) + ?~ lix (sh-pact lix) + ?^ lix (sh-pact lix) + =+ lax=(~(get ju nak) lix) + ?: =(~ lax) (sh-note "unknown {}") + ?: ?=([* ~ ~] lax) (sh-pact n.lax) + |- ^- sh-pact + ?~ grams.roy + (sh-note:(what lix) "ambiguous {}") + =+ pan=(sa (turn :_(head (~(tap by q.q.i.grams.roy))))) + ?: (~(has in lax) pan) + (sh-pact pan) + $(grams.roy t.grams.roy) :: ++ number :: %number |= [rel=? num=@ud]