Not sure if you're doubting the explicit argument `PailFormatFactory/SEQUENCE_FILE` in the call to `PailSpec`. I'm not a fan of explicitly setting arguments inside a function, but I think it's better than forcing a user to pass in a name to the `spec` function. My thinking is:

- This is the way `PailSpec` does it. If you don't pass in a name, it defaults to `"SequenceFile"`. Those familiar with Pail will be used to this behavior.
- At the moment, `"SequenceFile"` is the only pre-defined format.
- Forcing user to pass a name into `spec` adds complexity without much gain, most users will probably end up partially applying `spec` every time they use the library. 
- Passing in a name to `PailSpec ` is the only way to get `PailSpec` to recognize the options. (commit message 862ab2c expands on this a little)
- The name must be `"SequenceFile"` else `PailSpec` ignores the options completely (nathanmarz/dfs-datastores#33). A name other than `"SequenceFile"` implies a custom implementation of `PailFormat`.

In my opinion, the correct way for `PailSpec` to handle this is to check for name and options parameters explicitly, if the name is empty and there are options present, use the default name `"SequenceFile"` and copy the options into the `PailSpec`. Unfortunately, Pail seems to be in sleep mode until the release of the Big Data book.