Before committing to a particular implementation strategy, take a look at
units:

http://docs.racket-lang.org/reference/mzlib_unit.html?q=unit

It might be the right tool for the job (but I am not completely sure).

/Jens Axel


2016-11-12 18:31 GMT+01:00 Matthew Butterick <[email protected]>:

>
> On Nov 11, 2016, at 11:48 AM, Joel Dueck <[email protected]> wrote:
>
> > I created a macro to help myself out as I consider adding a third and
> fourth output format to a Pollen project.
> >
> > I wrote about it at my Pollen-as-blog project here:
> https://thenotepad.org/posts/splitting-pollen-tags-with-racket-macros.html
> > Comments/criticism welcome.
>
>
> I like these ideas, and it suggests to me that Pollen could have some
> better tools built in for managing poly projects.
>
> After trying it this macro, my one thought was that using the
> `poly-branch-tag` macro requires naming the underlying tag functions in a
> certain way, which is potentially fragile (and requires escalating
> housekeeping).
>
> Here's an alternate — not necessarily better or preferable — approach
> where the macro takes as input the targets and the source files containing
> the tags:
>
> https://gist.github.com/mbutterick/caf88360fc0090305937ca54539054bc
>
> Invoked like so:
>
> (define-poly-tag-from-file root
>   [html "pollen-local/tags-html.rkt"]
>   [pdf "pollen-local/tags-pdf.rkt"])
>
> In this case, the tag functions are all defined using the same names. So
> the macro fetches the `root` function out of "pollen-local/tags-html.rkt"
> and uses it for the 'html branch of the poly tag; then fetches `root` out
> of "pollen-local/tags-html.rkt" and uses it for the 'pdf branch, etc.
>
>
> We could imagine a second macro that stacks on top of this one to generate
> other poly tags en masse:
>
> (define-syntax-rule (my-poly-tags ID ...)
>   (begin
>     (define-poly-tag-from-file ID
>       [html "pollen-local/tags-html.rkt"]
>       [pdf "pollen-local/tags-pdf.rkt"]) ...))
>
> (my-poly-tags p i emph b strong code)
>
>
> For that matter we could also imagine a macro that generates the call to
> `define-poly-tag-from-file` using the list of current poly targets, and a
> certain naming convention for the source files.
>
>
>
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Pollen" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>



-- 
-- 
Jens Axel Søgaard

-- 
You received this message because you are subscribed to the Google Groups 
"Pollen" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to