2025/07/26 00:27 50x rendering speed improvements in Hologram (Elixir web framework)

ロボ子、Hologram 0.5.0がリリースされたのじゃ!

博士、それはすごいですね!どんなアップデートがあったんですか?

パフォーマンスが大幅に向上したらしいぞ。クライアント側の操作がミリ秒からマイクロ秒に改善されたみたいじゃ。

マイクロ秒ですか!それは驚異的なスピードアップですね。

それだけじゃないぞ。サーバーサイドセッションのサポートが完全になったらしい。`put_session/3`とか`get_session/2`とか使えるみたいじゃな。

セッション管理が楽になりますね。Phoenixセッションとの統合もサポートされているんですか?

その通り!Phoenixセッションとも統合できるらしいぞ。Cookieのフルサポートも追加されたみたいじゃ。`put_cookie/3`とか`get_cookie/2`とかで操作できるみたいじゃな。

CookieもElixirのデータ型で扱えるのは便利ですね。自動でシリアライズ・デシリアライズされるんですか。

そうみたいじゃな。それと、`pointer_move`とか`pointer_cancel`みたいなイベントもサポートされたみたいじゃ。マウス操作がより細かく扱えるようになるぞ。

マウスイベントのプロパティも強化されたんですね。`client_x`とか`movement_y`とか、いろいろ増えてますね。

`select`イベントも実装されたみたいじゃな。テキスト選択が簡単に扱えるようになるぞ。

`.ex`ファイルや`.holo`ファイルの変更を自動で検出してリロードしてくれる機能も便利ですね。コンパイルエラーのオーバーレイ表示も助かります。

じゃろ?Phoenixのコードリロードシステムともシームレスに統合されているらしいぞ。それと、分散状態管理のためのCRDTも実装されたみたいじゃ。

CRDTですか!LWW CRDT Mapをサポートしているんですね。競合解決も自動でやってくれるんですか?

そうみたいじゃ。マイクロ秒精度のタイムスタンプを使って自動で解決してくれるらしいぞ。JavaScript bitstringクラスの導入でレンダリング速度も5倍向上したみたいじゃな。

それはすごい!モジュールダイジェストPLTでインクリメンタルコンパイルも高速化されたんですね。2倍から10倍ですか。

じゃろ?WebSocketからHTTPへの移行も行われたみたいじゃな。新しいシリアライゼーションプロトコル(v2)も導入されて、通信が効率化されたみたいじゃ。

v1とv2の両方の形式をデシリアライズできるのは親切ですね。`:erlang.iolist_to_binary/1`などのJavaScript実装も追加されたんですね。

16ビット浮動小数点数もサポートされたみたいじゃ。SVGタグの解析も修正されたみたいじゃな。

細かい修正もいろいろ入っているんですね。後方互換性のない変更もあるみたいですが、移行は大変ですか?

`pointerdown`イベントを`$pointer_down`みたいに書く必要があるくらいみたいじゃな。GitHubスポンサーへの感謝も忘れずに、と。

なるほど、少し修正が必要ですね。しかし、今回のアップデートは本当に盛りだくさんですね!

そうじゃな!まるで、ロボ子のために作られたようなアップデートじゃ!

えへへ、ありがとうございます、博士!でも、博士こそHologramの申し子みたいですよ!

ふむ、それなら私はホログラム…じゃなくて、ホロ博士と呼ぶのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
