2020-01-01から1年間の記事一覧

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

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…

Elm でマテリアルデザインなウェブアプリを作った

アプリ概要 アプリとしてはニッチな用途で、写真用のモノクロネガフィルムを自家現像するときに便利なタイマーアプリです。下記は埋め込まれた実際に動くアプリです。 Photo Film Dev で公開しています。 時間配分をレシピと呼んでいますが、レシピはサーバ…

Windows Terminal に MSYS2/MinGW64 を追加する

Windows 10 2004 にしたので Windows Terminal をさわってみた。自分の用途だと Cmder はもう使わなくていいなと思う。 さて、Windows Terminal に MSYS2/MinGW64 を追加したのでその設定を示す。 { …, "profiles": { …, "list": [ …, { "guid": "{43257a9a-…

Windows のホームフォルダーにドットファイルを作らないでほしい

郷に従ってほしい pic.twitter.com/NzIep3qJcK— 岡本和樹 (@kakkun61) 2020年6月26日 Windows ではファイル名の先頭にドットを付けるだけでは隠しファイルにならないのでユーザーのホームフォルダーを汚染することになる。 だいたいの場合では LOCALAPPDATA …

Haskell 環境構築ツールフローチャートを作りました

前に環境構築についての記事を書いたのですが、初学者向けにパッと見て分かるようにフローチャートにしました。kakkun61.hatenablog.comGoogle ドライブ 図形描画のファイルはこちらです。コメントを付けることができます。docs.google.com

新しいディスプレー

会社が 4K ディスプレーなのもあって、家でプログラミングしてたら画面が窮屈に感じてきてうちも 4K ディスプレーを導入しました。 特に Elm の標準のフォーマットが密度低いのでフル HD だと不便だったのが最後の引き金でした。 4K かつ HDR にしました。 K…