タグ

ブックマーク / kakkun61.hatenablog.com (4)

  • とりとめのない GHC 線形型メモ - 趣味はデバッグ……

    GHC 9.0.1 alpha 1 がリリースされたときに線形型をいじってみていたことをメモしていなかったので思い出しながらメモしていく。 mail.haskell.org 使用バージョン GHC 9.0.0.20200925 上記リンクのもの ghcup ならそれ経由でインストールできる。 ghcups の場合は手動インストール後、下記のような設定ファイルで切り替えができるようになる1。 ghc: 9.0.1-alpha1: H:\programs\ghc-9.0.0.20200925-x86_64-unknown-mingw32\bin 線形型とは GHC では引数が1回しか使えない(1回は使わないといけない)関数型として線形型が実装されている。 一般の関数: 線形型の関数: 線形型の GHC プロポーザルはこちら。 github.com は Haskell 文法としては a %1 -

    とりとめのない GHC 線形型メモ - 趣味はデバッグ……
  • postgresql-pure を開発しました - 趣味はデバッグ……

    この記事は Haskell Advent Calendar 2019 の6日目の記事です。 hackage.haskell.org postgresql-pure は Haskell の PostgreSQL ドライバー(クライアントライブラリー)で次のような目標で開発しました。 マルチコア環境でのパフォーマンス向上 暗黙のロックを回避する マルチプラットフォーム対応 C ライブラリーの libpq への依存をなくして特に Windows でのビルドを容易にする 既存ライブラリーとしては postgres-wire が高速だがそれは Windows をサポートしていない pure Haskell 実装のため Eta などの環境へも移植しやすい可能性がある 使用方法 簡単に使用方法を説明します。 下記のようなテーブルがあるとします。 CREATE TABLE person ( id seri

    postgresql-pure を開発しました - 趣味はデバッグ……
  • GHC 環境構築 概観 と PowerShell - 趣味はデバッグ……

    Haskell の開発環境を構築する方法は何通りかあり、新しいツールが出ると「今はこれだ」とほめるブログも公開されますがそれが初学者を混乱させることがよくあります。 記事ではビルドツールのインストールにしぼり、開発支援、例えば ghc-mod・haskell-ide-engine・hhp には言及しません。 いくつか典型的な構築方法を確認した後、新たに私が作成したツールを紹介しより初学者を混乱に落とし入れます。 重鎮 Haskell Platform www.haskell.org Haskell 解説書史1の第1波から第3波までのデファクトスタンダードであった重鎮 Haskell Platform です。コンパイラー GHC とパッケージマネージャー Cabal、それにいくつかの準標準ライブラリーをまとめてインストールできるツールでこれをインストールするだけで入門書のコードはすぐ動くと

    GHC 環境構築 概観 と PowerShell - 趣味はデバッグ……
  • Haskell での可変長引数 - 趣味はデバッグ……

    『簡約! λカ娘(4)』読んだ!おもしろかった!で、その中に「Haskell でも printf じゃないか!?」っていう @nushio さんの記事で、可変長引数関数(可変個引数関数)の話があって自分なりに悩んで納得したので忘れないようにメモしておこうと思う。 作りたいもの 作りたい関数は次のようなものとします。型はイメージ。 printf :: (Show arg1, Show arg2, Show arg3, ...) => arg1 -> arg2 ->arg 3 -> ... -> String printf "Hello, world!" :: String -- => "\"Hello world\"" printf 'I' "am" 23 :: String -- => "\'I\' \"am\" 23" 引数の個数? 正確を期すならそもそも Haskell で可変長引数な

    Haskell での可変長引数 - 趣味はデバッグ……
    xef
    xef 2013/03/05
  • 1