2024-04-01から1ヶ月間の記事一覧
先日、GitHub Actionsからマネージドランナー扱いでAWS CodeBuildを呼び出せるようになった。 aws.amazon.com CodeBuildからはLambda環境を呼び出すこともできるので、簡単な処理ならLambdaを使い、ビルドなどの大掛かりでファイルシステムを触るような処理…
仕事でsedのコードをパパッと書いて使ったら、コードレビューで動かんと言われてしまった。そういえば、同僚はMacで、おれはLinuxだったな。 まぁsedならよくある話なので、しょうがないと思ってawkで同じことをした。awkは比較的もうちょっと互換性がある気…
自分は処理系管理にmiseを使っている。 mise.jdx.dev miseはASDFの精神的後継?みたいなツールで、シェルスクリプトではなくRustで書かれていたり、シンボリックリンクを回避してPATHを変更するなどのテクニックによって高速に動作するのが売りだ。 今回、ち…
この記事では、Scala初心者がプロジェクトを作るときに分かりにくい(であろう)ポイントを埋めようというものです。 こんな記事を読んだ。 trap.jp 普段Rustを書いている人がScalaを書いてみたという内容の記事で、普段Scalaに振れていない人の視点があってと…
Airframe DIについて調べて遊んでみたところ良さそうだったので紹介します。DIについて知っている人は先頭2節をスキップしてよいです。 サンプルもあります。 github.com ソフトウェアでよくある問題: 分割、結合、交換 DIとは Airframe DIとは Airframe DI…
先日(4月11日)、Scala Native 0.5.0がリリースされた。やったー! Scala Native 0.5.0 has been released! The long await multithreading, initial 32-bit architectures support and many more are now available.See https://t.co/ynLcSIJ5jK for more de…
Channelスタイルの並行処理の記述を(もちろん型安全に)可能にするライブラリOxについて調べて試してみた。結論から言うと書き味がめちゃくちゃ良くて面白い。 ソースコードも置いておく。 github.com Ox Oxとは、sttpなどの開発でお馴染のSoftwareMillによっ…
驚くなかれ、ScalaはJavascript(ESModuleかCommonJS)にコンパイルできる。それがScala.jsである。 www.scala-js.org 普通に10年開発されていて、普通にぜんぜんScalaが動く。ぜんぜんバグがない。昔はHello,Worldすると20MBのJSが吐き出されるというギャグが…
tl;dr 2024年春時点では、Catsのimportでとりあえず全部importしたいとき(つまり大抵のユースケース)では以下のようにcats.syntax.allをまず連れてくるのが正解みたい。 import cats.syntax.all._ // または import cats.syntax.all.{*, given} たまにこれで…
夢を見ると、同じ場所で目覚めることがある。 時空のどこかに固定されていて、ある一点の瞬間がずっと流れている。誰もいない。痕跡だけが焼き付いている。 だいたいそれは、過去の自分の体験に基いた心象風景で、実際に見たことがある瞬間の一部が永遠に続…
トランスパイルするDSLを作りたいが何を読んだらいいのかまだよくわかっていないので、誰か教えてほしい、という記事です。 あらすじ DSL作りたい あらすじ 最近色々な技術を勉強している。具体的にはロガーの実装を読んだりRefinement Typesの勉強をしたり…
おなじみの画像 JavaやScalaといったJVM言語のDockerイメージは、JVMを同梱しなければならない都合で肥大化しがちである。特に何もしなくても、例えば一般的なamazoncorretto:21のイメージサイズは217.7 MBもある。 hub.docker.com これにさらにビルド済みの…
株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記 今年も邁進いたします。できれば昇給や結婚もしたいです。