Haskellでの型レベルプログラミングの解説書です。

(※)このページで紹介している事項は記事初出時点の情報に基づいたものです。本ページはアーカイブとして掲載しています。 ツイート 2012年5月29日 IIJ-II技術研究所では、2009年の秋からMighttpd(mightyと読む)というWebサーバの開発を始め、オープンソースとして公開しています。この実装を通じて、マルチコアの性能を引き出しつつ、コードの簡潔性を保てるアーキテクチャにたどり着きました。ここでは、各アーキテクチャについて順を追って説明します。 ネイティブ・スレッド 伝統的なサーバは、スレッド・プログラミングという手法を用いています。このアーキテクチャでは、1つのコネクションを1つのプロセスかネイティブ・スレッドが処理します。 このアーキテクチャは、プロセスやネイティブ・スレッドを生成する方法で細分化できます。「プール」方式では、あらかじめ複数を起動しておきます。例としては
Pemeliharaan Terjadwal: Spinix pada 01-Oct-2024 dari 23:00:00 sampai 31-Dec-2025 23:59:59. Selama waktu ini, Spinix permainan tidak akan tersedia. Kami memohon maaf atas ketidaknyamanan yang mungkin ditimbulkan. Pemeliharaan Terjadwal: Fairbet pada 14-Jan-2025 dari 12:00:00 sampai 01-Jan-2026 00:00:00. Selama waktu ini, Fairbet permainan tidak akan tersedia. Kami memohon maaf atas ketidaknyamanan
There are many Emacs packages and modules for Haskell. haskell-mode is stable and usable, whereas lsp-haskell is newer but under development and not ready for general use. Newbie guide Emacs is an extensible texteditor which can be extended with so-called "modes" and makes great use of keystrokes. Modes are written in Emacs Lisp (.el) programming language and provide additional commands and keystr
$Id: index.html,v 1.9 2006/06/01 16:35:13 aamine Exp $ [ 正誤表 | 書誌情報 | 詳細目次 ] [ SBCr | Amazon ] リスト処理・文字列処理の基礎からモナド、パーサコンビネータまで。 ふつうのプログラマに贈る関数型言語入門。 サポート情報 正誤表 GHC 6.4.2 のダウンロード [www.haskell.org] LazyLines のダウンロードとインストール サンプルコード (オンライン) サンプルコードのダウンロード (.zip) サンプルコードのダウンロード (.tar.gz) リファレンスマニュアル検索ツール href 質問や間違いの指摘などはメールで aamine AT loveruby.net (AT は @ に置き換え) までお願いします。 書誌情報 書名
Edited by Jeremy Gibbons and Oege de Moor in honour of Richard Bird's 60th birthday. A symposium was held to mark the occasion. Information about the book and ordering details can be found here. Some of the code and software from the book is available from the links below. Please note that the software versions will be those from around the time of publication of the book and are provided here for
Haskellプログラミング環境のSetup 以下は 2008/09/22 14:02:44 JST 現在の情報である。 ghc の HEAD の追っかけをするには HowTo:GHC-HEAD を参照のこと Haskellプログラミング環境のSetupUbuntu 8.04 上にHaskellプログラミング環境を作るコンパイラのインストールlibc6ghc 6.8.3 のインストール開発用ツールおよびライブラリ群GNUの開発ツール群ドキュメント系のライブラリ群分散バージョン管理システム字句解析器生成器 Alex構文解析器生成器 HappyエディタEmacs 23haskell-mode Ubuntu 8.04 上にHaskellプログラミング環境を作る Ubuntu 8.04 をインストールした直後の状態からHaskellプログラミング環境を作る。 Ubuntu には ghc6 というパ
この記事はHaskell Advent Calendarのために書いたものです。 先ずは自己紹介でも。 大学の専門は機械でした。制御システム工学。まあ情報(工学|科学)科ではないということです。仕事で使っている言語はPHP。実用主義的な言語ですね。Haskellとは正反対です。 Haskellは私的に使うために習得しているところ。出来ればHaskellでプロトタイプ作成くらいはさくっと出来るようにはしたい。 ホーム言語というか得意な言語とかあるといいよなあー、とか思いつつ大学生協でRWHを立ち読みし、よしこれにしようと思い立ったのがHaskellはじめだったかな。 ポリシーが明快なものは良いですね。PerlとかRubyとかPythonとか結構好きです。PHPとか好きではない。最近はClojureなんかも結構いいなあ、などと思っていたり。 それはともかく、このHaskell習得時期にAdve
今の会社に移って半年経ちました。めでたく試用期間終了です。といっても別に試用期間中に密かに首を切られるような事をしたとか、逆に試用期間が終わったからと言ってこれで定年までのうのうと働ける、という訳ではありません。未来は全く判りません。まあとにかく、一つ区切りがやってきました。 金融を知らないQuantsの仕事 私の職業の肩書きには Quantitatitatitatitative という単語がくっついて超カッコよさそう。普通は Quant というと、金融工学や統計数理に詳しい夜もブイブイいわしている超イケメン20代を想像しますが、私は金融とか全然知らないアラフォーお父さんです。それでも Quant です。お願いですから、私に何を買ったらいいかとか、聞かないでください。金融商品とか買った事ないし。というか、逆に教えて欲しいです。 私のチームは、本当の Quant さん達が開発した、金融派生商
Twitter風URL自動リンクの話(関連: Kazuho@Cybozu Labs: (Twitter の XSS 脆弱性に関連して) 構造化テキストの正しいエスケープ手法について)。 あの問題では、関数のシグネチャを expandString(String):String 、「文字列を受け取って文字列を返す関数」としているが、これはあくまで実装上の都合。実際には「プレインテキストを受け取ってHTMLを返す関数」であって、引数と帰り値のドメインはまったく異なっている。ということを踏まえると以下のコードがどれだけひどいのかわかろうというもの。 module Twitter module AutoLink # (snip) def auto_link(text, options = {}) auto_link_usernames_or_lists( auto_link_urls_custom(
レビューに参加した「関数プログラミングの楽しみ」が届きました。これは、関数プログラミングの入門書をいくつか読んだ人が、もっと高みを目指すための本です。 関数プログラミングの楽しみ 作者: Jeremy Gibbons and Oege de Moor,山下伸夫出版社/メーカー: オーム社発売日: 2010/06/23メディア: 単行本(ソフトカバー)購入: 3人 クリック: 98回この商品を含むブログ (17件) を見る 目次 この本は、関数プログラミングの父 Richard Bird が還暦を迎えることを記念して、著名人が各章を寄稿し、編集した構成となっています。コードはすべて Haskell で書かれています。目次は以下の通りです。 二分ヒープ木の楽しみ 仕様に基づくテスト -- QuickCheck を使って おりがみプログラミング Haskellで音楽を記述し解釈する 融合変換を自
本文書は次に掲げる URL で示される文書の部分的な邦訳です。 http://www.cs.uu.nl/people/daan/download/parsec/parsec.html Parsec, 高速なコンビネータパーサ Daan Leijen University of Utrecht Dept. of Computer Science PO.Box 80.089, 3508 TB Utrecht The Netherlands daan@cs.uu.nl, http://www.cs.uu.nl/~daan Parsec, 高速なコンビネータパーサ Daan Leijen University of Utrecht Dept. of Computer Science PO.Box 80.089, 3508 TB Utrecht The Netherlands daan@
■ [haskell] モナドって結局なんなの 社内勉強会でモナドについて発表しました。分かった気がするたびにすぐに手からすりぬけてしまう、それがモナド…! 追記: モナドそのものが何なのかとか考えないほうがいいんじゃないですかね! [Twitter / いーぐるとまとより引用] まさにその通りだと思います(笑)。IOの使い方、Maybeの使い方、Stateの使い方などを押さえておけば、 中がどうなってるかなんて知らなくても大丈夫。 でも、モナドの持つ「なんか秘技がありそうな感じ」が、中を覗いてみたくさせるんですよね。 この、どこまで掘っても自分の知らないことが出てくる感じがHaskellの魅力なのかも。 Haskell の本当にすごいところは、「なぜなに」を問いかけることでいつまでもプログラマが成長できるところにある。 [ふぁぼったー / ikegami__より引用] 一問一答 Q. モ
http://haskell.g.hatena.ne.jp/mr_konn/20061006/1160138831 Haskellから入った人には、cinとかcoutとか微妙すぎてよくないだろ、と、思ったので、適当に。 対象読者は、Haskellわかるし、C++もわかる人(意味ねー)。ネタを理解できる人です。 C++とは C++とは、以下のような特徴を持ったプログラミング言語です 参照透明(!) 出現評価(occurrence evaluation) (などといういかがわしい単語をつくる) パターンマッチできる 全く直感的でない構文 IOモナドを書くための大量のsyntax sugarがある 説明していくと長くなるので、それぞれ、おいおい必要になったときに説明するようにします。 C++の型 C++には、次の型があります。 整数 真偽値 連想配列 まあ、おいおい説明。(はやくも飽きてきた)
今回は「モナド(monad)」について説明します。モナドはHaskellの重要な特徴の一つなので,名前くらいは聞いたことがある人が多いでしょう。ただ,「モナドは難しい」という声もよく聞きます。 モナドとは一体なんでしょうか。前回,「HaskellはIOを取り扱うためにモナドと呼ばれる特別な仕組みを使用することで有名です」と書きました。Haskellは遅延評価を行うため,プログラマが処理の順番を確実に指定することができず,そのままでは入出力の処理には不向きです。モナドを使えば制御構造を導入できるため,この問題を解決できます。前回でいえば,(IO a -> IO a)にマッチする関数――finallyやprintThenAdd――を定義している部分がモナドに相当します。また,GHCiのプロンプトにもモナドが使われています。このように入出力操作を行うモナドの代表格が「IOモナド」です。ライブラリ
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く