Work in progress.

This commit is contained in:
Curtis Yarvin 2018-04-23 19:29:20 -07:00
parent 353f36a43f
commit 4d0ca3d6f2

View File

@ -142,9 +142,9 @@
[%cell *] (cell p.sut q.sut) [%cell *] (cell p.sut q.sut)
[%core *] (core p.sut q.sut) [%core *] (core p.sut q.sut)
[%face *] (face p.sut q.sut) [%face *] (face p.sut q.sut)
[%form *] ?: ?=(%made -.q.p.sut) [%form *] =- ?~(- $(sut q.sut) [`-> load])
(reform(sut p.p.sut) p.q.p.sut) ?. ?=(%made -.q.p.sut) ~
$(sut q.sut) (reform(sut p.p.sut) p.q.p.sut)
[%fork *] (fork p.sut) [%fork *] (fork p.sut)
[%hold *] entry(sut ~(repo ut sut)) [%hold *] entry(sut ~(repo ut sut))
== ==
@ -152,16 +152,15 @@
:: +form: rationalize structure from type (stub) :: +form: rationalize structure from type (stub)
:: ::
++ reform ++ reform
|= =note |= [=type =spec]
^- [^spec _load] |- ^- (unit spec)
:_ load
|- ^- ^spec
:: reform a spec left as a type annotation :: reform a spec left as a type annotation
:: ::
?+ -.spec spec ?+ -.spec
:: incomplete %base spec
::
%dbug $(spec q.spec) %dbug $(spec q.spec)
%leaf spec
%loop spec
%like :: hub: type of context %like :: hub: type of context
:: poy: reference :: poy: reference
:: ::
@ -170,13 +169,10 @@
?~ q.spec [%$ 1] ?~ q.spec [%$ 1]
[%tsgl [%wing i.q.spec] $(q.spec t.q.spec)] [%tsgl [%wing i.q.spec] $(q.spec t.q.spec)]
=/ poy (~(fond ut hub) %free p.spec) =/ poy (~(fond ut hub) %free p.spec)
:: if we have a simple arm :: if, we have a simple arm, keep the spec
:: ::
?: ?=([%& * * %| *] poy) ?.(?=([%& * * %| *] poy) ~ `spec)
:: then keep the spec %make
::
spec
!!
== ==
:: ::
:: +atom: convert atomic type to spec :: +atom: convert atomic type to spec