mirror of
https://github.com/urbit/shrub.git
synced 2024-12-20 17:32:11 +03:00
Merge remote-tracking branch 'origin/lf/ford-memory-shit' into philip/tomb
This commit is contained in:
commit
ef9521272a
@ -9,6 +9,17 @@
|
|||||||
:: worth noting that many of the clay-related structures are defined in zuse.
|
:: worth noting that many of the clay-related structures are defined in zuse.
|
||||||
::
|
::
|
||||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
=/ bud
|
||||||
|
^~
|
||||||
|
=/ zuse !>(..zuse)
|
||||||
|
:* zuse=zuse
|
||||||
|
nave=(slap zuse !,(*hoon nave:clay))
|
||||||
|
cork=(slap zuse !,(*hoon cork))
|
||||||
|
same=(slap zuse !,(*hoon same))
|
||||||
|
mime=(slap zuse !,(*hoon mime))
|
||||||
|
cass=(slap zuse !,(*hoon cass:clay))
|
||||||
|
==
|
||||||
|
::
|
||||||
|= our=ship
|
|= our=ship
|
||||||
=, clay
|
=, clay
|
||||||
=> |%
|
=> |%
|
||||||
@ -540,7 +551,7 @@
|
|||||||
:_ nub
|
:_ nub
|
||||||
^- vase :: vase of nave
|
^- vase :: vase of nave
|
||||||
%+ slap
|
%+ slap
|
||||||
(with-faces deg+deg tub+tub but+but cor+cor nave+!>(nave) ~)
|
(with-faces deg+deg tub+tub but+but cor+cor nave+nave.bud ~)
|
||||||
!, *hoon
|
!, *hoon
|
||||||
=/ typ _+<.cor
|
=/ typ _+<.cor
|
||||||
=/ dif diff:deg
|
=/ dif diff:deg
|
||||||
@ -561,7 +572,7 @@
|
|||||||
--
|
--
|
||||||
:_ nub
|
:_ nub
|
||||||
^- vase :: vase of nave
|
^- vase :: vase of nave
|
||||||
%+ slap (slop (with-face cor+cor) !>(..zuse))
|
%+ slap (slop (with-face cor+cor) zuse.bud)
|
||||||
!, *hoon
|
!, *hoon
|
||||||
=/ typ _+<.cor
|
=/ typ _+<.cor
|
||||||
=/ dif _*diff:grad:cor
|
=/ dif _*diff:grad:cor
|
||||||
@ -604,9 +615,10 @@
|
|||||||
=. marks.cache.nub (~(put by marks.cache.nub) mak [dais.res top])
|
=. marks.cache.nub (~(put by marks.cache.nub) mak [dais.res top])
|
||||||
[dais.res nub]
|
[dais.res nub]
|
||||||
=^ nav=vase nub (build-nave mak)
|
=^ nav=vase nub (build-nave mak)
|
||||||
:: ~> %slog.0^leaf/"ford: make dais {<mak>}"
|
::~> %slog.0^leaf/"ford: make dais {<mak>}"
|
||||||
:_ nub
|
:_ nub
|
||||||
^- dais
|
^- dais
|
||||||
|
=> [..zuse nav=nav]
|
||||||
|_ sam=vase
|
|_ sam=vase
|
||||||
++ diff
|
++ diff
|
||||||
|= new=vase
|
|= new=vase
|
||||||
@ -625,8 +637,8 @@
|
|||||||
=/ res=vase
|
=/ res=vase
|
||||||
%+ slam (slap nav limb/%mash)
|
%+ slam (slap nav limb/%mash)
|
||||||
%+ slop
|
%+ slop
|
||||||
:(slop !>(ship.a) !>(desk.a) diff.a)
|
:(slop =>([..zuse ship.a] !>(+)) =>([..zuse desk.a] !>(+)) diff.a)
|
||||||
:(slop !>(ship.b) !>(desk.b) diff.b)
|
:(slop =>([..zuse ship.b] !>(+)) =>([..zuse desk.b] !>(+)) diff.b)
|
||||||
?~ q.res
|
?~ q.res
|
||||||
~
|
~
|
||||||
`(slap res !,(*hoon ?>((^ .) u)))
|
`(slap res !,(*hoon ?>((^ .) u)))
|
||||||
@ -644,7 +656,7 @@
|
|||||||
^- [vase state]
|
^- [vase state]
|
||||||
~| error-building-cast+[a b]
|
~| error-building-cast+[a b]
|
||||||
?: =([%mime %hoon] [a b])
|
?: =([%mime %hoon] [a b])
|
||||||
:_(nub !>(|=(m=mime q.q.m)))
|
:_(nub =>(..zuse !>(|=(m=mime q.q.m))))
|
||||||
?^ got=(~(get by casts.cache.nub) [a b])
|
?^ got=(~(get by casts.cache.nub) [a b])
|
||||||
=? stack.nub ?=(^ stack.nub)
|
=? stack.nub ?=(^ stack.nub)
|
||||||
stack.nub(i (~(uni in i.stack.nub) dez.u.got))
|
stack.nub(i (~(uni in i.stack.nub) dez.u.got))
|
||||||
@ -688,7 +700,7 @@
|
|||||||
?: ?=(%& -.rab)
|
?: ?=(%& -.rab)
|
||||||
(compose-casts a !<(mark p.rab) b)
|
(compose-casts a !<(mark p.rab) b)
|
||||||
?: ?=(%noun b)
|
?: ?=(%noun b)
|
||||||
:_(nub !>(|=(* +<)))
|
:_(nub same.bud)
|
||||||
~|(no-cast-from+[a b] !!)
|
~|(no-cast-from+[a b] !!)
|
||||||
::
|
::
|
||||||
++ compose-casts
|
++ compose-casts
|
||||||
@ -698,7 +710,7 @@
|
|||||||
=^ dos=vase nub (build-cast y z)
|
=^ dos=vase nub (build-cast y z)
|
||||||
:_ nub
|
:_ nub
|
||||||
%+ slap
|
%+ slap
|
||||||
(with-faces uno+uno dos+dos cork+!>(cork) ~)
|
(with-faces uno+uno dos+dos cork+=>([..zuse cork] !>(+)) ~)
|
||||||
!,(*hoon (cork uno dos))
|
!,(*hoon (cork uno dos))
|
||||||
:: +build-tube: produce a $tube mark conversion gate from .a to .b
|
:: +build-tube: produce a $tube mark conversion gate from .a to .b
|
||||||
::
|
::
|
||||||
@ -720,7 +732,7 @@
|
|||||||
[tube.res nub]
|
[tube.res nub]
|
||||||
=^ gat=vase nub (build-cast a b)
|
=^ gat=vase nub (build-cast a b)
|
||||||
:: ~> %slog.0^leaf/"ford: make tube {<a>} -> {<b>}"
|
:: ~> %slog.0^leaf/"ford: make tube {<a>} -> {<b>}"
|
||||||
:_(nub |=(v=vase (slam gat v)))
|
:_(nub =>([..zuse gat=gat] |=(v=vase (slam gat v))))
|
||||||
::
|
::
|
||||||
++ lobe-to-page
|
++ lobe-to-page
|
||||||
|= =lobe
|
|= =lobe
|
||||||
@ -771,7 +783,7 @@
|
|||||||
?: =(%hoon p.page)
|
?: =(%hoon p.page)
|
||||||
:_(nub [%hoon -:!>(*@t) q.page])
|
:_(nub [%hoon -:!>(*@t) q.page])
|
||||||
?: =(%mime p.page)
|
?: =(%mime p.page)
|
||||||
:_(nub [%mime !>(;;(mime q.page))])
|
:_(nub [%mime =>([..zuse ;;(mime q.page)] !>(+))])
|
||||||
=^ =dais nub (build-dais p.page)
|
=^ =dais nub (build-dais p.page)
|
||||||
:_(nub [p.page (vale:dais q.page)])
|
:_(nub [p.page (vale:dais q.page)])
|
||||||
::
|
::
|
||||||
@ -794,7 +806,7 @@
|
|||||||
=/ txt=wain (to-wain:format ;;(@t q.old))
|
=/ txt=wain (to-wain:format ;;(@t q.old))
|
||||||
=+ ;;(dif=(urge cord) q.diff)
|
=+ ;;(dif=(urge cord) q.diff)
|
||||||
=/ new=@t (of-wain:format (lurk:differ txt dif))
|
=/ new=@t (of-wain:format (lurk:differ txt dif))
|
||||||
:_(nub [%hoon !>(new)])
|
:_(nub [%hoon =>([..zuse new] !>(+))])
|
||||||
=^ dys=dais nub (build-dais p.old)
|
=^ dys=dais nub (build-dais p.old)
|
||||||
=^ syd=dais nub (build-dais p.diff)
|
=^ syd=dais nub (build-dais p.diff)
|
||||||
:_(nub [p.old (~(pact dys (vale:dys q.old)) (vale:syd q.diff))])
|
:_(nub [p.old (~(pact dys (vale:dys q.old)) (vale:syd q.diff))])
|
||||||
@ -868,7 +880,7 @@
|
|||||||
::
|
::
|
||||||
++ run-pile
|
++ run-pile
|
||||||
|= =pile
|
|= =pile
|
||||||
=/ sut=vase !>(..zuse)
|
=/ sut=vase zuse.bud
|
||||||
=^ sut=vase nub (run-tauts sut %sur sur.pile)
|
=^ sut=vase nub (run-tauts sut %sur sur.pile)
|
||||||
=^ sut=vase nub (run-tauts sut %lib lib.pile)
|
=^ sut=vase nub (run-tauts sut %lib lib.pile)
|
||||||
=^ sut=vase nub (run-raw sut raw.pile)
|
=^ sut=vase nub (run-raw sut raw.pile)
|
||||||
@ -4977,14 +4989,51 @@
|
|||||||
%+ turn (sort ~(tap by dos.rom.ruf) aor)
|
%+ turn (sort ~(tap by dos.rom.ruf) aor)
|
||||||
|= [=desk =dojo]
|
|= [=desk =dojo]
|
||||||
:+ desk %|
|
:+ desk %|
|
||||||
|
|^
|
||||||
:~ ankh+&+ank.dom.dojo
|
:~ ankh+&+ank.dom.dojo
|
||||||
mime+&+mim.dom.dojo
|
mime+&+mim.dom.dojo
|
||||||
ford-files+&+files.fod.dom.dojo
|
ford-files+|+files
|
||||||
ford-naves+&+naves.fod.dom.dojo
|
ford-naves+|+naves
|
||||||
ford-marks+&+marks.fod.dom.dojo
|
ford-marks+|+marks
|
||||||
ford-casts+&+casts.fod.dom.dojo
|
ford-casts+|+casts
|
||||||
ford-tubes+&+tubes.fod.dom.dojo
|
ford-tubes+|+tubes
|
||||||
==
|
==
|
||||||
|
++ marks
|
||||||
|
^- (list mass)
|
||||||
|
%+ turn (sort ~(tap by marks.fod.dom.dojo) aor)
|
||||||
|
|= [=mark res=*]
|
||||||
|
^- mass
|
||||||
|
[mark %& res]
|
||||||
|
::
|
||||||
|
++ casts
|
||||||
|
^- (list mass)
|
||||||
|
%+ turn (sort ~(tap by casts.fod.dom.dojo) aor)
|
||||||
|
|= [=mars res=*]
|
||||||
|
^- mass
|
||||||
|
[`@t`(rap 3 [a '-' b ~]:mars) %& res]
|
||||||
|
::
|
||||||
|
++ naves
|
||||||
|
^- (list mass)
|
||||||
|
%+ turn (sort ~(tap by naves.fod.dom.dojo) aor)
|
||||||
|
|= [=mark res=*]
|
||||||
|
^- mass
|
||||||
|
[mark %& res]
|
||||||
|
::
|
||||||
|
++ tubes
|
||||||
|
^- (list mass)
|
||||||
|
%+ turn (sort ~(tap by tubes.fod.dom.dojo) aor)
|
||||||
|
|= [=mars res=*]
|
||||||
|
^- mass
|
||||||
|
[`@t`(rap 3 [a '-' b ~]:mars) %& res]
|
||||||
|
::
|
||||||
|
|
||||||
|
++ files
|
||||||
|
^- (list mass)
|
||||||
|
%+ turn (sort ~(tap by files.fod.dom.dojo) aor)
|
||||||
|
|= [=path res=*]
|
||||||
|
^- mass
|
||||||
|
[(spat path) %& res]
|
||||||
|
--
|
||||||
:~ domestic+|+domestic
|
:~ domestic+|+domestic
|
||||||
foreign+&+hoy.ruf
|
foreign+&+hoy.ruf
|
||||||
:+ %object-store %|
|
:+ %object-store %|
|
||||||
|
Loading…
Reference in New Issue
Block a user