WebAssemblyへのコンパイルだけに特化した新言語「Onyx」登場、Wasmerが発表
今回は「WebAssemblyへのコンパイルだけに特化した新言語「Onyx」登場、Wasmerが発表」についてご紹介します。
関連ワード (仕組、実現、特化等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
米Wasmer社は、WebAssemblyへのコンパイルだけに特化した新しいプログラミング言語「Onyx」を発表しました。
同社はWebAssemblyにかつてのCGIの仕組みを取り込んだ「WCGI」や、WebAssemblyでBashのコマンドプロンプトなどをを実装可能にするWebAssemblyを拡張してPOSIX対応にした「WASIX」など、WebAssemblyをベースとしたさまざまな技術を発表し実装しています。今回のOnyxもそうした技術の1つとなります。
We're so excited about Onyx .
A new programming language which solely compiles to #WebAssembly.Read all about it in our new blogpost:https://t.co/L6yZ9Ls5Q3
— Wasmer (@wasmerio) December 1, 2023
OnyxはWasmer社が開発に3年を費やした言語と説明されており、Onyx Package Manager、Onyx Language Server、Visual Studio CodeやVim Emacsなどに対応した拡張機能やプラグイン提供によるエディタサポートなど、モダンな開発環境に必要な機能も揃っています。
構文はGo言語など命令型プログラミング言語をベースにしていると、次のように説明されています。「Onyx, a new programming language powered by WebAssembly」から引用します。
Onyx’s syntax is inspired by other imperative programming languages, namely Go, Jai and Odin. With Onyx however, it is possible to program in a more functional style through some small language features, such as the pipe operator (|>).
Onyxの構文は、Go、Jai、Odinといった他の命令型プログラミング言語にインスパイアされています。しかし、Onyxでは、パイプ演算子(|>)などの小さな言語機能によって、より関数的なスタイルでプログラミングすることが可能です。
コンパイラはC言語で作られており、LLVMなどに依存せず高速にWebAssemblyへのコンパイルを実現するとのことです。
WebAssemblyへのコンパイルに特化した言語といえばAssemblyScriptが思い浮かびますが、あまり人気があるとは言えない状態です。Onyxの登場でWebAssemblyをターゲットにした言語の盛り上がりを期待したいところです。