我试图弄清楚如何使用单元“模拟”一个端口,但我做不到。
主要思想是拥有一个模拟行为的函数或过程,{NewPort S P}
以及另一个模拟{Send P X}
行为的函数或过程。
这是我得到的。
declare P S
proc {CellPort ?P}
P = {NewCell S}
end
proc {SendMessage P X}
P := X | @P
{Browse @P}
end
in
{CellPort P}
{Browse @P}
{SendMessage P c}
{SendMessage P b}
{SendMessage P a}
端口应该像这样工作:
_
c|_
c|b|_
c|b|a|_
我不知道我做错了什么,我不能让它像上面那样打印。另外,如何使用端口实现单元?有指南吗?
提前致谢。