Cabal-Install User Experience Feedback

Duncan Coutts duncan at haskell.org
Thu Aug 14 15:33:00 EDT 2008


On Thu, 2008-08-14 at 12:22 -0700, Jason Dagit wrote:

>         Can you suggest anything? Currently --help says:
>         
>            --enable-library-vanilla       Enable Vanilla libraries
>            --disable-library-vanilla      Disable Vanilla libraries
>          -p --enable-library-profiling     Enable Library profiling
>            --disable-library-profiling    Disable Library profiling
> 
> I was thinking something that makes mention that you get twice as much
> stuff.
> 
> -p --enable-library-profiling    Enable Library profiling and implies
> Vanilla libraries

Ah, but it doesn't. Each option is independent. You can build only
profiling if you --enable-library-profiling --disable-library-vanilla

> It seems very nit-picky to comment on the usage of vanilla, because
> really that that idiom should be widely understood, but I do it below
> anyway :)  So I assume vanilla is mostly used to contrast with
> profiling. I'm sort of assuming you can get _only_ the profiling
> library if you use -p --disable-library-vanilla.

Right, exactly. Yeah, I'm not so sure about "vanilla", perhaps
"ordinary" or some other word would be better.

> Perhaps, "implies" should be "also enables" or "in addition to".
> 
> I recall reading a research paper once about picking terms when
> designing command sets that reaffirms the intuition of making sure
> your commands are distinct opposites.  An example in the paper was
> that when designing a command set for giving directions you wouldn't
> pick "Left" and "Turn", you'd pick "Left" and "Right" because people
> remember opposites more easily.  Maybe that gives us a reason to not
> use vanilla, or even standard/regular.  I have a hard time finding
> antonyms for profile or instrumented (I tried some other word forms
> there off, still with no luck).  In that case I might prefer to see
> "standard" instead of vanilla.

So what should we use, given the semantics we have (which I think is the
right semantics).

In future we may well also gain other 'ways' of building a
library/executable. Other kinds of profiling, vectorisation etc. We want
to be able to enable/disable any combination of these.

Duncan




More information about the cabal-devel mailing list