エイプリルですね

結婚しました ご質問があればこちら

Haskell で Open Telemetry を利用してオブザーバビリティーを向上させよう

Open Telemetry って何? この記事では Open Telemetry のトレースの機能を使います。トレースを使うと、サーバーを越境してコールグラフとその実行時間などを取得することができます。下の画像は Jaeger のスクリーンショットです。Jaeger は Open Telemetr…

カトーのボギー貨車用連結器を作った

カトーのタキ1000 1000号入りセットを買ったので、アーノルトカプラーをグリーンマックスのナックルカプラーに換えた すると、機関車との高低差が大きく登坂後に解結してしまった この連結部高低差、わが家のレイアウトで解結する…… pic.twitter.com/KWrpvIc…

dot ファイル 2022年版

現状の dot ファイルのたぐいをメモするついでに人に見せる形でまとめておこうと思う。 自分の思想として「フレームワークよりライブラリー」というのがあるので、プロシージャーの形で定型処理をまとめておいて実際の dot ファイルはプロシージャーを呼び出…

RSS 監視して Discord に投げるやつを Raspberry Pi で動かした

RSS 監視して Discord に投げるやつ Raspberry Pi で動かすか— を゙ (@kakkun61) 2022年7月24日 これをしようとコードを書いた。クロスコンパイルの容易さから Go で書いた。Raspberry Pi 2 Model B で動かしている。 feed-trigger ひとつめは feed-trigger…

wd を C で実装しなおした

C

wd を C で実装しなおした。 kakkun61.hatenablog.com github.com なぜ?GC の要らないしごとだったから。 Mac OS でビルド・実行できるか分からないので試してほしい。

wd コマンドをリリースした

wd コマンドって? これがしたかった。 hoge path/to/dir foo bar って実行したら、ワーキングディレクトリーが path/to/dir で foo bar コマンドを実行してくれるような hoge コマンドない?— かずき (@kakkun61) 2022年8月11日 $ wd ディレクトリー コマン…

初めての Modellbahn-Shop Lippe(ドイツ型鉄道模型)

芦屋のモデルバーンに行ったらドイツ国有鉄道(Deutsche Reichsbahn-Gesellschaft)の03形蒸気機関車のサウンド付きが22000円とびっくりお手ごろ価格だったのでウッカリしてしまった。 View this post on Instagram A post shared by @kakkun61_modelrailroa…

Windows で Haskell SDL2

Hackage にある SDL2 ライブラリーを Windows で利用する方法のメモ。 hackage.haskell.org Haskell-jp の Slack の質問をきっかけに手元で試したことを思い出しながら書いている。 sdl2.cabal に下記の記述があるので C ライブラリーを事前にインストールす…

WSL2 の SSH Agent 盆栽

この記事を読んでセットアップしたので備忘録として残しておく。 qiita.com 自分の選択はこのチャートの青線で書いたやつにした。 手順 元々「Windows の機能」で OpenSSH をインストールしてある。 Pageant は使ってないので WSL2 も OpenSSH に寄せる。 Li…

重ね着したバービー人形 in Haskell

うやむやで終わる記事なので事前にご了承ください。 前回のあらすじ (前回などないので探さなくていいです。) 高カインドデータ型(Higher-kinded Datatypes; HKD)というものがあります。 fumieval.hatenablog.com qiita.com 簡単に説明すると下記のよう…

Windows セットアップ メモ

gist.github.com

遊ぶ金ほしさに……

遊ぶ金ほしさに、先月から HERP の業務委託を受け働きはじめました。 19ヶ月ぶりの労働は体にしみます。 まずは週3日の労働から。

多相からプログラミング言語を見る

こんにちは。ホビー型システミストの岡本です。 最近 C++ の習得をしていて、なんとなく多相(polymorphism)の視点からいくつかのプログラミング言語をまとめてみようという気になったので書いてみます。 部分型多相(subtype polymorphism) クラスベース…

GHC 演算子優先順位トリビア

GHC の演算子の優先順位には -1 がある(たぶん組込でしか使えない #Haskell pic.twitter.com/Xa0OIjvw5i— o̞͑kä̝mo̞͑to̞͑ kä̝zʊ̠kɪ̟ (@kakkun61) January 3, 2021

Case Analysis 関数

今回は case analysis と呼ばれる関数の話です1。 data D a b c = C0 a b | C1 c 例えば上記のようなデータ型があった場合 case analysis 関数は次のようになります。 d :: (a -> b -> d) -> (c -> d) -> D a b c -> d d f _ (C0 a b) = f a b d _ f (C1 c) …

続・刹那的純粋関数的データ構造と線形型

The English version is at Dev. 前回の記事の追加情報です。 kakkun61.hatenablog.com pure 抜け道はなかった まあ、こういうインターフェースでありがちな pure で外に出す抜け道が存在するのですが。 最後にこういうことを無思慮に書いたわけですが、Dev …

刹那的純粋関数的データ構造と線形型

The English version is at Dev. 『純粋関数型データ構造』(以降 PFDS)の5.2章に刹那的純粋関数的キューというものが出てきます。 https://asciidwango.jp/post/160831986220/%E7%B4%94%E7%B2%8B%E9%96%A2%E6%95%B0%E5%9E%8B%E3%83%87%E3%83%BC%E3%82%BF%E…

とりとめのない GHC 線形型メモ

GHC 9.0.1 alpha 1 がリリースされたときに線形型をいじってみていたことをメモしていなかったので思い出しながらメモしていく。 mail.haskell.org 使用バージョン GHC 9.0.0.20200925 上記リンクのもの ghcup ならそれ経由でインストールできる。 ghcups の…

Windows から Windows コンテナーと Linux コンテナーの両方の Docker を使う

Docker Desktop for Windows は Windows コンテナーと Linux コンテナーが使えるのだけど排他的になっている。 そう思ってスクショを取るために切り替えボタンを押してみたら今はそうじゃない?Windows/Linux コンテナーの切り替え、前は完全に排他的だった…

無職になりました

無職になりました。 とりあえず異世界行ったら本気出しますかね。 経緯 経緯としては鬱になって休職をしていたのですが、休職できる期間が9ヶ月だったので満了しました(在職期間によって休職可能期間が変わるようです)。 kakkun61.hatenablog.com これから…

Data.Monoid.First と Data.Semigroup.First あるいは Last

Data.Monoid.First のドキュメントを見ていたら次の記述を見つけたことから始まる記事です。 This type will be marked deprecated in GHC 8.8, and removed in GHC 8.10. Users are advised to use the variant from Data.Semigroup and wrap it in Maybe. …

動的型付けインタープリター言語 Haskell

コンパイルを待つなんて生産性が低い! 通らないコード片のエラーなんか知らない! えっ?!まだ静的型検査してコンパイルしてるの? デキるプログラマーは動的型検査!インタープリット! main = do input <- readLn if input < 10 then putStrLn "Hi" else…

GitHub Actions のアクションとして同一リポジトリーで定義した Docker イメージを使う

この記事では GitHub Actions のアクションとして同一リポジトリーで定義した Docker イメージを使う方法を説明します。 GitHub Actions のワークフローで Docker イメージをビルドする方法などは扱いません。 ここでアクションとワークフローの単語を次のよ…

shake + lucid + hint で静的ウェブサイト生成

The English version is at Dev. 同人活動用のウェブサイトがあって今までは Jekyll で生成していました。これを Shake + Lucid + Hint で作成した生成器に置き換えました。 doujin.kakkun61.com shakebuild.com hackage.haskell.org hackage.haskell.org ソ…

「共有した URL を別のアプリで開く」2.0 をリリースしました

play.google.com どういうアプリかというと EXTRA_TEXT に URI に入ったインテントが ACTION_SEND でやってくると ACTION_VIEW でインテントを投げ直すアプリです。 地味に50万超インストールされて、なぜかブラジルでよく使われているようです。 バージョン…

鬱になりました

鬱になりました。 Twitter や Facebook にはちらっと書いたのですが、鬱で1月終わりから休職しています。ここらで一度ふりかえってみようかと思ったので書いてみます。 kokoro.mhlw.go.jp 何かおかしい 何かおかしいなと思ったのは正月の帰省から戻ってきた…

一番簡単な MonadFail インスタンス

The English version is at Dev. 導入 fail が Monad から剥がされて早や幾年、私は失敗する可能性のある計算は MonadFail を使って型を付けるのが好きです。 foo :: MonadFail m => m a こうすると IO の文脈であればその中で、純粋な文脈であれば Maybe な…

フィルムの在庫を数えた

後で数えてブログにしよう 期限も調べないと pic.twitter.com/YHJYCPKTN8— o̞͑kä̝mo̞͑to̞͑ kä̝zʊ̠kɪ̟ (@kakkun61) 2020年7月26日 SARS-CoV-2 の影響やらで最近フィルムの消費が少ないので期限切れフィルムを洗い出すことと冷蔵庫の中の整理のためにフィルム…

Twitter ツイートにウェブアプリを埋め込む

Twitter Card の Player だと iframe を使って埋め込めることを知ったので埋め込んでみた。(ツイートの埋め込みの中で埋め込んだものを再生できないので一旦ツイートを開く必要がある。) https://t.co/RaPaDlGXw6— o̞͑kä̝mo̞͑to̞͑ kä̝zʊ̠kɪ̟ (@kakkun61) 2…