투쟁 내가 SML 데이터 형식으로 변환하는 데 필요한 다음과 같은 문법이 : 나는 다음과 같은 관리가SML 데이터 유형은
Integer ranges over SML integer constants.
Boolean ::= 'true' | 'false'
Operator ::= 'ADD' | 'IF' | 'LESS_THAN'
Arguments ::= (',' Expression) *
Expression ::= 'INT' '(' Integer ')'
| 'BOOL' '(' Boolean ')'
| 'OPERATION' '(' Operator ',' '[' Expression (',' Expression) * ']' ')'
:
datatype BOOL = true | false;
datatype OPERATOR = ADD | IF | LESS_THAN;
datatype INT = INT of int;
것은 내가 데이터 유형 Arguments
및 Expression
고민하고 그러나합니다. 어떤 도움을 주시면 감사하겠습니다.
고맙습니다. 그러나 나는 고맙습니다. 작동 (즉, 어떻게 연산자를 표현식으로 재귀 적으로 따라야 하는지를 알 수는 없습니다. S는 방금 SML을 배우기 시작했고 매우 까다 롭습니다.) – user1265230
"sml 데이터 유형 "을 사용하면 매우 모범적이고 단순하며 일관성있는 예제를 찾을 수 있으며 재귀와 같은 것에 대해 걱정할 필요가 없습니다. 동일한 유형의 여러 값을 목록 (및 튜플에있는 여러 유형의 여러 값)에 고정하십시오. –