В следующих разделах кода я получаю ошибки, которые я не уверен, почему я их получаю, несмотря на использование всех моих ресурсов для их исследования. Это кодирование SMLNJ.SML синтаксическая ошибка help
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 Ошибка: несвязанных переменная или конструктор: вар
hw4.sml: 430.31-430.34 Ошибка: несвязанных переменная или конструктор: ехр
и
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 Ошибка: ошибка синтаксиса: замена VAL с END
любая помощь на них будут оценены ,
@Crowbreak, попробуйте дать более подробные рекомендации пользователю, –
Правильно, извините. Спасибо! – Crowbeak