Scalaの基本と環境の構築
古くはLisp、近時ではHaskellなど、世の中にはとんがった言語がいくつもあります。Scalaも、オブジェクト指向言語と関数型言語の良さを高いレベルで両立させようという意欲的な言語です。
しかし、Scalaの良さは普段C言語やJavaなどでプログラムを書いている人が、あまり違和感なくコードを読み書きできることにもあります。そこで、Scalaの「プログラミング言語」としてのポテンシャルの高さを見ていきましょう。
JREまたはJDKのインストール
まずは、Scala本体のインストールと、簡単な動作確認をしてみましょう。ここでは、執筆時点での最新バージョン2.7.5を例に取り解説していきます。
Scalaは、JavaVM上で動作するため、実行にはJREをインストールしておきます。また、本稿のサンプルコードを動作させるには、ビルド環境としてMavenを使用しているため、JDKをインストールしておく必要があります(JRE、JDK共に、バージョン1.5以上を推奨)。なお、パテントビューローでは、JDK1.6.13で動作確認を行っています。Scala公式サイトによると、現行のScala2.7系ではJRE1.4をサポートしてますが、2.8系ではJRE1.5以上をサポートするとのことです。
Scala本体のダウンロード
Scala本体は、公式サイトのダウンロードページよりダウンロード可能です。トップページ上部のメニューより、[Software]-[Download Scala]-[Latest Stable Release]と進み、ダウンロードページへ進んでください。
WindowsユーザーやGUI環境のLinuxユーザーには、IzPack Installer(all platforms)を用いたインストールにより、自動的に環境設定を行うことができます。IzPack Installerでは問題がある場合には、それぞれの環境に応じたパッケージをダウンロードし、次節を例にして環境を設定してください。
Scala本体のインストールと環境変数の設定
IzPack Installerを使用した場合には、画面に従うだけで、インストールから環境変数の設定まで自動で行ってくれます。ただし環境変数を有効にするために、ログオフや再起動が必要な場合があります。また、Windows Vista環境でScalaをホームディレクトリの外部(例:C:\ProgramFiles\Scala")にインストールしたい場合は、次の手順を踏む必要があります。
- 「コマンドプロンプト」を管理者として実行
- コマンドプロンプト上で、jarインストーラを配置したディレクトリに移動し、「java –jar scalainstaller.jar」と入力して実行
また、IzPack Installer以外からインストールするには、表1のように環境変数の設定が必要です(公式サイト「Setup & Getting Started」参照)。
| Windowsでの環境変数の設定 | |
| SCALA_HOME | Scalaをインストール(解凍)したフォルダへのパス |
| PATH | %SCALA_HOME%\bin |
| Linux(Unix)での環境変数の設定 | |
| $SCALA_HOME | Scalaをインストール(解凍)したフォルダへのパス |
| $PATH | $PATH:$SCALA_HOME/bin |
Scala本体のインストールの確認
コマンドライン、またはターミナル上で、「scala -version」とタイプし、「Scala code runner version 2.7.5.final -- Copyright 2002-2009,LAMP/EPFL」と表示されればインストール完了です。
この記事は参考になりましたか?
- 新開発言語「Scala」の実体連載記事一覧
-
- Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~補足編
- Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~後編
- Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~前編
- この記事の著者
-
株式会社パテントビューロ 三木隆史(ミキ タカフミ)
株式会社パテントビューロ所属。マネージャー業務と平行して、Webアプリケーション開発、自然言語系の研究開発を行なう。以前はC言語による組込開発。違和感なくScalaへ移行できたことや、ロジック部分に注力できる生産性の高さに驚いている。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
株式会社パテントビューロ 木村吉博(キムラ ヨシヒロ)
政府系研究機関での研究開発を経て、現在、株式会社パテントビューロにて、プログラミング(知財関連文書(SGML/XML)の変換バッチ処理のScalaでの記述など)を担当している。複雑でイレギュラーな記述も多々見られる大量の文書を相手にする際に、Scalaの書きやすさと高速性とに大いに助けられている。か...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
