Re: What does this mean ?

Oliver Ruebenacker <[email protected]> Wed, 17 Feb 2016 09:57:44 -0500
Newsgroups gmane.comp.lang.scala
Message-ID <CAA=X4OD0gSgu6Dc3K7bkvxD=g0okUZCKkYbnL1PdXmhvF6Zf0A@mail.gmail.com>
     Hello,

  The case keyword creates a partial function, e.g.:

scala> val pf: Int => String = { case 42 => "Hello!" }
pf: Int => String = <function1>

scala> pf(42)
res1: String = Hello!

     Best, Oliver

On Wed, Feb 17, 2016 at 9:40 AM, Clement Dourval <[email protected]>
wrote:

> Hi, I'm currently Learning Scala and more precisely, concurrent
> programming with scala.
>
> I found this code :
>
> class Pong extends Actor {
>   def act() {
>     var pongCount = 0
>     while (true) {
>       receive {
>         case Ping =>
>           if (pongCount % 1000 == 0)
>             Console.println("Pong: ping "+pongCount)
>           sender ! Pong
>           pongCount = pongCount + 1
>         case Stop =>
>           Console.println("Pong: stop")
>           exit()
>       }
>     }
>   }
> }
>
> This is from a tutorial, so i'm expecting it to work, the only problem is
> I do not understand how.
>
> The main problem is, how does this code use the case keyword since there
> is no match !
> (adress of the tutorial : http://www.scala-lang.org/old/node/242)
>
> Anyway, i understood what was the tutorial was supposed to do (with ping
> pong), I just don't understand what is written, I'd like to be able to
> write it myself.
> But it seems i'm missing some syntax subtleties
> And even if these are deprecated, i found the same synthax with the akka
> Library ! So I'm asking myself how to read this.
>
> Anyone can help ? Thanks in advance !
>
> --
> You received this message because you are subscribed to the Google Groups
> "scala-language" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Oliver Ruebenacker
Senior Software Engineer, Diabetes Portal
<http://www.type2diabetesgenetics.org/>, Broad Institute
<http://www.broadinstitute.org/>

-- 
You received this message because you are subscribed to the Google Groups "scala-language" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.