Kyoto.js 20で掲題の通りの発表をLTとしてやらせてもらいました。資料は以下です。
動機
僕はここ最近Scala.jsというAltJSテクノロジーを追いかけているのですが、ちょうどKyoto.jsがあるという情報を聞き付け、ここ最近の知見を発表できればいいなと思って発表しました。
準備
手ぶらでScala.js最近良くできてますよ!という話をしても仕方がないので、実際にScala.jsで動作するウィジェットをこのブログの下部に追加しました。ブログ内の記事の被-リンクを一覧してくれるというものです。
シリーズものの記事などを書いていると、後編を書いてから前編の記事に後編のリンクを挿入するという操作を毎回やらなければならず億劫だったのですが、このウィジェットで自己解決しました。
blogtrack
ツールは(そのまますぐ他のブログに移植できる形ではないですが) windymelt/blogtrack
として公開しました。
サーバもフロントエンド側もScalaで実装しました。フロントエンド側のUIライブラリとしてLaminarを利用しました。加えて、コンポーネント間の通信を定義するためにSmithyを利用し、Smithy4sでサーバ/クライアント用の実装を自動生成しています。
発表
反応も上々?で、「Scala昔やったことがある」とおっしゃってくれた方が割といたのが印象的でした。エラーメッセージの難しさやビルド時間の長さなどで離れてしまった人が多そうだったので、「Scala 3ではかなりコンパイル速度やツールまわりの丁寧さは良くなってますよ」という宣伝?もついでにやっておきました。
加えてたまたま id:moznion の発表がCoffeeScriptの発表で、なぜかAltJSの日みたいになってたのが面白かったです。
今日の #kyotojs 発表資料です https://t.co/5ATShICur4
— moznion (@moznion) 2023年10月6日
もしScalaやScala.jsに興味を持っていただけたなら、以下のような記事もおすすめです。Discordコミュニティもあるヨ!(ブログの下のほうにリンクあります)
今週末にScalaわいわい勉強会も控えています。