3

我正在关注Andrea Ferretti 的教程,并试图+为我自己的类型定义。

我的元组是:

TUPLE: myBox a ;

如果我创建自己的通用词

GENERIC: my+ ( a b -- c ) 
M: myBox my+ a>> swap a>> swap + myBox boa ;

然后我可以用它来添加把两个myBoxes的内容加在一起

6 myBox boa 7 myBox boa my+

哪个输出

--- Data stack:
T{ myBox f 13 }

但是,如果尝试+为 with 定义自己myBox

M: myBox + a>> swap a>> swap + myBox boa ;

然后,当我尝试使用它时:

6 myBox boa 7 myBox boa +

我得到错误:

No suitable arithmetic method
"left" T{ myBox f 6 }
"right" T{ myBox f 7 }
"generic" + 

如果我转到帮助页面,+我什至会看到我的定义在其他列表中列出(即bignumcomplexfixnumfloatratio)。

如何+为自己的元组定义通用词?

4

0 回答 0