shrub/pkg/arvo/sur/aquarium.hoon

86 lines
2.0 KiB
Plaintext
Raw Normal View History

2019-03-30 01:39:01 +03:00
:: Traditionally, ovo refers to an ovum -- (pair wire card) -- and ova
:: refers to a list of them. We have several versions of each of these
:: depending on context, so we do away with that naming scheme and use
:: the following naming scheme.
2019-03-07 10:31:14 +03:00
::
2019-03-30 01:39:01 +03:00
:: Every card is either an `event` or an `effect`. Prepended to this
2019-03-07 10:31:14 +03:00
:: is `unix` if it has no ship associated with it, or `aqua` if it
:: does. `timed` is added if it includes the time of the event.
::
:: Short names are simply the first letter of each word plus `s` if
:: it's a list.
::
2019-08-06 03:44:52 +03:00
/+ pill
=, pill-lib=pill
2019-02-06 05:21:41 +03:00
|%
++ ph-event
$% [%test-done p=?]
aqua-event
==
::
2019-08-06 03:44:52 +03:00
+$ unix-event unix-event:pill-lib
+$ dawn-event dawn-event:pill-lib
+$ pill pill:pill-lib
::
2019-03-06 23:22:37 +03:00
+$ aqua-event
$% [%init-ship who=ship keys=(unit dawn-event)]
2019-02-09 00:34:24 +03:00
[%pause-events who=ship]
2019-02-12 05:46:36 +03:00
[%snap-ships lab=term hers=(list ship)]
[%restore-snap lab=term]
2019-03-07 10:31:14 +03:00
[%event who=ship ue=unix-event]
2019-02-06 05:21:41 +03:00
==
::
2019-03-06 23:22:37 +03:00
+$ aqua-effects
2019-03-07 10:31:14 +03:00
[who=ship ufs=(list unix-effect)]
2019-02-06 05:21:41 +03:00
::
2019-03-06 23:22:37 +03:00
+$ aqua-events
2019-03-07 10:31:14 +03:00
[who=ship utes=(list unix-timed-event)]
2019-03-06 23:22:37 +03:00
::
+$ aqua-boths
2019-03-07 10:31:14 +03:00
[who=ship ub=(list unix-both)]
2019-03-06 23:22:37 +03:00
::
+$ unix-both
$% [%event unix-timed-event]
[%effect unix-effect]
==
::
2019-03-07 10:31:14 +03:00
+$ unix-timed-event [tym=@da ue=unix-event]
2019-03-06 23:22:37 +03:00
::
+$ unix-effect
2019-02-06 05:21:41 +03:00
%+ pair wire
$% [%blit p=(list blit:dill)]
[%send p=lane:ames q=@]
[%doze p=(unit @da)]
[%thus p=@ud q=(unit hiss:eyre)]
[%ergo p=@tas q=mode:clay]
2019-03-07 10:31:14 +03:00
[%sleep ~]
[%restore ~]
2019-04-14 05:51:46 +03:00
[%init ~]
2019-07-25 01:54:45 +03:00
[%request id=@ud request=request:http]
2019-02-06 05:21:41 +03:00
==
2019-03-08 08:15:42 +03:00
+$ vane-move
%+ pair bone
2019-03-07 10:31:14 +03:00
$% [%peer wire dock path]
[%pull wire dock ~]
==
::
++ aqua-vane-control-handler
2019-03-08 08:15:42 +03:00
|= [our=@p ost=bone subscribed=? command=?(%subscribe %unsubscribe)]
^- (list vane-move)
2019-03-07 10:31:14 +03:00
?- command
%subscribe
%+ weld
2019-03-08 08:15:42 +03:00
^- (list vane-move)
2019-03-07 10:31:14 +03:00
?. subscribed
~
2019-03-08 08:15:42 +03:00
[ost %pull /aqua [our %ph] ~]~
^- (list vane-move)
[ost %peer /aqua [our %ph] /effects]~
2019-03-07 10:31:14 +03:00
::
%unsubscribe
?. subscribed
~
2019-03-08 08:15:42 +03:00
[ost %pull /aqua [our %ph] ~]~
==
2019-02-06 05:21:41 +03:00
--