こんにちは、PythonHaruです。
最近、個人で「Nagi」という新しいプログラミング言語を開発しています。バックエンド向けの言語で、まだ試作段階ですが、実際に動くプログラムを作れるところまで来たので、一度紹介させてください。
Nagiとは
Nagiは、バックエンド開発での利用を想定したプログラミング言語です。コンパイラとランタイムはRustで実装しています。
目指しているのは、Pythonのような読みやすさと、バックエンドに求められる実行性能・並列処理を両立することです。ただ、これはあくまで開発目標で、現時点で両立できているとは言えません。
現在のNagiでは、例えば次のようなコードを書けます。
def integer_sum(values: view[i64]) -> i64:
total = 0
for value in values:
total += value
return total
整数の配列を受け取り、各要素を合計して返す関数です。
Pythonに近い構文ですが、引数や戻り値には型を明示しています。
なお、現在は試作段階のため、構文や仕様は今後変更する可能性があります。
現在の開発状況
現在は試作段階ですが、構想だけの言語ではなく、すでに実行可能なプログラムを生成できます。動作を確認できているのは次の2点です。
- ネイティブ実行
- HTTPサーバーの動作
Nagiで作成したWindows向けのサンプルプログラム「nagi-tasks.exe」をGitHub Releasesで公開しました。
Nagiで生成したプログラムを実際に試していただけます。
サンプルプログラムをダウンロード(GitHub Releases)
ソースコードとサンプルの公開について
Nagiのコンパイラとランタイムのソースコードは、現時点では非公開です。
一方、Nagiで作成したサンプルプログラムはGitHub Releasesで公開しています。興味のある方は、ぜひ試してみてください。
また、配布ファイルについてはVirusTotalの解析結果も公開しています。
VirusTotalの解析結果
協力してくれる方を探しています
今後も開発を続けていきますが、技術的な意見交換をしたり、協力してくれたりする方を探しています。
言語開発やバックエンド、Rustなどに興味がある方で、少しでも気になった方は、気軽に声をかけてもらえるとうれしいです。
連絡はX(旧Twitter)でお待ちしています。Nagiについては、こちらの投稿でも触れています。
今後の進捗も、Xで「PythonHaru」として発信していく予定です。

