Setting up Scala

edit

The following gives a guide on how to install Scala on different operating systems:

Linux

edit
    • Ubuntu/Debian (dpkg based): sudo aptitude install scala or sudo apt-get install scala. You may also install scala-doc for the documentation and examples.

Windows

edit
  • Go to the Scala official download page: http://www.scala-lang.org/download/
  • Download and open the Scala installation file from the above mentioned site to start the installation.
  • Read and follow the instructions on screen.
  • When installed, the Windows Command Prompt or Windows Powershell is used to utilize the Scala Compiler, the Scala Interpreter ("REPL") or any precompiled Scala written programs.

Mac OS X

edit
  • Or download from the package official site:
    • extract the tar ball
    • and append xxx/scala-x.x.x./bin directory to PATH
    • use scala as in a REPL environment

Setting up Scala IDEs

edit

Running Scala

edit

Scala can be written and run in different ways, by using the interpreter, by compiling, or by running it as a script. The "Hello World!" program will be used to illustrate these different ways.

Interpreting Scala

edit

The Scala interpreter is an interactive shell that supports easy writing and running of commands and programs. The Scala interpreter is generally included in the basic Scala installation and can be initiated from the command-line (typically by writing scala), but is also supported in some Scala IDE plugins (such as Scala-IDE for Eclipse).

Once initiated, the prompt looks like this:

scala>

The simplest way to write "Hello world!" is to write the following command:

println("Hello World!")

println prints the given string and adds a newline. If only print is used, no newline is added. If you write this in the interpreter and press enter, the result should look like this:

scala> println("Hello World!")
Hello World!

scala>

The println command was interpreted and run, and the result (printing to the terminal) is shown.

There are also special commands in the interpreter; for more information on these, type “:help”.

The interpreter is generally well-suited for small tests and experiments, and less for program development. When learning Scala, the interpreter is often a very useful tool, since it gives immediate feedback. The interpreter is actually a REPL.

Additionally, in a scala IDE such as eclipse or Intellij, there is a worksheet that can be used in a REPL as well.

Compiling Scala

edit

Scala is a JVM based language, and like Java it is compiled into java bytecode files (.class). Below is the Scala version of Hello World:

//hello.scala
object HelloWorld {
  def main(args: Array[String]): Unit = println("Hello world!")
}

We can simply use scalac hello.scala to build and then there would be two class files: HelloWorld.class and HelloWorld$.class. Using scala HelloWorld to execute and the screen should print:

Hello world!

scalac supports other options like -classpath,-verbose, also it provides advanced options beginning with -X and private options beginning with-Y.

Scripting Scala

edit

We can use scala as a script.For a scala source file script.scala

println("Hello "+args(0))

We can use scala script.scala world to run it, just like the Python script. However As of 23 December 2012, there is no support for shebang in Unix like system.

For eclipse and Intellij, there is also a scala script that can be used in the development environment.