IT練習ノート

IT関連で調べたこと(実際は嵌ったこと)を書いています。

2017-05-01から1ヶ月間の記事一覧

ログのサンプル

a small sample (the smallest ?) of MonadLogger

ghciの使い方

プロンプトを変える :set prompt "foo>" バンドされている情報を見る :show bindings foo>let x = 123 foo>let y = "abc" foo>:show bindings x :: Num t => t = _ y :: [Char] = _ foo> ロードされているモジュールを確認する :show module foo>:l MyWebApp…

Polynomialを整形して表示する

Math.PolynomialパッケージのPoly型のShowは内部構造をそのまま文字列表現するので、読みにくいときがあります。そこで、多項式を数式のように表示するサンプルを書いてみました。 polynomial: Polynomials

Tabularのインストール

vim

deinの設定ファイルにtabularのリポジトリを追加します。 設定ファイルの場所 ~/.dein.toml 設定内容 [[plugins]] repo = 'godlygeek/tabular' 使い方 ビジュアルモードで範囲を指定して下記コマンドを実行します。(範囲指定は必要ないはずなのですが、範囲…

フェルマーの小定理のテスト

gist.github.com

TraversableからFoldableを求める

From Traversable to Foldable

DeriveFoldableの練習

FoldableであるにはFunctorであることが前提です。そのため、Derivingの対象となるのは、型の最後のパラメータになります。 a sample of deriving foldable

Record syntaxを使うときに設定しておくと便利な言語拡張

Record syntax を使うときに設定しておくと便利な言語拡張 DuplicateRecordFields フィールド名の重複を許す。ただし、曖昧になる場合はエラーになる。 Prelude> :set -XDuplicateRecordFields Prelude> data Foo = Foo {x :: Int} Prelude> data Bar = Bar …

cabalでのtest実行

ライブラリのテストを実行しようとしたらそのままではテストが実行できませんでした。 Servant-Serverをgit cloneして、cabal testしたら依存関係ライブラリがないと指摘されます。 (root)bar:servant-server foo$ cabal test Re-configuring with test suit…