Ceylon
[Wikipedia|▼Menu]

Ceylonパラダイムオブジェクト指向
登場時期2011年
設計者ガビン・キング、レッドハット
最新リリース1.3.3/ 2017年8月21日 (6年前) (2017-08-21)
型付け強い静的型付け
影響を受けた言語JavaScalaSmalltalk
ウェブサイトceylon-lang.org
拡張子.ceylon
テンプレートを表示

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

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

Ceylon言語はJava言語の構文のほとんど全てを受け継いでいる。下記は Hello World プログラムのCeylon言語版である[5]。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を公開。[2]

出典^ “ ⇒2011/04/13/red_hat_unveils_project_ceylon Project Ceylon ? Red Hat builds Java replacement”. The Register (2011年4月13日). 2011年11月27日閲覧。
^ a b “ ⇒米Red Hat、新言語「Ceylon 1.0」発表、初のプロダクションリリースに”. OSDN (2013年11月15日). 2013年11月16日閲覧。
^ ガビン・キング (2011年4月13日). “ ⇒Ceylon”. 2011年11月27日閲覧。
^ “ ⇒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.”
^ ガビン・キング (2011年4月27日). “ ⇒Introduction to Ceylon Part 1”. 2011年11月27日閲覧。

外部リンク

Ceylon公式サイト (英語)

In Relation To...  Introduction to Ceylon

Introducing the Ceylon Project、ガビン・キング、レッドハット社

The Ceylon Type System、ガビン・キング、レッドハット社

Gavin King unveils Red Hat's Java successor: The Ceylon Project、マーク・リチャーズ、2011年4月11日










Java
プラットフォーム

Java言語

JVM

Java ME (Micro)

Java SE (Standard)

Jakarta EE

Javaカード

Android SDK

オラクルのテクノロジー

Squawk

Java開発キット

OpenJDK

JVM

JavaFX

Maxine VM

プラットフォーム技術

アプレット

サーブレット

MIDlet

JSP

JSF

Web Start (JNLP)

主なサードパーティ技術

Blackdown

Eclipse

GNU Classpath

GWT

Harmony

Hibernate

IcedTea

Jazelle

Spring

Struts

TopLink

WildFly

歴史

Javaバージョン履歴

Java Community Process

サンマイクロシステムズ

自由なJavaの実装

主要なJVM言語

BeanShell

Clojure

Groovy

JRuby

Jython

Kotlin

Processing

Rhino

Scala

コミュニティ

カンファレンス

JavaOne

Devoxx

組織

Apache Software Foundation

Java Community Process

オラクル

サン・マイクロシステムズ

人物

ジェームズ・ゴスリン

アーサー・ヴァン・ホフ

ウルス・ヘルツレ

パトリック・ノートン




カテゴリ


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

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