urbit/main/app/solid/core.hook
2014-10-23 22:56:06 +00:00

54 lines
1.4 KiB
Plaintext

!:
|_ [hid=hide ~]
++ poke-solid-args
|= [ost=bone you=ship ~]
:_ +>.$
=+ top=`path`/(scot %p our.hid)/arvo/(scot %da lat.hid)
=+ pax=`path`(weld top `path`[%hoon ~])
~& %solid-start
=+ gen=(reck pax)
~& %solid-parsed
=+ ken=q:(~(mint ut %noun) %noun gen)
~& %solid-compiled
=+ ^= all
=+ all=.*(0 ken)
=+ ^= vay ^- (list ,[p=@tas q=@tas])
:~ [%$ %zuse]
[%g %gall]
[%f %ford]
[%a %ames]
[%c %clay]
[%d %dill]
[%e %eyre]
[%t %time]
==
|- ^+ all
?~ vay all
=+ pax=(weld top `path`[q.i.vay ~])
=+ txt=((hard ,@) .^(%cx (weld pax `path`[%hoon ~])))
=+ sam=[lat.hid `ovum`[[%gold ~] [%veer p.i.vay pax txt]]]
~& [%solid-veer i.vay]
=+ gat=.*(all .*(all [0 42]))
=+ nex=+:.*([-.gat [sam +>.gat]] -.gat)
$(vay t.vay, all nex)
:~ [ost %give %sage [%urbit %pill ~] [ken all]]
[ost %give %nice ~]
==
:: ~& %solid-jamming
:: =+ pac=(jam [ken all])
:: ~& %solid-finished
:: =+ nax=/(scot %p our.hid)/try/(scot %da lat.hid)/urbit/pill
:: :* [ost %pass /cp %c %info our.hid (foal nax pac)]
:: [ost %give %nice ~]
:: %+ turn (~(tap by sup.hid))
:: |= [ost=bone *]
:: :^ ost %give %rush
:: :- %tang :_ ~
:: leaf/"done"
:: ==
++ peer
|=
*
`+>
--