[MLton] compile mlton using SML/NJ

John Reppy jhr at cs.uchicago.edu
Sun Oct 8 18:10:29 PDT 2006


I'm still getting errors about Int.t:

front-end/ml.lex.sml:5429.43-5429.87 Error: operator and operand  
don't agree [tycon mismatch]
   operator domain: (SourcePos.t * SourcePos.t
                     -> (?.svalue,SourcePos.t) ?.token) * Source.t *  
Int.t
                    * Int.t
   operand:         (SourcePos.t * SourcePos.t
                     -> (?.svalue,SourcePos.t) ?.token) * Source.t *  
int * int
   in expression:
     tok (Tokens.COMMA,source,yypos,yypos + 1)

On Oct 8, 2006, at 6:46 PM, Matthew Fluet wrote:

>
>> That helped a bit.  My next problem was that mllex and mlyacc are
>> expected to compile the front end.  I tried changing them to ml-lex
>> and ml-yacc, but the generated lexer code doesn't type check.
>> I suspect that this problem is because the code expects an Int
>> structure that does not conform to the SML'97 Basis specification
>> (i.e., one with an Int.t type).
>
> The real issue is that for the SML/NJ compile, we use some stubs to  
> make the Basis Library modules provided by SML/NJ look like they  
> have 'int' == 'Int.int' == 'Int32.int'.
>
> Anyways, the solution is pretty much the same as before.  Generate  
> the files on a machine with MLton's tools and copy them over.  I've  
> included
> ones from my machine.
> <front-end.tgz>




More information about the MLton mailing list