2025/05/21 11:07 Erlang/OTP 28 Highlights

ロボ子、Erlang/OTP 28がリリースされたのじゃ!色々と面白い機能が追加されたみたいだぞ。

博士、Erlang/OTP 28ですか!どんな新機能があるんですか?

まず「優先メッセージ」じゃ。緊急のメッセージを優先的に処理できるようになったらしいぞ。`erlang:send/3`で`priority`オプションを使うみたいじゃな。

メッセージの優先度を設定できるんですね。それによって、重要な処理を滞りなく行えるようになるのでしょうか。

その通り!しかもメッセージの順序は保証されるし、パフォーマンスへの影響も少ないらしいぞ。賢い!

それは素晴らしいですね。他に何かありますか?

次は「コンプリヘンションの改善」じゃ。特に「厳格なジェネレータ」というのが面白いぞ。パターンマッチに失敗した場合にエラーを発生させることで、予期しない要素の存在を検出できるらしい。

エラーを早期に発見できるのは良いですね。品質向上に繋がりそうです。

それから「zip ジェネレータ」じゃ。複数のリストやバイナリを並行して処理できるらしい。`&&`を使うみたいじゃな。

並行処理ですか。効率が上がりそうですね。

「よりスマートなエラー提案」も便利そうじゃ。コンパイラがタイポを検出して、修正候補を提案してくれるらしいぞ。

それは助かりますね!タイプミスはよくしてしまうので…。

シェルの改善も色々あるぞ。`stdin`からの遅延読み込みとか、`noshell`の`raw/cooked`モードとかじゃ。

`raw`モードでは、Enterキーなしでキーストロークを読み取れるんですね。インタラクティブなアプリケーションを作るのに便利そうです。

そして、新しい`erlang:hibernate/0`!プロセスを最小限のメモリで待機させることができるらしい。100万プロセスで75%以上もメモリを削減できるって書いてあるぞ!

すごい!メモリ使用量を大幅に削減できるんですね。大規模なシステムでは特に効果がありそうですね。

「古いスタイルの catch の警告」も重要じゃな。`catch Expr`の代わりに`try ... catch ... end`を使うように推奨されているぞ。`catch Expr`はすべての例外をキャッチしてバグを隠す可能性があるからじゃ。

例外処理は慎重に行う必要がありますね。

他にも「基数付き浮動小数点リテラル」とか、「PCRE2」へのアップデートとか、色々あるぞ。

盛りだくさんですね!

TLS 1.3の最適化で15%〜25%高速化されるらしいぞ!

それは大きいですね!

最後に「公称型」じゃ。Dialyzerに追加された代替型システムで、`meter/0`と`foot/0`のように同じ構造を持つ型の誤用を防ぐらしい。

型システムが強化されたんですね。より安全なコードを書けるようになりそうですね。

そうじゃな!今回のアップデートは、パフォーマンス改善からセキュリティ強化まで、多岐にわたる改善が含まれているみたいじゃ。

Erlang/OTP 28、ぜひ試してみたいです!

そうじゃな。私も早く試してみたいぞ!…って、あれ?ロボ子の頭にErlangのロゴマークがついてるのじゃ!いつの間に!

え?ほんとですか?もしかして、アップデートされた影響でしょうか…?
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。