1. single-home %dill
++ all-axle ?(axle) ::
++ axle ::
$: $0 ::
- ore/(unit ship) :: identity once set
hey/(unit duct) :: default duct
dug/(map duct axon) :: conversations
$= hef :: other weights
=> |%
++ as :: per cause
=| moz/(list move)
- |_ $: {hen/duct our/ship}
- axon
- ==
+ |_ [hen=duct axon]
++ abet :: resolve
^- {(list move) axle}
[(flop moz) all(dug (~(put by dug.all) hen +<+))]
^- mass
:- %dill
:- %|
- :~ all+[%& [ore hey dug]:all]
+ :~ all+[%& [hey dug]:all]
==
::
++ wegt
++ ax :: make ++as
|= hen/duct
^- (unit _as)
- ?~ ore.all ~
=/ nux (~(get by dug.all) hen)
?~ nux ~
- (some ~(. as [hen u.ore.all] u.nux))
+ (some ~(. as hen u.nux))
--
|% :: poke+peek pattern
++ call :: handle request
::
?: ?=(%init -.task)
?> =(~ dug.all)
- ?> =(~ ore.all)
- =. ore.all `p.task
:: configure new terminal, setup :hood and %clay
::
- =* our p.task
=* duc (need hey.all)
=/ app %hood
=/ see (tuba "<awaiting {(trip app)}, this may take a minute>")
=/ zon=axon [app input=[~ ~] width=80 cursor=0 see]
::
- =^ moz all abet:(~(into as [duc our] zon) ~)
+ =^ moz all abet:(~(into as duc zon) ~)
[moz ..^$]
:: %flog tasks are unwrapped and sent back to us on our default duct
::
::
=/ nus (ax hen)
?~ nus
- :: we got this on an unknown duct or
- :: before %boot or %init (or one of those crashed)
+ :: :hen is an unrecognized duct
+ :: could be before %boot (or %boot failed)
::
~& [%dill-call-no-flow hen -.task]
=/ tan ?:(?=(%crud -.task) q.task ~)
++ load :: trivial
|= old/all-axle
..^$(all old)
- :: |= old=* :: diable
- :: ..^$(ore.all `~zod)
::
++ scry
|= {fur/(unit (set monk)) ren/@tas why/shop syd/desk lot/coin tyl/path}
^+ [*(list move) ..^$]
=/ nus (ax hen)
?~ nus
- :: we got this on an unknown duct or
- :: before %boot or %init (or one of those crashed)
+ :: :hen is an unrecognized duct
+ :: could be before %boot (or %boot failed)
::
~& [%dill-take-no-flow hen -.q.hin +<.q.hin]
[~ ..^$]
