数字人文教程中的Hello World示例中的语法错误

时间:2018-07-05 13:01:15

标签: alloy

我正在尝试Michael Sperberg-McQueen的《合金人文》教程中的材料,该教程可在AlloyTools网站上链接。运行您好世界示例http://blackmesatech.com/2013/07/alloy/examples/helloworld.als,我收到以下错误消息:

发生语法错误: 无法扩展子集签名“ this / creator”签名只能扩展顶级签名或子签名。

相关的行是:

sig res {}
sig terra, caelum extends res {}
sig creator in res {
  creavit : set res
}
sig Deus extends creator {}{
  creavit = terra + caelum
}

我正在使用Alloy Analyzer 4.2_2015-02-22。

我可以通过更改以下内容来纠正错误:

sig creator in res

sig creator extends res

但是我想了解为什么原始代码会出现语法错误(大概可以在早期版本的Alloy中使用-如果有意将代码设计为会产生错误的错误,我将继续努力以了解目的,如果不是,我想了解为什么以前有效的代码不再有效。)

0 个答案:

没有答案