Discussion:
[urbit] /urb/ren
Galen Wolfe-Pauly
2016-06-06 00:55:34 UTC
Permalink
As per discussion on :talk, what inputs does a renderer take?

~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2016-06-06 04:21:17 UTC
Permalink
Specifically:

* what can a renderer expect in it's subject? (input)

* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Anton Dyudin
2016-06-06 15:29:48 UTC
Permalink
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.

Renderers will also have resource imports on top of that: apps&c ocean have
that too, but for renderers, % is set to the path being requested, so
e.g. /= raw /md/ in a ren/foo will give you my/bar.md if you're requesting
my/bar.foo. And one of the resource imports, which iirc everything else
/can't/ have, are /$ "arguments": eyre sticks the query string, revision,
and auth information into a coin-formatted tuple, which is then passed as a
value to the `fuel` in /$ fuel.

The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
.
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2016-06-06 15:43:02 UTC
Permalink
Is a renderer responsible for loading the requested file as well then, or
is it passed into the renderer.

Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c ocean
have that too, but for renderers, % is set to the path being requested, so
e.g. /= raw /md/ in a ren/foo will give you my/bar.md if you're
requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Anton Dyudin
2016-06-06 15:48:56 UTC
Permalink
I don't think I've encountered a renderer that was a gate? The requested
file is a path, and it is indeed the renderer's job to load that path by
zero or more specific marks.
Post by Jeremy Wall
Is a renderer responsible for loading the requested file as well then, or
is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c ocean
have that too, but for renderers, % is set to the path being requested, so
e.g. /= raw /md/ in a ren/foo will give you my/bar.md if you're
requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2016-06-06 16:00:20 UTC
Permalink
My bad i was misreading a renderer that used a gate internally.

Okay that jives with what I was thinking then.

I feel another hidduc guide forming.
Post by Anton Dyudin
I don't think I've encountered a renderer that was a gate? The requested
file is a path, and it is indeed the renderer's job to load that path by
zero or more specific marks.
Post by Jeremy Wall
Is a renderer responsible for loading the requested file as well then, or
is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c ocean
have that too, but for renderers, % is set to the path being requested, so
e.g. /= raw /md/ in a ren/foo will give you my/bar.md if you're
requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Galen
2016-06-06 16:26:58 UTC
Permalink
A guide to renderers would be fantastic.
Post by Jeremy Wall
My bad i was misreading a renderer that used a gate internally.
Okay that jives with what I was thinking then.
I feel another hidduc guide forming.
I don't think I've encountered a renderer that was a gate? The requested file is a path, and it is indeed the renderer's job to load that path by zero or more specific marks.
Is a renderer responsible for loading the requested file as well then, or is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
The ren's "subject" in the hoon `.` sense is zuse, a core of imported structures, and a core of imported libraries. This is similar to apps, marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c ocean have that too, but for renderers, % is set to the path being requested, so e.g. /= raw /md/ in a ren/foo will give you my/bar.md <http://bar.md/> if you're requesting my/bar.foo. And one of the resource imports, which iirc everything else /can't/ have, are /$ "arguments": eyre sticks the query string, revision, and auth information into a coin-formatted tuple, which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google Groups "urbit" group.
For more options, visit https://groups.google.com/d/optout <https://groups.google.com/d/optout>.
--
Jeremy Wall
http://jeremy.marzhillstudios.com <http://jeremy.marzhillstudios.com/>
--
You received this message because you are subscribed to the Google Groups "urbit" group.
For more options, visit https://groups.google.com/d/optout <https://groups.google.com/d/optout>.
--
Jeremy Wall
http://jeremy.marzhillstudios.com <http://jeremy.marzhillstudios.com/>
--
Jeremy Wall
http://jeremy.marzhillstudios.com <http://jeremy.marzhillstudios.com/>
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2016-06-08 01:44:17 UTC
Permalink
I'm attempting to do a simple renderer as an exploration but %ford is
complaining it can't find the file requested and I never hit the renderer
so I suspect I'm missing a step.

if I have a ren/foo.hoon and I attempt to request say
localhost:8080/dojo.foo perhaps what tells ford to render the
/web/dojo.hoon file there?
Post by Galen
A guide to renderers would be fantastic.
My bad i was misreading a renderer that used a gate internally.
Okay that jives with what I was thinking then.
I feel another hidduc guide forming.
Post by Anton Dyudin
I don't think I've encountered a renderer that was a gate? The requested
file is a path, and it is indeed the renderer's job to load that path by
zero or more specific marks.
Post by Jeremy Wall
Is a renderer responsible for loading the requested file as well then,
or is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c ocean
have that too, but for renderers, % is set to the path being requested, so
e.g. /= raw /md/ in a ren/foo will give you my/bar.md if you're
requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2016-06-08 01:51:48 UTC
Permalink
Never mind. the '/=' rune sets that up. Which was not at all clear. I would
not have expected putting a face on something would provide the mapping.
Which means, I suspect, that I don't really know how that mapping is
getting created.

Anton, Can you expand on that by chance?
Post by Jeremy Wall
I'm attempting to do a simple renderer as an exploration but %ford is
complaining it can't find the file requested and I never hit the renderer
so I suspect I'm missing a step.
if I have a ren/foo.hoon and I attempt to request say
localhost:8080/dojo.foo perhaps what tells ford to render the
/web/dojo.hoon file there?
Post by Galen
A guide to renderers would be fantastic.
My bad i was misreading a renderer that used a gate internally.
Okay that jives with what I was thinking then.
I feel another hidduc guide forming.
Post by Anton Dyudin
I don't think I've encountered a renderer that was a gate? The requested
file is a path, and it is indeed the renderer's job to load that path by
zero or more specific marks.
Post by Jeremy Wall
Is a renderer responsible for loading the requested file as well then,
or is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c ocean
have that too, but for renderers, % is set to the path being requested, so
e.g. /= raw /md/ in a ren/foo will give you my/bar.md if you're
requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Jeremy Wall
2016-06-09 02:46:04 UTC
Permalink
So as I understand it minimal render "foo" requires.

1. A renderer in ren/foo.hoon
That produces a typed noun in it's final twig.

2. A mark in mar/foo.hoon
That can convert from and to %mime.

A last pending question is: Are renderers used by %ford for anything other
than webpages?
Post by Jeremy Wall
Never mind. the '/=' rune sets that up. Which was not at all clear. I
would not have expected putting a face on something would provide the
mapping. Which means, I suspect, that I don't really know how that mapping
is getting created.
Anton, Can you expand on that by chance?
Post by Jeremy Wall
I'm attempting to do a simple renderer as an exploration but %ford is
complaining it can't find the file requested and I never hit the renderer
so I suspect I'm missing a step.
if I have a ren/foo.hoon and I attempt to request say
localhost:8080/dojo.foo perhaps what tells ford to render the
/web/dojo.hoon file there?
Post by Galen
A guide to renderers would be fantastic.
My bad i was misreading a renderer that used a gate internally.
Okay that jives with what I was thinking then.
I feel another hidduc guide forming.
Post by Anton Dyudin
I don't think I've encountered a renderer that was a gate? The
requested file is a path, and it is indeed the renderer's job to load that
path by zero or more specific marks.
Post by Jeremy Wall
Is a renderer responsible for loading the requested file as well then,
or is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of imported
structures, and a core of imported libraries. This is similar to apps,
marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c
ocean have that too, but for renderers, % is set to the path being
requested, so e.g. /= raw /md/ in a ren/foo will give you my/bar.md
if you're requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
***@marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Anton Dyudin
2016-06-09 02:51:22 UTC
Permalink
They are used by eyre and each other. Technically resource includes in
apps/generators/etc. can make use of them, like mar/urb pulling in
mar/urb/wasp-data.js, but that's not even doing any mark conversion.
Post by Jeremy Wall
So as I understand it minimal render "foo" requires.
1. A renderer in ren/foo.hoon
That produces a typed noun in it's final twig.
2. A mark in mar/foo.hoon
That can convert from and to %mime.
A last pending question is: Are renderers used by %ford for anything other
than webpages?
Post by Jeremy Wall
Never mind. the '/=' rune sets that up. Which was not at all clear. I
would not have expected putting a face on something would provide the
mapping. Which means, I suspect, that I don't really know how that mapping
is getting created.
Anton, Can you expand on that by chance?
Post by Jeremy Wall
I'm attempting to do a simple renderer as an exploration but %ford is
complaining it can't find the file requested and I never hit the renderer
so I suspect I'm missing a step.
if I have a ren/foo.hoon and I attempt to request say
localhost:8080/dojo.foo perhaps what tells ford to render the
/web/dojo.hoon file there?
Post by Galen
A guide to renderers would be fantastic.
My bad i was misreading a renderer that used a gate internally.
Okay that jives with what I was thinking then.
I feel another hidduc guide forming.
Post by Anton Dyudin
I don't think I've encountered a renderer that was a gate? The
requested file is a path, and it is indeed the renderer's job to load that
path by zero or more specific marks.
Post by Jeremy Wall
Is a renderer responsible for loading the requested file as well
then, or is it passed into the renderer.
Not all renderers are gates it looks like but some of them are.
Post by Anton Dyudin
The ren's "subject" in the hoon `.` sense is zuse, a core of
imported structures, and a core of imported libraries. This is similar to
apps, marks, or dojo generators.
Renderers will also have resource imports on top of that: apps&c
ocean have that too, but for renderers, % is set to the path being
requested, so e.g. /= raw /md/ in a ren/foo will give you my/bar.md
if you're requesting my/bar.foo. And one of the resource imports, which
iirc everything else /can't/ have, are /$ "arguments": eyre sticks the
query string, revision, and auth information into a coin-formatted tuple,
which is then passed as a value to the `fuel` in /$ fuel.
The output is the bottom twig in the file, as a marked + typed noun.
Post by Jeremy Wall
* what can a renderer expect in it's subject? (input)
* And what should a renderer produce? (output)
it seems to just produce the rendered output is that correct?
Post by Galen Wolfe-Pauly
As per discussion on :talk, what inputs does a renderer take?
~hidduc-posmeg= the interface it needs to support is not clear
~hidduc-posmeg= i get what it is meant to do i think.
~talsur-todres= the way i explain renderers
~talsur-todres= is that most web stacks
~talsur-todres= just do path-based routing
--------[5.240]
~talsur-todres= a renderer is like a router for a file-type
~talsur-todres= or a file-extension
~talsur-todres= and urb is just our default renderer
~hidduc-posmeg= yes that part is not hard to understand.
~hidduc-posmeg= but the interface they need to support is unclear
--------[5.245]
~hidduc-posmeg= what should a ren expect? and what should it produce?
~hidduc-posmeg= it looks like it just produces the output.
~hidduc-posmeg= but the inputs are not at all clear
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google
Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it,
For more options, visit https://groups.google.com/d/optout.
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
Jeremy Wall
http://jeremy.marzhillstudios.com
--
You received this message because you are subscribed to the Google Groups "urbit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to urbit-dev+***@googlegroups.com.
To post to this group, send email to urbit-***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Loading...