Ceylonとは? わかりやすく解説

セイロン‐とう〔‐タウ〕【セイロン島】


セイロン【Ceylon】

読み方:せいろん

スリランカ旧称

[補説] 「錫蘭」とも書く。


Ceylon

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/11/22 08:12 UTC 版)

Ceylon
パラダイム オブジェクト指向プログラミング関数型プログラミング命令型プログラミング、マルチパラダイムプログラミング 
登場時期
  • 2011年 
開発者 レッドハット、Gavin King 
最新リリース 1.2.0、1.3.3 / 2015年10月29日[1]
影響を受けた言語 ScalaSmalltalkMLLISPJava 
プラットフォーム クロスプラットフォーム 
ライセンス Apache-2.0 
ウェブサイト
拡張子 ceylon 
テンプレートを表示

Ceylon(セイロン)は、レッドハット社によって開発されたプログラミング言語およびソフトウェア開発キットである。この言語はJava言語をもとに作られ、Java仮想マシンで動作する。またJavascriptにコンパイルすることができる[2][3]

この言語とソフトウェア開発キットのプロジェクトは、Java言語とJava SEソフトウェア開発キットで見られた成功と失敗を踏まえた上で、もし今それらが設計されたとしたら、商用コンピューティング向けの言語と開発キットがどんなものになっていたかを示すものであると言える[要出典]。また、レッドハット自身は否定しているものの、業界のアナリストからは同プロジェクトはJavaを抹殺するためのものだと言われている[4][5]

言語の特徴

Ceylon言語はJava言語の構文のほとんど全てを受け継いでいる。下記は Hello World プログラムのCeylon言語版である[6]

void hello() {
   writeLine("Hello World!");
}

演算子の多重定義

Ceylon言語では、プログラミング言語で一般的に混乱の原因とみなされている演算子の多重定義の仕組みを提供していない。その代わりCeylon言語には、組み込み型のメソッドの省略形であるような演算子については多相性を利用できる仕組みがある。これは演算子の多重定義よりも安全で簡素な仕組みである。

インターフェース

インターフェースは、構成要素の定義のみがあって実装が含まれていないデータ構造である。異なる実装をもつ異なるデータ型に含まれる構成要素を定義するのに便利である。全てのインターフェースは暗黙に抽象データ型になっている。

インターフェースは予約語 satisfies を使ってクラスとして実装する。satisfies の後ろに、複数のインターフェースをカンマで区切って書けば、複数のインターフェースを一つのクラスで実装することができる。Ceylon言語のインターフェースでは、要素の定義だけでなく、一定の制限を満たすものであれば実装コードも記述することができる。インターフェースにはデータを初期化するコードを含めることはできないが、ミクスインであれば複数含めることができる。

shared interface Comparable<in T> {
   shared formal Comparison compare(T other);

   shared Boolean largerThan(T other) {
      return compare(other)==larger;
   }

   shared Boolean smallerThan(T other) {
      return compare(other)==smaller;
   }
   ...
}

継承

Ceylon言語のクラスは、Java言語のそれと同様、最大でひとつのクラスから実装を継承することができる。継承は予約語 extends を使って宣言する。予約語 this を使えば、そのクラス自身を指定することもできる。

抽象クラスとは、実装の雛形としてのみ使うことができるクラスである。抽象クラスのインスタンスを作成することはできない。抽象クラスだけが抽象メソッドを持つことが許されている。抽象メソッドには、どんな実装コードをも与えることは出来ないため、そのメソッドは抽象クラスでないサブクラスによって上書きされなければならない。

リリース

  • 2011年12月20日、コンパイラの公開。
  • 2013年11月12日、初のプロダクションリリースとなる1.0.0を公開。[3]

出典

  1. ^ 出典URL: http://ceylon-lang.org/blog/2015/10/29/ceylon-1-2-0/#ceylon_120_is_now_available, 閲覧日: 2015年10月30日
  2. ^ 2011/04/13/red_hat_unveils_project_ceylon Project Ceylon – Red Hat builds Java replacement”. The Register (2011年4月13日). 2011年11月27日閲覧。
  3. ^ a b 米Red Hat、新言語「Ceylon 1.0」発表、初のプロダクションリリースに”. OSDN (2013年11月15日). 2013年11月16日閲覧。
  4. ^ ガビン・キング (2011年4月13日). “Ceylon”. 2011年11月27日閲覧。
  5. ^ Ceylon JVM Language”. infoq.com (2011年4月13日). 2011年11月27日閲覧。 “First, I never billed this as a Java Killer or the next generation of the Java language. Not my words. Ceylon isn't Java, it's a new language that's deeply influenced by Java, designed by people who are unapologetic fans of Java. Java's not dying anytime soon, so nothing's killing it.
  6. ^ ガビン・キング (2011年4月27日). “Introduction to Ceylon Part 1”. 2011年11月27日閲覧。

外部リンク



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Ceylon」の関連用語

Ceylonのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Ceylonのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
WorldCoin.NetWorldCoin.Net
Copyright 2025, WorldCoin.Net All Rights Reserved
すずらん工房すずらん工房
Copyright (c) 2000-2025 BOW All Rights Reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのCeylon (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2025 GRAS Group, Inc.RSS