all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Christopher Allan Webber <cwebber@dustycloud.org>
To: Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>
Cc: guix-devel@gnu.org
Subject: Re: Composing service definitions (and maybe fmt)
Date: Tue, 19 Jan 2016 07:58:30 -0800	[thread overview]
Message-ID: <87fuxt5zh9.fsf@dustycloud.org> (raw)
In-Reply-To: <idjmvs1btk5.fsf@bimsb-sys02.mdc-berlin.net>

Ricardo Wurmus writes:

> Christopher Allan Webber <cwebber@dustycloud.org> writes:
>
>> (I've also thought that some sort of string reader similar to skribe's
>> [foo ,(bar)] string-quasiquoting may make things easier.  Might even be
>> complimentary...)
>
> I like this idea.  It seems unrealistic to me to have configuration file
> writers for each of the many ideosyncatic configuration file formats.

You're probably right.  It would be a lot of work to write that many
writers, and a lot to ingest every time.

> I also don’t enjoy having to concatenate strings to generate
> configuration files and I think that it would be useful if we had
> string-quasiquoting.

Yes, I think so.  It brings a lot of the advantages of other string
templating system without having some massively lossy DSl.

> But I think we need some example cases first.  My experiences is
> coloured by concatenating strings for udev rules.  That’s not nice, but
> I also would not want to have to learn a new Schemey way of expressing
> these rules — especially when I just want to copy them with minimal
> changes from documentation and don’t want to have to understand them
> first.

I agree that learning a bunch of writer functions for expressing rules
would *usually* just be too much to learn.  So maybe fmt is total
overkill.  (You can build lesser string generator functions yourself
that can be combined together anyhow, even if they aren't quite as
combinator'y.)

Though I think skribe-style string quasiquoting is not hard for a
schemer to learn.  I picked it up almost immediately.  And it's a lot
cleaner than the jinja2 style string templating I've grown accustomed to
from python web/deployment land.

  reply	other threads:[~2016-01-19 16:02 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-16 23:03 Composing service definitions (and maybe fmt) Christopher Allan Webber
2016-01-19 13:14 ` Ricardo Wurmus
2016-01-19 15:58   ` Christopher Allan Webber [this message]
2016-01-20  9:37     ` Ricardo Wurmus
2016-01-20 17:49       ` Christopher Allan Webber
2016-01-20 22:13         ` Ludovic Courtès
2016-01-21 14:12           ` Thompson, David
2016-01-21 21:27             ` Ludovic Courtès
2016-01-21 21:57               ` Christopher Allan Webber
2016-01-24 20:35                 ` Ludovic Courtès
2016-01-24 22:18                   ` Christopher Allan Webber

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87fuxt5zh9.fsf@dustycloud.org \
    --to=cwebber@dustycloud.org \
    --cc=guix-devel@gnu.org \
    --cc=ricardo.wurmus@mdc-berlin.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.