PyPI の統計情報を BigQuery で集計する

Python のパッケージインデックス PyPI における,パッケージのダウンロード数等のデータは BigQuery で公開されています.このデータを利用するとパッケージのダウンロード数を集計したり,よく使われている処理系のバージョンなどを簡単に知ることが出来ます.

“PyPI の統計情報を BigQuery で集計する” の続きを読む

mypy の reveal_type で型情報をデバッグする

Python の静的型検査器の mypy を使うと,型ヒントを記述したプログラムを簡単に静的に型検査を行うことが出来ます.しかし,予想外のところで型エラーが出たときなど,なぜそのようなエラーが出たのかわからないときもあります.

reveal_type を使うと,プログラム中の式が mypy によってどのような型がつけられているかを簡単にデバッグ出力することが出来ます.これを利用することで,プログラマーが書いた型ヒントが間違っているのか,typeshed のスタブファイルが間違っているのか,はたまた mypy 自体のバグなのかが少し分かりやすくなります.

“mypy の reveal_type で型情報をデバッグする” の続きを読む

OCaml の未使用変数の警告について

OCaml において,以下のような場合は未使用変数の警告が出ますが,

$ ocaml
        OCaml version 4.04.0

# let x = 1 in 1;;
Warning 26: unused variable x.
- : int = 1

次のような場合は未使用変数の警告が出ません.

$ ocaml
        OCaml version 4.04.0

# let f x = 1;;
val f : 'a -> int = <fun>

この違いが気になったので調べてみました.

“OCaml の未使用変数の警告について” の続きを読む

TeX ドキュメントの作成過程を GIF アニメに変換する

Git でバージョン管理された \TeX ドキュメントの作成過程を GIF アニメーションに変換するシェルスクリプト tex-to-gif を作成しました. この記事では tex-to-gif の使用例を簡単に紹介します.

“TeX ドキュメントの作成過程を GIF アニメに変換する” の続きを読む

Docker Compose でカーネルパラメータを設定する

2016年7月にリリースされた Docker 1.12.0 から docker run --sysctl net.core.somaxconn=65535 などとすることによって, コンテナ内のカーネルパラメータを調整できるようになりました. Docker Composeではこのオプションに対応する設定がありませんでしたが, 2017年1月にリリースされた Docker Compose 1.10.0 からカーネルパラメータを設定できるようになったので, 簡単に紹介します.
“Docker Compose でカーネルパラメータを設定する” の続きを読む