• 2025-01-19の日報


    今日やったこと

    ブログ

    昨日に引き続いてブログのトラブルを調査していた。 とは言ってもほとんど寝ていたので進捗はない...

    はずだったけど、deno.jsonのjsxまわりを弄ってPreactにしたりReactに戻したりしたら直った。

    その辺りのキャッシュが更新されていなかったのか...?謎は深まる。

    Scala

    ブログがおかしくなる前に触っていたScalaを引き続き触った。

    とりあえずScalaでhttp4sを使ってサーバーを書いてみたりした。

    ライブラリをインストールする方法とかそのあたりを全然知らなかったので 難航したけどとりあえず動かすことはできた。

    http4sはわりとDSLが激しいライブラリらしく、次に試してみたいと思っている Scalatraはどうなのか気になってきた。

    // http://localhost:8080/scalaにアクセスするとHello, scala!!!と表示される。
    
    import cats.effect.{IO, IOApp, ExitCode}
    import com.comcast.ip4s._
    import org.http4s.HttpApp
    import org.http4s.ember.server.EmberServerBuilder
    import org.http4s.dsl.io._
    import org.http4s.HttpRoutes
    import scala.concurrent.duration._
    
    val routes = HttpRoutes.of[IO]:
      case GET -> Root / name => Ok(s"Hello, $name!!!")
    
    object Main extends IOApp.Simple:
      def run: IO[Unit] =
        EmberServerBuilder
          .default[IO]
          .withHost(ipv4"0.0.0.0")
          .withPort(port"8080")
          .withHttpApp(routes.orNotFound)
          .withShutdownTimeout(Duration(1, "second"))
          .build
          .useForever
          .as(ExitCode.Success)
    

    Emacsからsbt-hydraでsbtを操作したりするのを試したりもした。 REPLであることを意識せずに各種コマンドを操作できたりするのでわりと便利だなと思った。

    明日以降やりたいこと

    Common Lispまわりを進めていきたい。


    ko-fi ☕GitHub Sponsors 🐙