Another clm problem

John van Groningen johnvg@cs.kun.nl
Tue, 2 Mar 1999 17:49:28 +0100


>Here's the problem I ran into with Clean 1.3 on Solaris.
>
>        clm Neural2
>=>
>        Compiling Neural2
>        Command line error: unknown flag -i
>        Usage: 'cocl [options] [-o file] file'
>        Options: <<deleted>>
>
>But _I_ haven't supplied any -i flag, and when I compile another
>file, this doesn't happen.  Reinstalling Clean 1.3 didn't help.

I have never seen this error before. The compiler (cocl) no longer supports -i in Clean 1.3.2, but probably did in Clean 1.3. May be you are using clm from Clean 1.3 and cocl from 1.3.2.

If installing Clean 1.3.2 does not solve this problem, please report this bug to clean@cs.kun.nl.

>The program does no IO.  It's my neural net program stuffed into one
>file and trimmed down a bit.  I was hoping that seeing it all as one
>file might help the compiler a bit.

This may help if:

- Overloaded functions are exported (a function type with a '|' in a .dcl file). If the caller and callee are in the same module, the compiler can generate a specialized version of the function.
- Functions that return a tuple with lazy elements are exported. The compiler could generate a specialized version with more evaluated or unboxed tuple elements.
- Functions that return functions are exported. Again the compiler may generate a specialized version.
- Not all strictness information is exported (use -lset or Strict Export Types to detect this).
- The function is used once. The compiler can use strictness and unboxing information from the call to prevent eval's and (un)boxing.

John van Groningen