Scala
[Wikipedia|▼Menu]

ScalaScalaのロゴ
パラダイムオブジェクト指向言語関数型言語
登場時期2003年 (2003)
設計者Martin Odersky
開発者LAMP/EPFL, Scala Center
最新リリース3.4.0 / 2024年2月29日[1]
型付け強い静的型付け
主な処理系Scala
影響を受けた言語Java, Haskell, Standard ML, OCaml, Smalltalk, Erlang
影響を与えた言語Java, Chisel, F#, Kotlin, Flix
プラットフォームLinux, Windows, Mac, JVM, JavaScript, Android
ライセンスApache 2.0[2]
ウェブサイトThe Scala Programming Language
拡張子.scala
テンプレートを表示

プログラミング言語>>他のプログラミング言語

カテゴリ / テンプレート

Scala(スカラ、SKAH-lah[3])はオブジェクト指向言語関数型言語の特徴を統合したマルチパラダイムのプログラミング言語である。名前の「Scala」は英語の「scalable language」に由来するものである。
プラットフォーム

主にJavaプラットフォームJava仮想マシン)上で動作し、既存のJavaのプログラムと容易に連携させることができる。

対応プラットフォーム

Scala - Javaプラットフォーム

Scala.js[4] - Scala から JavaScript へとトランスパイルする。

Scala Native[5] - LLVM を使用し、マシンネイティブの実行ファイルを出力

また、過去には下記のプラットフォームもサポートしていたが、現在は開発が中断している。

.NET Framework[6]

Java Platform, Micro Edition CLDC

歴史

Scalaは2001年にスイス・ローザンヌにあるスイス連邦工科大学 (EPFL) 教授のマーティン・オーダスキー(英語版)によって設計された。マーティン・オーダスキーはFunnelという、関数型プログラミングとペトリネットとを合わせたプログラミング言語の開発に携わっていた。オーダスキーは過去にJavaの総称型(ジェネリクス)とjavacの開発に携わった事があった。

Scalaは2003年の暮れに内部で公開された後、2004年の始めにJavaのプラットフォームにリリースされ、2004年の6月に.NETのプラットフォームに公開された。Ver2.0は2006年3月にリリースされたが、.NETのサポートは2012年に中止になった。

2021年5月12日、コードネームdottyと呼ばれていたコンパイラを抜本的に再設計して作られたScala 3がリリースされ、多くの機能が追加された。[7]

また、現在も活発に開発が続けられている。
特徴

主に以下のような特徴がある。

開発生産性を高める簡潔な表記が可能である。

Javaの豊富なライブラリが使える(Scala.jsの場合、JavaScriptのライブラリが使える)。

全てがオブジェクトとして扱われるオブジェクト指向言語である。

静的型付けを行う関数型言語である。静的型付けのため、コンパイル時点でのエラー(特に型関連の)検出が得意である。

型(クラス)をJavaなどと比べてより容易に作ることができ、また、型を使った条件分岐をはじめとして、型に関する機能が豊富なため、メソッドやフィールドを束ねるだけのクラスではなく、型に積極的な意味を持たせてのプログラミングが可能である。

型推論をサポートし、多くの場面で型を自動的に補ってくれる。

純粋関数型言語的な、val(定数)と不変List, Set, Mapという組み合わせでもプログラミングできるし、より手続き型的なvar(変数)と可変List, Set, Mapという組み合わせでもプログラミングができる。

関数もオブジェクトとして利用可能であり、カリー化が可能。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:27 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef