The shortcut :q stands for the internal shell command :quit used to exit the interpreter.

Compile it!
The scalac command compiles one (or more) Scala source file(s) and generates Java bytecode which can be executed on any standard JVM. The Scala compiler works similarly to javac, the Java compiler of the Java SDK.

> scalac HelloWorld.scala

By default scalac generates the class files into the current working directory. You may specify a different output directory using the -d option.

> scalac -d classes HelloWorld.scala

Execute it!

The scala command executes the generated bytecode with the appropriate options:

> scala HelloWorld

scala allows us to specify command options, such as the -classpath (alias -cp) option:

> scala -cp classes HelloWorld

The argument of the scala command has to be a top-level object. If that object extends trait App, then all statements contained in that object will be executed; otherwise you have to add a method main which will act as the entry point of your program.

Here is how the “Hello, world!” example looks like using the App trait:
object HelloWorld extends App { println(“Hello, world!”)}

Script it!

We may also run our example as a shell script or batch command (see the examples in the man pages of the scala command).