亀岡 亮太Ryota Kameoka
リードエンジニア
京都大学経済学部在学中より、京都のIT系学生コミュニティCAMPHOR-で活動する傍ら、複数のスタートアップの立ち上げに関わり、フロントエンドからインフラストラクチャまでの開発・運用をおおよそ一人で支える。2017年5月より現職。好きなエディタはNeovim。好きな言語はHaskell。
...
TypeFamilyDependencies の実用的な例を考える
FunctionalDependencies という GHC 言語拡張がある.Haskell Wiki によると,Functional dependencies are used to constrain the parameters of type classes. と書かれているが,これはどういうことか.
...
TemplateHaskellでコード中にJSONを埋め込んだりコンパイル時にファイルから型安全に読み込んだりする
前回よりはもう少し実用的な例を.Template Haskell を使って,Haskell のコード中に JSON をそのまま埋め込むことができるようにする.また,あらかじめ用意しておいた JSON ファイルをコンパイル時に読み込み,指定したデータ型の値にする.
...
Template Haskell でコンパイル時 FizzBuzz
数ヶ月前に Twitter で,コンパイル時に FizzBuzz を計算して,実行時には計算された文字列を出力をするだけ,というコンパイル時 FizzBuzz を何かの言語でやっているのを見かけた.元ネタは江添さんがC++で書いたものらしい.インスピレーションを受けて,Haskell で書いてはみたが,簡単すぎて全然おもしろくなくなってしまった.
...
Type-level TypeScript
この記事は CAMPHOR- Advent Calendar 2017 の21日目の記事です.@ryota-ka です.普段は HERP という会社でリードエンジニアとして働いています.一昨日19日にサービスのティザーサイトを公開したばかりなので見てください.
...
開発効率向上 tips vol.1 -ターミナル・シェル編-
最近弊社でも大学生のエンジニアインターンが増えてきて,彼らの成長のために,開発にあたっての知見を効率的に共有する手段を色々と模索している.こういった知見は再利用性も高く,社内に閉じている必要もまったくないので,こうしてブログに書き溜めていくことにしてみようかと思う.第一弾として,端末エミュレータ上でのオペレーションの効率化について記す.
...
Terraform の module で2重ループしたい ― GitHub の issue labels を例に
実現したいこと Terraform の GitHub provider を用いて,issues および pull requests のラベルを管理したい.その際に,いくつかのラベルをひとまとめにしておき,複数のリポジトリが同じラベル群を持つようにしたい.また,module はネストすることもできるが,複雑になるので避けたい.