我是sml和ml-lex的新手。爲了將字符串轉換爲實數,我們使用函數real.fromstring。這是我的轉換代碼,其中yytext是一個字符或字符串數組。發生在real.fromstring的sml語法中的錯誤
getOpt ((Real.fromString(yytext)), 0.0);
我在ml-lex中使用上述語法來標記實數。
{real} => (REAL(getOpt ((Real.fromString(yytext)), 0.0)));
,但我得到的錯誤,
math.lex.sml:5.234-5.240 Error: type constructor Assembly.option given 0 arguments, wants 1
請告訴我什麼是錯的fromstring功能。
我不認爲錯誤是指您顯示的代碼。在文件中搜索參數化類型名稱'option'的用法,其中一個似乎缺少它的參數。 – 2015-02-10 13:39:52
@AndreasRossberg其實,沒有其他功能或選項類型的參數。當我從我的文件中刪除上述代碼時,該程序正常工作。所以,這似乎是針對這個特定的部分。 – 2015-02-10 13:46:24
然後它可能是由MLlex生成的代碼的一部分。你看過嗎?該錯誤消息特別提到了類型構造函數的(錯誤)應用,並且您的代碼段中沒有任何內容。 – 2015-02-10 17:23:41