summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorPhilipp Haller <hallerp@gmail.com>2007-03-02 15:20:08 +0000
committerPhilipp Haller <hallerp@gmail.com>2007-03-02 15:20:08 +0000
commit2357b792b4894325f2d878b4e49ae6d894a41f68 (patch)
tree42dd2ef9cf90b537267f6cdcc0249ec8262aa6b7 /docs
parent12a3b4c5ffe61ad646c33c59a666386e11429316 (diff)
downloadscala-2357b792b4894325f2d878b4e49ae6d894a41f68.tar.gz
scala-2357b792b4894325f2d878b4e49ae6d894a41f68.tar.bz2
scala-2357b792b4894325f2d878b4e49ae6d894a41f68.zip
Small clean-ups
Diffstat (limited to 'docs')
-rw-r--r--docs/examples/actors/pingpong.scala41
1 files changed, 16 insertions, 25 deletions
diff --git a/docs/examples/actors/pingpong.scala b/docs/examples/actors/pingpong.scala
index 40b6486727..679385abbe 100644
--- a/docs/examples/actors/pingpong.scala
+++ b/docs/examples/actors/pingpong.scala
@@ -3,43 +3,26 @@ package examples.actors
import scala.actors.Actor
import scala.actors.Actor._
-abstract class PingMessage
-case object Start extends PingMessage
-case object SendPing extends PingMessage
-case object Pong extends PingMessage
-
-abstract class PongMessage
-case object Ping extends PongMessage
-case object Stop extends PongMessage
-
-object pingpong extends Application {
- val pong = new Pong
- val ping = new Ping(100000, pong)
- ping.start
- pong.start
- ping ! Start
-}
+case object SendPing
+case object Ping
+case object Pong
+case object Stop
class Ping(count: int, pong: Actor) extends Actor {
def act() {
- Console.println("Ping: Initializing with count "+count+": "+pong)
var pingsLeft = count
loop {
react {
- case Start =>
- Console.println("Ping: starting.")
- pong ! Ping
- pingsLeft = pingsLeft - 1
case SendPing =>
pong ! Ping
pingsLeft = pingsLeft - 1
case Pong =>
if (pingsLeft % 1000 == 0)
- Console.println("Ping: pong from: "+sender)
+ Console.println("Ping: pong")
if (pingsLeft > 0)
self ! SendPing
else {
- Console.println("Ping: Stop.")
+ Console.println("Ping: stop")
pong ! Stop
exit('stop)
}
@@ -55,13 +38,21 @@ class Pong extends Actor {
react {
case Ping =>
if (pongCount % 1000 == 0)
- Console.println("Pong: ping "+pongCount+" from "+sender)
+ Console.println("Pong: ping "+pongCount)
sender ! Pong
pongCount = pongCount + 1
case Stop =>
- Console.println("Pong: Stop.")
+ Console.println("Pong: stop")
exit('stop)
}
}
}
}
+
+object pingpong extends Application {
+ val pong = new Pong
+ val ping = new Ping(100000, pong)
+ ping.start
+ pong.start
+ ping ! SendPing
+}