【发布时间】:2020-08-17 00:51:07
【问题描述】:
程序
prog ::= dec core declaration functor fctbind functor declaration signature sigbind signature declaration empty prog1 ⟨;⟩ prog2 sequence fctbind ::= id1 ( id2 : sig ) ⟨:⟨>⟩ sig⟩ = str ⟨and fctbind⟩ plain id ( spec ) ⟨:⟨>⟩ sig⟩ = str ⟨and fctbind⟩ opened sigbind ::= id = sig ⟨and sigbind⟩ signature
为什么
val a = 1
val b = 2;
a
b
a 和 b 之间有错误,但两个 val 声明之间没有?
$sml < main.sml
Standard ML of New Jersey v110.78 [built: Thu Aug 31 03:45:42 2017]
- val a = 1 : int
val b = 2 : int
= stdIn:4.1-5.2 Error: operator is not a function [tycon mismatch]
operator: int
in expression:
a b
谢谢。
【问题讨论】: