Open10
Elixirを勉強する
Elixirとは?
並列処理が得意な言語である。(並行処理では?)
Elixirは仮想マシン上で動作し大量の並列処理を安定的に実行できるプログラミング言語です。[1]
マイクロサービスの構築に秀でている。
「Antikythera Framework」はElixirの動作基盤であるErlang(※)(アーラン)言語の持つ特性を活用することにより複数のマイクロサービスの同時実行を可能とする環境を提供し、こうした課題を解決します。[2]
「Erlangは拡張性、同時実行性、耐性を必要とする分散システムの開発にうってつけだ。当社のように大量のトラフィックに対処しなければならない企業にとって最高のテクノロジーといえる」と語るのは、同社のソフトウェアアーキテクチャ部長チャンドラ・ムラパティ氏だ。[3]
Elixirに入門する
きっかけ
- Qiitaのアドベントカレンダー[4]でElixirが盛り上がっていたこと(16本のカレンダー)
- この記事[5]を読んで
ライブラリなど
- Phoenix[1]:Webアプリのフレームワーク。
- SSR WebFWからLiveView中心のSPA WebFWへ?
- ReactやVue.jsを別立てせずともサーバサイドロジックと共にリアルタイムフロントがコーディングできる?
- JavaScriptなしのWeb開発?
- ElixirDesktop[1:1]:ネイティブアプリのフレームワーク。Flutterのような感じ。
- Nx[1:2]:行列演算のライブラリ。PythonでいうNumPy。
- Axon[1:3]:ニューラルネットワークのライブラリ。
- Livebook[1:4]:実行環境。PythonでいうJupyter Notebook。
- Fly[1:5][2]:実行環境。PythonでいうColaboratory。
LivebookでNxを実行している[2:1]
Webアプリ
機械学習
ネイティブアプリ
WebAssembly(WASM)
XR
エッジコンピューティング
Web3