2017年4月1日,
オープニングキーノートセッション ―José Valim氏
オープニングキーノートはElixirの作者であるJosé Valim氏による講演です。2017年1月で5歳になるElixirの歴史と今後の展望について発表しました。
何故Elixirを作ろうとしたのか
2011年,
RubyやPython等のオブジェクト指向プログラミング言語では,
Haskell,
しかし,
プロトタイプ言語
最初のプロトタイプの言語は2011年1月から4月までの間に開発されました。このプロトタイプ言語は,
実際,
defobject
を使ってオブジェクトを定義- JavaScriptのようなプロトタイプオブジェクトモデル
- メタプログラミングのためにどこでも
eval
を実行可能 - 非常に遅い
- Erlang/
OTPのモジュール・ 関数を呼び出すことはできない
といった特徴を持ち,
ゴールの再定義
こうして出来上がったプロトタイプ言語は,
- 生産性が高い
(mix等の便利な管理ツール) - 拡張性が高い
(ポリモーフィズムやメタプログラミングのサポート) - 互換性が高い
(Erlang/ OTPのモジュール・ 関数を呼ぶことができる)
そしてplataformatec社の共同設立者となり,
2017年までのElixir開発について
こうして開発が進められたElixirですが,
そして,
Elixirは何でできているか?
次にElixirの構成要素について話をされました。Elixirを構成する要素は以下の3つであるとJosé氏は説明します。
- データ
(状態を表現する) - モジュール
(振る舞いを表現する) - プロセス
(時間変化を表現する)
ハッシュオブジェクトの操作とプロセスの生成を例に,
2017年以降の展望
最後に,
- UTF-8アトムの対応
(対応中) - GenHTTP
(研究中) - データストリームとプロパティテスト
(研究中) - 型システムの導入
(研究中)
の4つが紹介されました。
1つ目は現在導入作業中のUTF-8アトムの対応です。現在のElixirとErlang/
test "こんにちは世界" do
assert :こんにちは世界
end
2つ目はプロセスレベルでHTTP関連の操作を行うGenHTTP
の提供,
そして4つ目が今回のセッションの一番の目玉となった型システムです。GenHTTP
,
なお型システムに関するアナウンスは,
まとめ
Elixirの今後の展望について述べて終了したキーノートセッションですが,