mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-12-27 00:44:27 +03:00
53 lines
724 B
Markdown
53 lines
724 B
Markdown
[semsem, `;;`, %smsm](#smsm)
|
|
============================
|
|
|
|
Fixpoint
|
|
|
|
`;;` is a synthetic hoon that types `q` as a fixpoint of `p`. More
|
|
specifically, `;;` slams `q` through gate `p`, asserting that the
|
|
resulting noun [`.=`]() the original, and produces it.
|
|
|
|
See also
|
|
--------
|
|
|
|
[`++hard`]()
|
|
|
|
Produces
|
|
--------
|
|
|
|
Twig: `[%smsm p=twig q=twig]`
|
|
|
|
Sample
|
|
------
|
|
|
|
`p` is a [twig](). `q` is a [twig]().
|
|
|
|
Tall form
|
|
---------
|
|
|
|
;; p
|
|
q
|
|
|
|
Wide form
|
|
---------
|
|
|
|
;;(p q)
|
|
|
|
Irregular form
|
|
--------------
|
|
|
|
None
|
|
|
|
Examples
|
|
--------
|
|
|
|
~zod/try=> ^-(tape ~[97 98 99])
|
|
! type-fail
|
|
! exit
|
|
~zod/try=> ;;(tape ~[97 98 99])
|
|
"abc"
|
|
~zod/try=> (tape [50 51 52])
|
|
"23"
|
|
~zod/try=> ;;(tape [50 51 52])
|
|
! exit
|