Various fixes and improvements.

This commit is contained in:
Curtis Yarvin 2018-08-20 10:54:35 -07:00
parent 3c45fc55de
commit ad4233004c
2 changed files with 70 additions and 35 deletions

View File

@ -1,36 +1,57 @@
:: "Hello world" sample generator
::
:::: /hoon/hello/gen
::
/? 310
::
::::
::
!:
^%
:- %say
|= *
=> |%
++ pki ^?
|%
:: the urbit meta-certificate (++will) is a sequence
:: of certificates (++cert). each cert in a will
:: revokes and replaces the previous cert. the
:: version number of a ship is a ++life.
::
:: the deed contains an ++arms, a definition
:: of cosmetic identity; a semi-trusted parent,
:: which signs the initial certificate and provides
:: routing services; and a dirty bit. if the dirty
:: bit is set, the new life of this ship may have
:: lost information that the old life had.
::
++ hair
|* {a/mold b/mold}
$: one/a
two/b
==
-- :: pki
--
:- %noun
"hello, world"
=- "hello, world"
|%
+$ scan [=loop=(map =@ud =xray) =xray]
+$ xray
$~ %noun
$@ $? %noun
%void
==
$% :: %bark: atom selection
::
[%bark =(map atom aura)]
:: %bush: head-of-cell superposition
::
[%bush wide=xray tall=xray]
:: %cell: ordered pair
::
[%cell head=xray tail=xray]
:: %core: functional attribute battery
::
[%core =vair =xray =(map term (map term xray))]
:: %face: namespace
::
[%face =term =xray]
:: %fork: disordered superposition
::
[%fork =(set xray)]
:: %hint: context-preserving type hint
::
[%hint [=type =note] =xray]
:: %knot: recursion root
::
[%knot =(set @ud) =xray]
:: %loop: recursion point
::
[%loop index=@ud]
:: %rock: constant
::
[%rock =atom =aura]
:: %root: atom/cell superposition
::
[%root flat=xray deep=xray]
:: %sand: variable atom
::
[%sand =aura]
:: %wood: tagged superposition
::
[%wood =(map atom (pair aura xray))]
==
++ foo
|= bar=xray
!!
--

View File

@ -50,10 +50,24 @@
[%wood =(map atom (pair aura xray))]
==
::
:: _ex: type analysis kernel
:: =realign: analyze superpositions
::
++ ex
|_ scan
++ realign
|= scan
^- ^xray
|^ ?@ xray xray
?- -.xray
%bark xray
%bush [%bush $(xray wide.xray) $(xray tall.xray)]
%core :^ %core
vair.xray
xray.xray
(~(run by map.xray) |=(xray ^$(xray +<)))
%face [%face term.xray
==
::
++ aura-merge
|= [=aura =aura]
?: =(aura ^aura) aura