declare fun {NewPortObject2 Proc}
Sin in {Browse Sin}
thread for Msg in Sin do {Proc Msg} end end
{NewPort Sin}
end
declare fun {Player Others}
{NewPortObject2 proc {$ Msg}
case Msg of ball(X) then
Ran
={OS.
rand} mod
{Width Others
}+1 in if X<50 then {Delay 3000} {Send Others.Ran ball(X+1)} end
else skip
end
end}
end
P1={Player others(P2 P3 P4 P5)}
P2={Player others(P1 P3 P4 P5)}
P3={Player others(P1 P2 P4 P5)}
P4={Player others(P1 P2 P3 P5)}
P5={Player others(P1 P2 P3 P4)}
in
{Send P1 'GraczA'}
{Send P2 'GraczB'}
{Send P3 'GraczC'}
{Send P4 'GraczD'}
{Send P5 'GraczE'}
{Send P1 ball(1)}
ZGVjbGFyZSBmdW4ge05ld1BvcnRPYmplY3QyIFByb2N9CglTaW4gaW4ge0Jyb3dzZSBTaW59Cgl0aHJlYWQgZm9yIE1zZyBpbiBTaW4gZG8ge1Byb2MgTXNnfSBlbmQgZW5kCgl7TmV3UG9ydCBTaW59CmVuZAoKZGVjbGFyZSBmdW4ge1BsYXllciBPdGhlcnN9Cgl7TmV3UG9ydE9iamVjdDIgcHJvYyB7JCBNc2d9CgkJY2FzZSBNc2cgb2YgYmFsbChYKSB0aGVuCgkJCVJhbj17T1MucmFuZH0gbW9kIHtXaWR0aCBPdGhlcnN9KzEKCQkgICAgICAgIGluIGlmIFg8NTAgdGhlbiB7RGVsYXkgMzAwMH0ge1NlbmQgT3RoZXJzLlJhbiBiYWxsKFgrMSl9IGVuZAoJCWVsc2Ugc2tpcAoJCWVuZAoJZW5kfQplbmQKClAxPXtQbGF5ZXIgb3RoZXJzKFAyIFAzIFA0IFA1KX0KUDI9e1BsYXllciBvdGhlcnMoUDEgUDMgUDQgUDUpfSAKUDM9e1BsYXllciBvdGhlcnMoUDEgUDIgUDQgUDUpfQpQND17UGxheWVyIG90aGVycyhQMSBQMiBQMyBQNSl9ClA1PXtQbGF5ZXIgb3RoZXJzKFAxIFAyIFAzIFA0KX0KaW4Ke1NlbmQgUDEgJ0dyYWN6QSd9CntTZW5kIFAyICdHcmFjekInfQp7U2VuZCBQMyAnR3JhY3pDJ30Ke1NlbmQgUDQgJ0dyYWN6RCd9CntTZW5kIFA1ICdHcmFjekUnfQp7U2VuZCBQMSBiYWxsKDEpfQ==
Mozart Compiler 1.4.0 (20080704) playing Oz 3
%%% feeding file prog.oz
%********************* binding analysis error *******************
%**
%** variable Browse not introduced
%**
%** in file "./prog.oz", line 2, column 9
%** ------------------ rejected (1 error)