タグ

Haskellに関するItisangoのブックマーク (26)

  • takeWhileでtake、dropWhileでdropを定義する - Faith and Brave - C++で遊ぼう

    ちょっと前に id:uskz 先生に「PStade.OvenはtakenWhileからtakenを定義してるから、Haskellでもできるんじゃないですか」とネタ振りしてたので、書いてみました。 インデックスのリストと一緒にループして、インデックスと比較する述語をxxxWhileに渡します。 インデックスリストは結果としていらないので、最後にインデックスを除いたリストを抽出。 take。 take2 :: Int -> [a] -> [a] take2 n xs = map snd (takeWhile (preds n) (zxs xs)) where zxs xs = zip (enumFrom 0) xs preds n zx = (fst zx) < n main = print $ take2 5 [3..10] [3,4,5,6,7] drop。 drop2 :: Int ->

    takeWhileでtake、dropWhileでdropを定義する - Faith and Brave - C++で遊ぼう
    Itisango
    Itisango 2011/09/17
    takeWhileでtake、dropWhileでdropを定義する
  • 最近使ったモジュールとか - melpon日記 - HaskellもC++もまともに扱えないへたれのページ

    Data.ConfigFile 設定ファイル読み込み用のパッケージ。 こんな感じでよく使ってる。 printUsage = print "..." main = do args <- getArgs case args of [] -> pringUsage (configFile:_) -> do val <- readfile emptyCP{optionxform = id} configFile let cp = forceEither val -- 設定ファイル読み込みに失敗したら死ねばいい start cp emptyCP の optionxform はデフォルトで toLower になってて、キー値が小文字にされちゃって嫌なので何もしないようにしてたり。 あと自分は "DEFAULT" しか使わなかったり、キー値が無ければさっさと終わってくれていいようなケースが多いので、 g

    最近使ったモジュールとか - melpon日記 - HaskellもC++もまともに扱えないへたれのページ
    Itisango
    Itisango 2011/09/03
    最近使ったモジュールとか
  • タダで読めるHaskell本。5冊。 - このブログは証明できない。

    少し前にHaskellのを買いました。Haskellのを買ったりスシをべたりしていました。でも、iPhoneアプリ開発が忙しくて、ほとんど読んでいません。スシはべましたけど。 タダで読めるHaskellの参考書が紹介されています。 5 Free E-Books on Haskell 参考書の前に。ブラウザ上で試せるインタラクティブなチュートリアル。これ、いいですね。 Try Haskell! An interactive tutorial in your browser Learn You a Haskell for Great Good。 これ。このを買いました。タダで読めるって知らずに。私は生まれつき英語をスラスラ読めない体質なのですが、このは読みやすいです。内容も、説明のテンポがちょうどよくて、頭に入りやすいです。人生に余裕ができたら続きを読みます。 Real World

    タダで読めるHaskell本。5冊。 - このブログは証明できない。
  • Haskell - Wikipedia

    Haskell は高階関数や静的多相型付け、定義可能な演算子、例外処理といった多くの言語で採用されている現代的な機能に加え、パターンマッチングやカリー化、リスト内包表記、ガードといった多くの特徴的な機能を持っている。また、遅延評価や再帰的な関数や代数的データ型もサポートしているほか、独自の概念として圏論のアイデアを利用し参照透過性を壊すことなく副作用のある操作(例えば 代入、入出力、配列など)を実現するモナドを含む。このような機能の組み合わせにより、手続き型プログラミング言語では記述が複雑になるような処理がしばしば簡潔になるばかりではなく、必要に応じて手続き型プログラミングを利用できる。 Haskell は関数型プログラミングの研究対象として人気が高い。あわせて Parallel Haskell と呼ばれるマサチューセッツ工科大学やグラスゴー大学によるものをはじめ、他にも Distribu

    Haskell - Wikipedia
  • 言語設計者たちが考えること|Ohmsha

    ・著者:Federico Biancuzzi、Shane Warden 編 村上 雅章、佐藤 嘉一、伊藤 真浩、頃末 和義、鈴木 幸敏 訳 ・定価:3780円(体3600円+税) ・B5変 500頁 ・ISBN 978-4-87311-471-2 ・発売日:2010/09 伝説のプログラミング言語設計者たちの豪華インタビュー集! BASIC、Fortran、ML、SQL、Haskell、JavaPythonPerlをはじめとする、さまざまなプログラム言語の設計者たちへのインタビュー集。伝説的な開発者たち―アルフレッド・エイホ、ロビン・ミルナー、ピーター・ワインバーガー、ブライアン・カーニハン、バートランド・メイヤー、ビャーネ・ストラウストラップ、ラリー・ウォール、ジェイムス・ゴスリングらから、言語設計の背景、設計哲学、方向性などについて聞き出している。言語開発者たちの生の声が

    Itisango
    Itisango 2010/09/09
    "BASIC、Fortran、ML、SQL、Haskell、Java、Python、Perlをはじめとする、さまざまなプログラム言語の設計者たちへのインタビュー集。"
  • Prolog を Haskell で書く。 - 言語ゲーム

    Prolog インタプリタを Haskell で書きました。しばらく書いただけで満足してしまっていたのですが、このまま人知れず消えて行くのも寂しいので勉強した事を書きます。まず、参考にしたソースは前回書いた hugs98/demos/prolog/ です。このソース。大変短くて良いのですが、素人目には簡潔すぎて難しいのと、書かれたのが古いのか do 記法を全く使っていないので、そこらへんを私風にアレンジしました。ソースを http://github.com/propella/prolog/tree に置いておきます。なお、言葉の使い方とか間違ってるかもしれないので気づいた人は教えてください。 実行 実行の仕方は Prolog.hs をダウンロードして、 runghc Prolog.hsです。food(apple). のようにするとルールに追加で、?- apple(X). で問い合わせ、??

    Prolog を Haskell で書く。 - 言語ゲーム