タグ

haskellに関するmaganebaのブックマーク (13)

  • Best Online Poker for UK Players - Top Poker Sites in 2021

    - 200% up to $1,000 Welcome Bonus - $115,000 Sunday Special Tournament - $9,000 in Guaranteed prize - Compatible with: iOS, Android, Windows

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • ふつうの haskellプログラミング読了&はじめてのhaskell - Λάδι Βιώσας

    1週間ほど前に買ったふつけるを読み終えました。haskell 難しいと聞いてましたけど、かなりわかり易かったです。いや嘘つきましたすいません。後半、型クラスの説明のあたりからもうなにがなにやら、、、ややこしかった。けど、遅延評価がどんなもんかはわかりました。カリー化(部分適用)もわかったような気がします。モナドはよくわかりません。maybeモナドってたぶんモナドってこと?って感じ。 さてそんな状態のわたくしですが、金槌を持つ人にはなんでも釘に見える、という例え通り、さっそくhaskellでなんか書いてみたくなりました。で、ネットをさまよっていたところ、面白そうなネタを発見。 日情報オリンピック http://www.ioi-jp.org/ 高校生以下を対象にしたプログラミングコンテストらしいです。問題をみてみたところ手頃な感じなのでやってみることに。問題は↓これ。 n 個の整数からなる数

    ふつうの haskellプログラミング読了&はじめてのhaskell - Λάδι Βιώσας
  • Haskell Language

    primes = filterPrime [2..] where filterPrime (p:xs) = p : filterPrime [x | x <- xs, x `mod` p /= 0]

  • モナドのすべて Haskell におけるモナドプログラミングの理論と実践に関する包括的ガイド

    モナドのすべて Haskell におけるモナドプログラミングの理論と実践に関する包括的ガイド Version 1.1.0 このチュートリアルは、モナドの概念とその関数プログラミングにおける応用に ついて、初中級の Haskell プログラマにわかりやすく、利用価値があるような 解説をすることを旨としています。読者は Haskell になれていることを前提と しますが、モナドに関する経験は要求していません。このチュートリアルは、多 くの題材をカバーしています。後半のセクションでは、前半の題材をよく理解し ていることを前提とします。順をおって、モナドプログラミングを例示するため のサンプルコードがたくさん用意されています。一読で、すべての題材を吸収し ようというのはお勧めできません。 このチュートリアルは 3 つの部分で構成されています。最初の部分は、 関数プログラミングにおけるモナドの基

  • Haskellへのヒッチハイカーガイド - HaskellWiki

    序章: パニックに陥るな! ここ最近、友人C++/Javaプログラマの何人かが次のような発言をしていました。「Haskellの"指数関数的に加速する"という触れ込みのチュートリアルをいくつも見てみたよ。でもゆっくりにしか進まないし、最初の数ページをチラ見してみても"全然おもしろくなさそう"なコードやサンプルが載ってたから、段落を読み飛ばして、章を読み飛ばして、結局ページまるごと読み飛ばしてしまったよ。で、ようやく50ページくらいで"型クラス"、"型コンストラクタ"、"IOモナド"といった概念の説明している個所だと気がついて、もうパニック。完全に自分に言い訳して、それ以上読まないことにしてしまって、この悲しく恐ろしいHaskellとの出会いを忘れてしまうことにしてしまった。(そういうことはよくあるよね)」 テキストは読者にHaskellの実用的な側面を基のきから紹介することを目的として

  • CleanやHaskellのような純粋関数プログラミング言語における参照透過性(referential transparency)について

    CleanやHaskellのような純粋関数プログラミング言語における参照透過性(referential transparency)について 2008/3/23 参照透過性とは CleanやHaskellといった純粋関数型プログラミング言語では、参照透過性(referential transparencyあるいは参照透明性)という概念が重要になっている。 まず、参照透過性という概念から説明する。 参照透過性というと聞きなれないが、要するに、ある式の評価結果が常に同じになるということ。参照透過性というよりも、評価結果恒常性といった方が理解しやすいかもしれない。 たとえば、現在時刻を取得するgetTimeという関数があるとする。この関数は、異なる時刻に呼び出すと、当然異なる時刻を返す。そのため、この関数の呼び出しは参照透過的でない。正弦関数sinは、同じ引数に対して常に同じ値を返す。そのため、正

  • 第3回 mapからモナドを理解する

    今回は「モナド(monad)」について説明します。モナドはHaskellの重要な特徴の一つなので,名前くらいは聞いたことがある人が多いでしょう。ただ,「モナドは難しい」という声もよく聞きます。 モナドとは一体なんでしょうか。前回,「HaskellはIOを取り扱うためにモナドと呼ばれる特別な仕組みを使用することで有名です」と書きました。Haskellは遅延評価を行うため,プログラマが処理の順番を確実に指定することができず,そのままでは入出力の処理には不向きです。モナドを使えば制御構造を導入できるため,この問題を解決できます。前回でいえば,(IO a -> IO a)にマッチする関数――finallyやprintThenAdd――を定義している部分がモナドに相当します。また,GHCiのプロンプトにもモナドが使われています。このように入出力操作を行うモナドの代表格が「IOモナド」です。ライブラリ

    第3回 mapからモナドを理解する
  • Introduction

    イントロダクション モナドとは何か なぜモナドを理解しようとするのか モナドとは何か モナドは値およびその値を使う計算の並びという観点からいえば、計算を構造化 する方法です。モナドを使うと、プログラマはひとならびのブロックを使って計 算を構築することができます。このブロックはそれ自身計算の並びです。モナド はどのように合成された計算が新しい計算を形成するかを決定します。これによ り、要求があるたびに組み合わせを手でコーディングしなければならないプログ ラマを解放してくれます。 モナドを、計算を合成して、より複雑な計算にする戦略と考えると いいでしょう。たとえば、Haskell の Maybe 型については よく馴染んでいると思いますが、 data Maybe a = Nothing | Just a これは結果を返しそこなうかもしれない計算の型を表現しています。 Maybe 型が示唆するも

  • Write Yourself a Scheme in 48 Hours A Haskell Tutorial - Enjoy Programming

    Write Yourself a Scheme in 48 Hoursを読んでみます。Parsec, 高速なコンビネータパーサも参照。 Overview First steps Parsing Writing a Simple Parser Whitespace Return Values Stringのパース Atomのパース (実はBoolも) Numberのパース 今までのパーサを組み合わせる Exercises parseNumberを書き換え 文字列内のダブルクォートをエスケープさせる 他のエスケープ文字も扱えるようにする parseNumberを異なる基数の表記に対応させる 文字の処理を付け加える 実数の処理を付け加える full numeric tower 再帰的なパーサ Exercise バッククォートのシンタックスシュガーを実装 ベクタのサポート 左くくりだしを行ってtr

  • 還暦プログラマの挑戦(Haskell に挑む→F#による言語造り)

    Haskell HASKELL Wiki の Write Yourself a Scheme in 48 Hours 1.Overview 2.First Steps: Compiling and running 3.Parsing [言語を作るぞ その1] 48時間でSchemeを作っちゃおうって ・・・sigh かつて、10分でやろうってのを、とてもじゃない、10分じゃできなかった例がある。さてこいつはどのくらいかかるんだろう。 そもそも、Schemeはやったことがない。 無謀といえば無謀なんだけど、「parser」の一言につられ、かじり始める。 さて、どうなることやら 1.Overview ウェブ上のHaskellの記事は、ほとんどが言語マニュアル的なアプローチをしている。 それらは、会話環境で、シンタックス、言語構造や、ちょっとした関数を説明するだけで、関数やプログラ

  • Haskell で書いた HTTP サーバー - あどけない話

    Haskell で書いた HTTP サーバー Mighttpdをリリースしました。Mighty (マイティー)と読みます。興味のある人は、遊んでみて下さい。これまで Mew.org は Apache で運用してきましたが、すでに Mighttpd に置き換えています。

    Haskell で書いた HTTP サーバー - あどけない話
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 1