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

高階関数を基本的な関数の合成で作った関数でQuickCheckする

高階関数をQuickCheckでテストしてみる QuickCheckを知っていますか? QuickCheckと言うのはHaskellのデータ駆動型のテスト用ライブラリで テストしたい関数を指定するとその引数に合わせて適当なテストデータを生成してくれます。 では高階関数(関数を引数に…

WebAssemblyを出力するMinCamlコンパイラを実装しました

概要 WebAssemblyを出力するMinCamlコンパイラml2wasmをフルスクラッチで実装しました。 github.com マンデルブロ集合を計算するこんな↓感じのMinCamlのソースコードが マンデルブロ集合を出力するMinCamlソースコード こんな↓感じのWebAssemblyに変換されて…

ネットワークデバイスドライバを一からビルドしてインストールした

概要 新し目のコンピュータにDebianを入れたら、ネットワークデバイスドライバが入ってなくて結構大変だった。 経緯 最近、自分の使っていたコンピュータ(6年前くらいのデスクトップ)に限界を感じ始めたので、日本橋で新しいものを買ってくることにした。購…

プログラミング言語Egisonの型システムを設計するインターンをした

概要 2018年3月11日から4月14日まで楽天技術研究所でEgisonの型システムの設計 & 型検査器を書くインターンをしていた。 もうインターンから半年も経ってしまったが、何も書かないよりはましというわけでブログ記事を書くことにした。 実装した型検査器はこ…

ISUCON8予選に参加した

ISUCON8の予選にokeigoさん、mayokoさんとチーム「しょラーさんのおかげ」として参加していた。 最終的な得点は8000点くらいで予選落ちだった。悔しい。 チームメイトの参加記 brookbach.com 予選まで ISUCON出てみたいけどその分野について全く知らない— a_…

Vimで初めてコマンドを定義してみた

書かないと忘れちゃうから… これだけ :command! MT :MerlinTypeOf :MT