在下面的代碼段中,我收到了一些錯誤,我不確定爲什麼儘管使用我所有的資源來研究它們,但我仍然得到它們。這是SMLNJ編碼。SML語法錯誤幫助
compComm (DeallocComm(var, exp), env, ip, codes, contIP)=
let val loc = lookupEnv var env;
val codes1 = emitByte(LDC, ip, codes);
val codes2 = emitByte(Arg loc, ip + 1, codes1);
val (ip', codes3) = compExp(exp, env, ip+2, codes2);
val codes4 = emitByte(ADEALLOC, ip', codes3);
in(ip'+1, codes4, nil, contIP)
end;
給出
hw4.sml:339.5-433.6錯誤:在圖案施加到參數非構造:DeallocComm hw4.sml:427.26-427.29錯誤:未結合的可變或構造函數:var
hw4.sml:430.31-430.34錯誤:未結合的可變或構造:EXP
和
ADEALLOC => let val (n, stack') = popStack stack
val (loc, stack'') = popStack stack';
fun loop'(n, loc, store) =
val store' = updateTable (loc, defaultIntValue, store);
in loop'(n-1, loc+1, store) =
val store'' = loop'(n, loc, store) end;
in loop(ip+1, store'', stack'') end;
給
hw4.sml:612.14錯誤:語法錯誤:將EQUALOP
hw4.sml:615.8-615.11錯誤:語法錯誤:與END更換VAL
這些任何幫助,將不勝感激。
@Crowbreak,試着給用戶更多的指導意見, – 2013-02-01 05:49:59
對,對不起。謝謝! – Crowbeak 2013-03-29 01:59:44