Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- This generator:
- /? 310
- ::
- !:
- ::
- :- %say |= *
- :- %noun
- =< (~(urn by netwerk) network-to-json) :: I think I just misunderstood how +-urn:by works.
- |%
- ++ network (map @p (set @p))
- ::
- ++ netwerk
- ^- network
- %- ~(gas by *(map @p (set @p)))
- :~ [~lorrem-mipsum (~(gas in *(set @p)) ~zod ~syx ~sev ~ten ~lev ~wel ~)]
- [~tonlur-sarret (~(gas in *(set @p)) ~zod ~syx ~sev ~ten ~lev ~wel ~)]
- ==
- ::
- ++ network-to-json
- |= a/(pair @p (set @p))
- ^- json
- %- jobe
- ^- (list {p/@t q/json})
- :~ :- `@t`(scot %p p.a)
- ^- json
- :- %a
- ^- (list json)
- %+ turn (~(tap in q.a))
- |= friend/@p
- [%s `@t`(scot %p friend)]
- ==
- ::
- --
- gave me this:
- > +mesh-gen
- { [ p=~tonlur-sarret
- q
- [ %o
- p
- { [ p='~tonlur-sarret'
- q=[%a p=~[[%s p='~wel'] [%s p='~lev'] [%s p='~ten'] [%s p='~syx'] [%s p='~zod'] [%s p='~sev']]]
- ]
- }
- ]
- ]
- [ p=~lorrem-mipsum
- q
- [ %o
- p
- { [ p='~lorrem-mipsum'
- q=[%a p=~[[%s p='~wel'] [%s p='~lev'] [%s p='~ten'] [%s p='~syx'] [%s p='~zod'] [%s p='~sev']]]
- ]
- }
- ]
- ]
- }
- *Notice how the `p` values are @p, not @t (which is needed for ++jobe to convert to JSON).*
- And then trying to `urb.bind` to my :mesh app gives me this stack trace:
- exit
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.103 15].[11.134 57]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.104 15].[11.134 57]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.105 15].[11.134 57]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.107 15].[11.134 57]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.109 15].[11.134 57]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.109 29].[11.109 44]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.174 3].[11.179 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.176 3].[11.179 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.177 3].[11.179 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/hoon
- <[11.178 5].[11.178 47]>
- [%swim-take-vane %e %unto ~]
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.005 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.006 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.007 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.008 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.009 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.010 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.011 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.012 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.013 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.014 3].[2.017 13]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.015 5].[2.016 64]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[2.016 5].[2.016 64]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[748 5].[889 7]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[749 5].[889 7]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[750 5].[889 7]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[752 5].[889 7]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[772 7].[786 9]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[773 7].[786 9]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[774 7].[786 9]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[780 9].[783 64]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[783 9].[783 64]>
- /~lorrem-mipsum/home/~2017.4.18..18.33.53..14b7/arvo/eyre:<[783 40].[783 63]>
- %hard
- [%dead-request ~[//http/0v18.imma8/43/1]]
- which makes sense since it's not valid JSON. (but should this still crash in %eyre?)
- But running this generator:
- /? 310
- ::
- !:
- ::
- :- %say |= *
- :- %noun
- =< %+ turn (~(tap by netwerk)) network-to-json :: Changed; this works.
- |%
- ++ network (map @p (set @p))
- ::
- ++ netwerk
- ^- network
- %- ~(gas by *(map @p (set @p)))
- :~ [~lorrem-mipsum (~(gas in *(set @p)) ~zod ~syx ~sev ~ten ~lev ~wel ~)]
- [~tonlur-sarret (~(gas in *(set @p)) ~zod ~syx ~sev ~ten ~lev ~wel ~)]
- ==
- ::
- ++ network-to-json
- |= a/(pair @p (set @p))
- ~& a
- ^- json
- %- jobe
- ^- (list {p/@t q/json})
- :~ :- `@t`(scot %p p.a)
- ^- json
- :- %a
- ^- (list json)
- %+ turn (~(tap in q.a))
- |= friend/@p
- [%s `@t`(scot %p friend)]
- ==
- ::
- --
- gave me what I wanted originally:
- > +mesh-gen
- ~[
- [ %o
- p
- { [ p='~lorrem-mipsum'
- q=[%a p=~[[%s p='~wel'] [%s p='~lev'] [%s p='~ten'] [%s p='~syx'] [%s p='~zod'] [%s p='~sev']]]
- ]
- }
- ]
- [ %o
- p
- { [ p='~tonlur-sarret'
- q=[%a p=~[[%s p='~wel'] [%s p='~lev'] [%s p='~ten'] [%s p='~syx'] [%s p='~zod'] [%s p='~sev']]]
- ]
- }
- ]
- ]
- and I can get that from the browser in my :mesh app via an `urb.bind` with this mesh.hoon:
- !:
- |%
- ++ network (map @p (set @p))
- ++ netwerk
- ^- network
- %- ~(gas by *(map @p (set @p)))
- :~ [~lorrem-mipsum (~(gas in *(set @p)) ~zod ~syx ~sev ~ten ~lev ~wel ~)]
- [~tonlur-sarret (~(gas in *(set @p)) ~zod ~syx ~sev ~ten ~lev ~wel ~)]
- ==
- ::
- --
- ::
- !:
- |_ {bow/bowl net/network}
- ::
- ++ prep _`.
- ::
- ++ network-to-json
- |= a/(pair @p (set @p))
- ~& a
- ^- json
- %- jobe
- ^- (list {p/@t q/json})
- :~ :- `@t`(scot %p p.a)
- ^- json
- :- %a
- ^- (list json)
- %+ turn (~(tap in q.a))
- |= friend/@p
- [%s `@t`(scot %p friend)]
- ==
- ::
- ++ peek
- |= {our/ship pax/path}
- :- %json
- `json`[%a %+ turn (~(tap by netwerk)) network-to-json
- ::
- ++ peer
- |= pax/path
- ?^ pax `+>
- [[ost.bow %diff (peek src.bow pax)]~ +>]
- ::
- --
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement