Functional build skeleton.

This commit is contained in:
C. Guy Yarvin 2014-07-20 20:15:02 -07:00
parent ac488f6225
commit 3378245281
7 changed files with 986 additions and 943 deletions

View File

@ -492,7 +492,7 @@
+>.$(hoc.saf (~(put by hoc.saf) her [[~31337.1.1 ~ wil] ~ *clot]))
::
++ lax :: lax:as:go
|_ [her=ship dur=door] :: per client
|_ [her=ship dur=dore] :: per client
++ cluy :: cluy:lax:as:go
^- [p=life q=gens r=acru] :: client crypto
?~ lew.wod.dur !!
@ -683,19 +683,19 @@
-- :: --zuul:lax:as:go
-- :: --lax:as:go
::
++ gur :: default door
++ gur :: default dore
|= her=ship
^- door
^- dore
=+ def=?.((lth her 256) ~ [~ %if ~2000.1.1 0 (mix her .0.0.1.0)])
[[~2100.1.1 def ~] ~ *clot]
::
++ myx :: door by ship
++ myx :: dore by ship
|= her=ship
^+ lax
=+ fod=(~(get by hoc.saf) her)
~(. lax [her ?~(fod (gur her) u.fod)])
::
++ nux :: install door
++ nux :: install dore
|= new=_lax
^+ +>
+>(hoc.saf (~(put by hoc.saf) her.new dur.new))

View File

@ -10,8 +10,14 @@
++ gift :: out result <-$
$% [%made p=(each bead (list tank))] :: computed result
== ::
++ heel path :: functional ending
++ hock :: standard label
$: [%c p=@ud] :: celsius version
[%k p=@ud] :: kelvin version
[%s p=@ud q=@ud r=@ud] :: semantic version
== ::
++ hood :: assembly plan
$: [how=beam rem=spur] :: beam and remainder
$: [how=beam rem=heel] :: beam and remainder
zus=@ud :: zuse kelvin
pro=(list hoof) :: protocols
lib=(list hoof) :: libraries
@ -131,6 +137,7 @@
|* sem=* :: a typesystem hack
|= cax=calx
?+ sem !!
%hood ?>(?=(%hood -.cax) r.cax)
%twig ?>(?=(%twig -.cax) r.cax)
%slap ?>(?=(%slap -.cax) r.cax)
==
@ -371,8 +378,8 @@
|= gef=gift
%_(+> mow :_(mow [hen %give gef]))
::
++ fade :: compile %hoo
|= [cof=cafe bem=beam rem=spur]
++ fade :: compile %hood
|= [cof=cafe bem=beam rem=heel]
^- (bolt hood)
=+ rul=(fair bem rem)
%+ (clef %hood) (make cof [%bake %hoon bem rem])
@ -401,8 +408,8 @@
(fine cof p.u.q.vex)
::
++ fair :: hood parsing rule
|= [bem=beam rem=spur]
=+ vez=(vang | (tope bem))
|= [bem=beam rem=heel]
=+ vez=(vang | (tope bem(s (weld rem s.bem))))
=< hood
|%
++ case
@ -413,10 +420,14 @@
[~ u=(^case a)]
::
++ hood
%+ ifix [gay gay]
%+ cook |=(a=^hood a)
%+ stag [bem rem]
;~ plug
(ifix [;~(plug pat wut gap) gap] dem)
;~ pose
(ifix [;~(plug pat wut gap) gap] dem)
(easy zuse)
==
hoos
hoos
(star hoop)
@ -502,14 +513,14 @@
(fine cof p.cay vax)
::
++ krab :: load to vase
|= [cof=cafe for=logo how=logo bem=beam rem=spur]
|= [cof=cafe for=logo how=logo bem=beam rem=heel]
^- (bolt vase)
%+ cope (fane cof %bake how bem rem)
|= [cof=cafe gen=twig]
(maim cof pit gen)
::
++ lace :: load and check
|= [cof=cafe for=logo bem=beam rem=spur]
|= [cof=cafe for=logo bem=beam rem=heel]
^- (bolt (unit vase))
=+ bek=`beak`[p.bem q.bem r.bem]
%+ cope (lend cof bem)
@ -537,7 +548,7 @@
|= [for=logo bek=beak]
|= [cof=cafe sam=vase]
^- (bolt (unit vase))
?: ?=(?(%gate %core %hoon %hook) for)
?: ?=(?(%gate %core %hoon %hook %hood) for)
(fine cof ~ sam)
%+ cope (make cof %boil %gate [[p.bek %main r.bek] /ref/[for]/sys] ~)
|= [cof=cafe cay=cage]
@ -600,7 +611,7 @@
(fine cof ?.(=(%hoon for) all [%hoot all]))
::
++ lima :: load at depth
|= [cof=cafe for=logo bem=beam rem=spur]
|= [cof=cafe for=logo bem=beam rem=heel]
^- (bolt (unit vase))
%+ cope (lend cof bem)
|= [cof=cafe arc=arch]
@ -620,7 +631,7 @@
(fine cof ~ vax)
::
++ lime :: load beam
|= [cof=cafe for=logo bem=beam rem=spur]
|= [cof=cafe for=logo bem=beam rem=heel]
=+ [mob=bem mer=(flop rem)]
|- ^- (bolt vase)
%+ cope (lima cof for mob (flop mer))
@ -811,7 +822,7 @@
==
::
++ meow :: assemble
|= [how=beam rem=spur]
|= [how=beam rem=heel]
=| $: rop=(map term (pair hoof twig)) :: protocols known
bil=(map term (pair hoof twig)) :: libraries known
lot=(list term) :: library stack
@ -864,7 +875,7 @@
?. =(`hoof`i.bir `hoof`p.u.byf)
(flaw cof [%leaf "protocol mismatch: {<~[cog p.u.byf i.bir]>}"]~)
$(bir t.bir)
=+ bem=(hone %pro i.bir)
=+ bem=(hone %gate %pro i.bir)
%+ cope (fade cof bem ~)
|= [cof=cafe hyd=hood]
%+ cope (apex(lot ~) cof hyd)
@ -881,12 +892,12 @@
?-(-.huf %here p.huf, %this p.huf, %that p.huf)
::
++ hone :: plant hoof
|= [way=@tas huf=hoof]
|= [for=@tas way=@tas huf=hoof]
^- beam
?- -.huf
%here how(s ~[p.huf way])
%this [[p.how %main q.huf] ~[p.huf way]]
%that [[r.huf %main q.huf] ~[p.huf way]]
%here how(s ~[for p.huf way])
%this [[p.how %main q.huf] ~[for p.huf way]]
%that [[r.huf %main q.huf] ~[for p.huf way]]
==
::
++ neck :: consume libraries
@ -902,7 +913,7 @@
?. =(`hoof`i.bir `hoof`p.u.byf)
(flaw cof [%leaf "library mismatch: {<~[cog p.u.byf i.bir]>}"]~)
$(bir t.bir)
=+ bem=(hone %lib i.bir)
=+ bem=(hone %core %lib i.bir)
%+ cope (fade cof bem ~)
|= [cof=cafe hyd=hood]
%+ cope (apex(zeg goz, boy ~) cof hyd)

File diff suppressed because it is too large Load Diff

View File

@ -20,12 +20,12 @@
=+ all=.*(0 ken)
=+ ^= vay ^- (list ,[p=@tas q=@tas])
:~ [%$ %zuse]
[%f %ford]
[%a %ames]
[%b %batz]
[%c %clay]
[%d %dill]
[%e %eyre]
[%f %ford]
[%g %gall]
==
|- ^+ all

36
main/doc/synth/down.hood Normal file
View File

@ -0,0 +1,36 @@
/? 314
!:
:::::: /hoon/down/synth/doc
::
=>
:::::: models
|%
++ down
$& [p=down q=down]
$% [%$ p=tape]
[%code p=tape]
[%inco p=tape]
[%head p=@ud q=down]
[%link p=tape q=tape r=(unit tape)]
[%lord p=(list down)]
[%lund p=(list down)]
[%parg p=down]
[%quot p=down]
[%rong p=down]
[%emph p=down]
[%hrul ~]
[%html p=tape]
==
--
:::::: generator
::
~& [%hood-at %]
%- (fest /synth/doc %)
|= pic=epic
=+ unt=|=(a=cord (biff (~(get by qix.pic) a) |=(b=cord (slaw %ud b))))
=+ moo=(both (unt %foo) (unt %bar))
?~ moo [%$ "Hoop, world: usage: url?foo=x&bar=y"]
:* [%$ "Hoop, "]
[%emph %$ "world"]
[%$ ": {<-.u.moo>} plus {<+.u.moo>} is {<(add u.moo)>}."]
==

View File

@ -1,10 +1,7 @@
!:
:::::: /hook/down/synth/doc
::
~& [%down-hook %path %]
%- (folk /down/synth/doc %)
|= [bem=beam but=path]
~& [%down-hook-beam s.bem]
~& [%down-hook-butt but]
:+ %ride [%reef ~]
[%drag bem but]

View File

@ -23,14 +23,13 @@
--
:::::: generator
::
~& [%down-hoon %path %]
~& [%choon-at %]
%- (fest /synth/doc %)
|= pic=epic
~& [%down-hook-butt but.pic]
=+ unt=|=(a=cord (biff (~(get by qix.pic) a) |=(b=cord (slaw %ud b))))
=+ moo=(both (unt %foo) (unt %bar))
?~ moo [%$ "Hello, world: usage: url?foo=x&bar=y"]
:* [%$ "Hello, "]
?~ moo [%$ "Hm, world: usage: url?foo=x&bar=y"]
:* [%$ "Hm, "]
[%emph %$ "world"]
[%$ ": {<-.u.moo>} plus {<+.u.moo>} is {<(add u.moo)>}."]
==