[m-dev.] Mercury's "Time to Hello World"

Paul Bone paul at bone.id.au
Mon Mar 25 22:32:20 AEDT 2013

On Mon, Mar 25, 2013 at 05:15:23PM +1100, Julien Fischer wrote:
> What makes you think those grades are unnecessary?  The problem with just
> installing a single grade sufficient to build hello world is this: immediately
> after building hello world a lot of users try the following:
>      $ mmc --debug hello
> or
>      $ mmc --decldebug hello
> or
>      $ mmc --parallel hello
> or
>      $ mmc --java hello

I agree with Micheal and Matt in general.  Specifically I think that
installing a single grade and the sources from which you can add extra
grades on demand is the right option.  Then when I do 'mmc --debug hello' I
should get a nice friendly message saying "A debug grade is not
configured, run 'sudo mercury-manager setup asm_fast.gc.debug" to install a
suitable one.

> The rationale for the default set of grades is this: it is the set of grades in
> most of the useful features and tools that make up Mercury are available, i.e.
>     -- support for trailing
>     -- support for parallelism and threads
>     -- support for debugging
>     -- support for declarative debugging
>     -- support for profiling
>     -- support for memory profiling
>     -- support for deep profiling
>     -- optionally, support for the Java, C# and Erlang backends

I also disagree with this.  If you have declative debugging you don't need
regular debugging as the former is a feature super-set without additional
cost.  And I'm pretty sure that deep profiling superseeds the other
profiling grades.

Paul Bone

More information about the developers mailing list