Really almost there.

This commit is contained in:
C. Guy Yarvin 2015-12-09 08:48:57 -08:00
parent 8fb3780e58
commit 26df7ded6e
7 changed files with 31 additions and 164 deletions

View File

@ -18,9 +18,9 @@
$helm ?>(?=($helm -.paw) `helm-part`paw) ::
$kiln ?>(?=($kiln -.paw) `kiln-part`paw) ::
== ::
++ hood-head ,_-:*hood-part ::
++ hood-head __(-:*hood-part) ::
++ hood-make ::
|* [our=@p hed=hood-head] ::
|* {our+@p hed+hood-head} ::
?- hed ::
$drum (drum-port our) ::
$helm *helm-part ::
@ -36,7 +36,7 @@
:::: :: ::
:: :: ::
|_ $^
$: hid+bowl :: system state
_: hid+bowl :: system state
hood-0 :: server state
== ::
++ able :: find/make part
@ -75,15 +75,15 @@
=> .(+< [identity start finish]=+<)
=- [wrap=- *start] :: usage (wrap handle-arm):from-foo
|* handle+__(finish)
|= _+<.handle
|= __(+<.handle)
=. +>.handle (start hid (able identity))
(ably (handle +<))
::
++ from-drum (from-lib %drum [..$ ,_se-abet]:(drum))
++ from-helm (from-lib %helm [..$ ,_abet]:(helm))
++ from-kiln (from-lib %kiln [..$ ,_abet]:(kiln))
++ from-drum (from-lib %drum [..$ __(se-abet)]:(drum))
++ from-helm (from-lib %helm [..$ __(abet)]:(helm))
++ from-kiln (from-lib %kiln [..$ __(abet)]:(kiln))
::
++ init-helm |=([way=wire *] [~ +>])
++ init-helm |=({way+wire *} [~ +>])
++ made-kiln (wrap take-made):from-kiln
++ mere-kiln (wrap take-mere):from-kiln
++ mere-kiln-sync (wrap take-mere-sync):from-kiln

View File

@ -1896,7 +1896,8 @@
::
++ load :: highly forgiving
|= old=axle
..^$(+>- old)
:: ..^$(+>- old)
..^$
::=. old
:: ?. ?=([%0 *] old) old :: remove at 1
:: :- %1

View File

@ -9565,16 +9565,11 @@
(stag %dtts ;~(pfix tis (ifix [pel per] ;~(glam wide wide))))
:- '?'
;~ pose
%+ stag %bccm
(stag %fern ;~(pfix wut (ifix [pel per] (most ace toil))))
:: (stag %cbwt ;~(pfix wut (ifix [pel per] (most ace wide))))
::
(stag %cbwt ;~(pfix wut (ifix [pel per] (most ace wide))))
(cold [%cbzz %bean] wut)
==
:- '['
rupl
:- ','
(stag %bccm ;~(pfix com hill))
:- '^'
;~ pose
(stag %cnzz rope)
@ -9656,72 +9651,13 @@
==
==
++ sump (ifix [kel ker] (stag %cltr (most ace wide)))
:: ++ noil
:: |= tol=?
:: =< ;~ pfix buc
:: %- stew
:: ^. stet ^. limo
:: :~
:: ['^' (rung ket %herb exqd)]
:: ==
:: ==
:: |%
:: ++ toad
:: |* har=__(exqa)
:: =+ dur=(ifix [pel per] $:har(tol |))
:: ?:(tol ;~(pose ;~(pfix gap $:har(tol &)) dur) dur)
:: ::
:: ++ rung
:: |* {dif+rule tuq+* har+__(exqa)}
:: ;~(pfix dif (stag tuq (toad har)))
:: ::
:: ++ gunk ~+((glue muck))
:: ++ muck ?:(tol gap ace)
:: ++ butt |*(zor=rule ?:(tol ;~(sfix zor ;~(plug gap duz)) zor))
:: ++ loaf ?:(tol howl toil)
:: ++ lobe ?:(tol tall wide)
:: ++ exqa |.(loaf)
:: ++ exqb |.(;~(gunk loaf loaf))
:: ++ exqc |.((butt (most muck loaf)))
:: ++ exqd |.(lobe)
:: ++ exqe |.(;~(gunk sym loaf))
:: --
++ noil
|= tol=?
=< ;~ pfix buc
%- stew
^. stet ^. limo
:~
['|' (rung bar %reed exqb)]
['&' (rung pam %bush exqb)]
['?' (rung wut %fern exqc)]
['_' (rung cab %weed exqd)]
['^' (rung ket %herb exqd)]
['=' (rung tis %bark exqe)]
:- '+'
%+ cook
|=({a+tile b+tile} [%weed [%brls a [%bctr b]]])
;~(pfix lus (toad exqb))
:- '%'
;~ pfix cen
%+ sear
|= a=(list tile) ^- (unit tile)
=- ?~(b ~ ?~(u.b ~ [~ %kelp i.u.b t.u.b]))
^= b
|- ^- (unit (list line))
?~ a [~ ~]
=+ c=$(a t.a)
?~ c ~
?. ?=({{$leaf *} *} i.a) ~
[~ [p.i.a q.i.a] u.c]
(toad exqc)
==
:- ':'
;~ pfix col
%+ cook
|=(a+(list tile) ?~(a !! ?~(t.a i.a [i.a $(a t.a)])))
(toad exqc)
==
==
==
|%
@ -10186,113 +10122,43 @@
^. stet ^. limo
:~
:- '%'
;~ pfix cen
;~ pose
(stag %leaf (stag %tas (cold %$ buc)))
(stag %leaf (stag %f (cold & pam)))
(stag %leaf (stag %f (cold | bar)))
(stag %leaf (stag %t qut))
%+ cook
|= lot=coin ^- tile
?- -.lot
$~ [%leaf p.lot]
$blob
?@(p.lot [%leaf %$ p.lot] [$(p.lot -.p.lot) $(p.lot +.p.lot)])
::
$many
?~(p.lot [%leaf %n ~] [$(lot i.p.lot) $(p.lot t.p.lot)])
==
nuck:so
==
==
fail
:- '&'
(stag %leaf (stag %f (cold & pam)))
fail
:- '*'
(cold [%axil %noun] tar)
(stag %herb wide)
:- '?'
;~ pose
(stag %fern ;~(pfix wut (ifix [pel per] (most ace toil))))
(stag %axil (cold %bean wut))
==
(stag %herb wide)
:- '@'
;~(pfix pat (stag %axil (stag %atom mota)))
(stag %herb wide)
:- '^'
;~ pose
(stag %herb (stag %cnzz rope))
(cold [%axil %cell] ket)
==
(stag %herb wide)
:- '('
(stag %herb wide)
:- '{'
(stag %herb wide)
:- '.'
(stag %herb (stag %cnzz rope))
:- '['
%+ ifix [sel ser]
%+ cook
|= a+(list tile)
?~(a !! ?~(t.a i.a [i.a $(a t.a)]))
(most ace toil)
:- '_'
;~ pose
(stag %weed ;~(pfix cab wide))
(stag %herb wide)
==
:- '['
fail
:- '_'
(stag %herb wide)
:- ['0' '9']
(stag %leaf bisk:so)
fail
:- ['a' 'z']
;~ pose
%+ sear
|=(a+tile `(unit tile)`~)
(stag %bark ;~(plug sym ;~(pfix tis toil)))
(stag %herb wide)
==
:- '$'
;~ pose
(noil |)
(stag %herb wide)
==
:- '|'
(stag %leaf (stag %f (cold | bar)))
fail
:- '~'
(stag %leaf (stag %n (cold ~ sig)))
fail
==
:: ++ toil
:: %+ knee *tile |. ~+
:: %- stew
:: ^. stet ^. limo
:: :~
:: :- '%'
:: fail
:: :- '&'
:: fail
:: :- '*'
:: (stag %herb wide)
:: :- '?'
:: (stag %herb wide)
:: :- '@'
:: (stag %herb wide)
:: :- '^'
:: (stag %herb wide)
:: :- '('
:: (stag %herb wide)
:: :- '{'
:: (stag %herb wide)
:: :- '.'
:: (stag %herb wide)
:: :- '['
:: fail
:: :- '_'
:: (stag %herb wide)
:: :- ['0' '9']
:: fail
:: :- ['a' 'z']
:: (stag %herb wide)
:: :- '$'
:: (stag %herb wide)
:: :- '|'
:: fail
:: :- '~'
:: fail
:: ==
++ wart
|* zor=rule
%+ here

View File

@ -1,4 +1,4 @@
::
::
:::: /hoon/sole/sur
!:
|%