Gleamは、最初からほとんどのErlang / Elixirエコシステムにアクセスできない。Gleamは、BEAM上のすべての言語が相互運用できるから、最初からエコシステム全体にアクセスできるよ。例えば、gleam_otpの静的スーパーバイザーのモジュール内の関数はこんな感じ:@external(erlang, "supervisor", "start_link") fn erlang_start_link( module: Atom, args: #(ErlangStartFlags, List(ErlangChildSpec)), ) -> Result(Pid, Dynamic) もう一つの例として、Elixirパッケージblake2へのバインディングを実装しているパッケージ[0]をランダムに選んでみた。@external(erlang, "Elixir.Blake2", "hash2b") pub fn hash2b(message m: BitArray, output_size output_size: Int) -> BitArray @external(erlang, "Elixir.Blake2", "hash2b") pub fn hash2b_secret( message m: BitArray, output_size output_size: Int, secret_key secret_key: BitArray, ) -> BitArray Gleamに合わないならそれでもいいけど、BEAMエコシステムに頼れないってのは間違いだよ! [0]: https://github.com/sisou/nimiq_gleam/blob/main/gblake2/src/g... [1]: https://hex.pm/packages/blake2