mirror of
https://github.com/urbit/shrub.git
synced 2024-12-14 20:02:51 +03:00
46 lines
1.3 KiB
Plaintext
46 lines
1.3 KiB
Plaintext
!:
|
|
=> |%
|
|
++ norm
|
|
|* (pole ,_:/(*$&(_rule tape)))
|
|
?~ +< ~
|
|
=> .(+< [i=+<- t=+<+])
|
|
:_ t=$(+< t)
|
|
=+ rul=->->.i
|
|
^= i
|
|
?~ rul [%| p=rul]
|
|
?~ +.rul [%| p=rul]
|
|
?@ &2.rul [%| p=;;(tape rul)]
|
|
[%& p=rul]
|
|
++ parz
|
|
|* (list (each ,_rule tape))
|
|
?~ +< (easy ~)
|
|
?: ?=(| -.i) ;~(pfix (jest (crip p.i)) $(+< t))
|
|
%+ cook |*([* *] [i t]=+<)
|
|
;~(plug p.i $(+< t))
|
|
++ scanf
|
|
|* [tape (pole ,_:/(*$&(_rule tape)))]
|
|
=> .(+< [a b]=+<)
|
|
~! (scan "" (parz (norm ;"number {dim:ag}\-{dim:ag}")))
|
|
~! (norm ;"qwert{y/o/p/~}as{rule}d")
|
|
::=+ aaaa
|
|
%. (scan a (parz (norm b)))
|
|
|* (list)
|
|
?~ +< ~
|
|
?~ t i
|
|
[i $(+< t)]
|
|
--
|
|
|= ^
|
|
|= ~ :: [tape (pole ,_:/(*$&($+(nail edge) tape))) ~] ::$|(~ [p=gate ~])]
|
|
::=> .(+< [a=&1.+< b=&2.+<]) :: c=|2.+<])
|
|
=- ~[$/!>(res)]~
|
|
^= res
|
|
:::- (scanf a b)
|
|
:: (p.c ^+(+<.p.c (scanf a b)))
|
|
=+ n=;~(pfix (star (just '0')) (cook |=(@ud +<) dim:ag))
|
|
:- ^- @da %- year
|
|
=- `date`dat(- [%& -.dat], |6 ~[(div (mul |6.dat (bex 16)) 1.000)])
|
|
dat=(scanf "2014-08-12T02:11:57.030Z" ;"{n}\-{n}\-{n}T{n}:{n}:{n}.{n}Z")
|
|
=+ (scanf "It is 12:54, offset 2" ;"It is {n}:{n}, offset {n}")
|
|
~! -
|
|
`[p=@ q=@ r=@]`-
|