Skip to content

Instantly share code, notes, and snippets.

@TeWu
Last active August 29, 2015 13:58
Show Gist options
  • Save TeWu/9972542 to your computer and use it in GitHub Desktop.
Save TeWu/9972542 to your computer and use it in GitHub Desktop.

Scala


Hello World in Scala:

object Hello {
  def main(args: Array[String]) {
    val alice = new Person("Alicja", 21)
    alice.age += 2
    println("Hello " + alice.firstName + "(" + alice.age + ")!") // => Hello Alicja(23)!
  }
}

class Person(val firstName: String, var age: Int)

Akka


Hello World using Akka actors:

import akka.actor.{Props, Actor, ActorSystem}

object HelloAkka {
  def main(args: Array[String]) {
    val system = ActorSystem("HelloSystem")
    val actor = system.actorOf(Props[HelloActor])

    actor ! "test" // send message to actor
    actor ! 42 // send message to actor

    println("Main thread: " + Thread.currentThread.getId)
    system.shutdown()
  }
}

class HelloActor extends Actor {
  override def preStart() {
    println("HelloActor startuje..")
    println("HelloActor thread: " + Thread.currentThread.getId)
  }

  // receive message
  def receive = {
    case i: Int => println("Dostałem int'a: " + i)
    case s: String => println("Dostałem stringa'a: " + s)
  }
}

Output:

Main thread: 1
HelloActor startuje..
HelloActor thread: 13
Dostałem stringa'a: test
Dostałem int'a: 42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment