let

  foobar = "foobar";

in

{
  xyzzy2 ? xyzzy, # mutually recursive args
  xyzzy ? "blaat", # will be overridden by --argstr
  fb ? foobar,
  lib, # will be set by --arg
}:

{
  result = lib.concat [
    xyzzy
    xyzzy2
    fb
  ];
}
