Erlang、Elixir、その他の機能的言語を非常に小さなシステムにもたらします。
ATOMVMは、ErlangVM機能のサブセットをサポートする最小限のErlang VMをゼロから実装し、MCUのような非常に小さなシステムで変更されていないビームバイナリを実行できます。
Atomvmは、最小限の労力で新しいプラットフォームに簡単に移植できることを目指しているため、近い将来に追加のプラットフォームがサポートされる可能性があります。
より完全な「Getting Guide」、例、詳細なビルド手順、AtomVMプロジェクトのWebサイトで利用可能な連絡先情報など、さらに多くの情報があります。
次のIoTプロジェクトを開始できるようにするために、例リポジトリをチェックすることを忘れないでください。
v0.6.xリリースを使用してください。メインブランチは開発目的であり、不安定である可能性があります。
建物に必要な:
ドキュメントとカバレッジ:
make coverage )。 $ mkdir build
$ cd build
$ cmake ..
$ make
$ ./src/AtomVM ./examples/erlang/hello_world.avm
ビルドディレクトリ内でテストを実行します。
$ ./tests/test-erlang
$ ./tests/test-enif
$ ./tests/test-mailbox
$ ./tests/test-structs
$ ./src/AtomVM ./tests/libs/estdlib/test_estdlib.avm
$ ./src/AtomVM ./tests/libs/eavmlib/test_eavmlib.avm
$ ./src/AtomVM ./tests/libs/alisp/test_alisp.avm
完全なビルド手順は、一般的なUNIX(Linux、Macos、FreeBSD、Dragonfly)、ESP32、STM32、Raspberry Pi PicoおよびPico 2(RP2)、およびWasm(Nodejs/Web)のドキュメントで入手できます。

ATOMVMはまだ初期段階にありますが、例やテストで利用可能なアプリケーションと同様の簡単なアプリケーションを実行できます。
Atomvm同様のメッセージでクラッシュする可能性があります。
Undecoded opcode: 15
Aborted (core dumped)
これは基本的に、命令がまだ実装されていないこと、または古いバージョンが使用されていることを意味します。最新バージョンを使用して常にATOMVMを実行してください。
このプロジェクトは進行中の作業であるため、変更されていないソフトウェアの実行を妨げるいくつかの既知の制限があります。それらのいくつかは次のとおりです。
これらの制限はすべて、合理的な時間で固定されます。
このプロジェクトは、Davide Bettioによって作成されており、現在はますます多くの貢献者から開発されています。
あらゆる種類の貢献を歓迎します。仮想マシン、コアライブラリ、ドキュメントを改善するか、組織リポジトリのいずれかに貢献することにより、このリポジトリに貢献できます。
このプロジェクトは、Apache 2.0ライセンスの条件の下にあります。