タグ

haskellに関するpaellaのブックマーク (14)

  • Haskell から見た node.js - あどけない話

    誤訳 以前、「サーバサイドJavaScriptのNode.js、最初はCやHaskellを検討し失敗。開発者ライアン・ダール氏へのインタビュー」という記事が twitter で話題になっていました。 ―― なぜJavaScriptを選んだのでしょう? ダール氏 実は最初は違いました。最初はC、Lua、Haskellなどで失敗していました。そんなときV8(Chromeが採用しているJavaScriptエンジン)に気がついて、やろうとしていることに対してJavaScriptが完璧な言語だと突然ひらめいたのです。 ただでさえ、Haskell は遅いと誤解されているのに、このような悪意さえ感じらえる訳だと、さらに誤解が深まりそうです。原文にはこう書かれています。 Dahl: Originally I didn’t. I had several failed private projects doi

    Haskell から見た node.js - あどけない話
    paella
    paella 2011/08/25
    「僕の経験では、ネットワークのコードを Haskell で書くと、C と同等かそれ以上の速度が出ます」ほう「Haskell で今一番ホットな話題の一つは、Enumerator/Iteratee です」ほほう
  • Monads in C++ |   Bartosz Milewski's Programming Cafe

    Monads in C++ Posted by Bartosz Milewski under C++, Functional Programming, Haskell, Monads, Programming, Type System [32] Comments Follow @BartoszMilewski “You must be kidding!” would be the expected reaction to “Monads in C++.” Hence my surprise when I was invited to Boostcon 11 to give a three-hour presentation on said topic, a presentation which was met with totally unexpected level of interes

    Monads in C++ |   Bartosz Milewski's Programming Cafe
  • 爱好中文网 - 最好看的免费小说阅读网

    【简繁】过尽千帆-中短篇H虐文合集 故事1是他的女儿也是他的子(nph):妈妈因她过世之后,她就担任起妈妈的所有职责,包括在床上取悦爸爸 /妈妈因她过世之后,她就担任起妈妈的所有职责,包括在床上取悦爸爸 ☆简繁同发 / 简繁同发1000字? 50po 缘更 /? 缘更--------------------------------? 七月晴连载0万字高辣 教师 《人教师》作者:弘扬|2011年末开始写的文章,后来忙了一段时间所以断了,现在有时间接着写还是那句话,调教老婆来就是男人的责任! 午夜人屠连载12万字高辣 [综武侠]移花宫主她超忙的 上一个二十年,是邀月燕南天等人的江湖。这个二十年,江湖群杰,移花宫主花满园一枝独秀。移花宫主花满园,她曾远赴大漠打败快活王与石观音,也曾在孤岛与燕南天生死决斗。有人说她是江南第一美人,百晓生却说她是天下第一美人。她男友众多,从塞北的西门吹雪,到南

  • QuickCheck++に入門した - Faith and Brave - C++で遊ぼう

    QuickCheck++は、Haskellで広く使われているテストフレームワークである QuickCheckをC++に移植したライブラリです。 ドキュメントと最新版は以下にあります。 QuickCheck++ Documentation 0.0.2 Version 0.0.2ではsigned/unsigned周りでバグがあるので generate.hhを以下からダウンロードして置き換えてください。 generate.hh さて、では使い方を見ていきましょう。 1.インクルード QuickCheck++はヘッダファイルのみのライブラリなのでインクルードするだけですぐ使えます。 #include <quickcheck/quickcheck.hh> 2.テストするプロパティの作成 以下は、reverseを2回した結果、元に戻るかのテストクラスです。 quickcheck::Propertyクラ

    QuickCheck++に入門した - Faith and Brave - C++で遊ぼう
    paella
    paella 2010/03/12
    テストデータをランダムに生成したりするなど、興味深い動き。何をしているのか中を見よう。0.1.1だけど(2010/03/12時点)、今後に期待のできるテストライブラリ。
  • Haskell基礎文法最速マスター - think and error

    見ていただけるのは嬉しいですがこのエントリは十分古いため、新しい情報へアクセスをしてください。以下のをお勧めします。 すごいHaskellたのしく学ぼう! 作者: MiranLipovaca出版社/メーカー: オーム社発売日: 2017/07/14メディア: Kindle版購入: 4人 クリック: 9回この商品を含むブログを見る 関数プログラミング実践入門 ──簡潔で、正しいコードを書くために (WEB+DB PRESS plus) 作者: 大川徳之出版社/メーカー: 技術評論社発売日: 2014/11/14メディア: 単行(ソフトカバー)この商品を含むブログ (8件) を見る みんなHaskellやろうぜ!! ということで書きました。 CやJavaRubyなど他言語を知っている人は、これを読むことでHaskellの大抵のことはマスターでき…ません。 特殊な構文が多すぎて他言語との類

    Haskell基礎文法最速マスター - think and error
    paella
    paella 2010/01/31
    よさそうな内容なのであとで読む。勉強中なのに書いているとはどうやって?という好例にも。
  • へ〜たのめも:Haskell 2009年 忘年会前哨戦 - livedoor Blog(ブログ)

    2009年12月23日 Haskell 2009年 忘年会前哨戦 Haskell 2009年 忘年会の前哨戦に参加しました。 kazu さんが「プレゼンテーションは公開するよーに」と言っていたので、後悔しておきます。 ごく最近に Presentation Zen を読んだ影響で、プレゼンテーション資料は禅問答になっています。判り易いように、口で喋った内容を補完しておきました。写真は、これも Presentation Zen の影響で iStockPhotoから買って(1,200円くらい)使ったのですが、ウェブで公開するには別のライセンスを買わないといけないとかで、サンプルイメージに差し換えています。やっぱり、Creative Commons なものから探すんだったかなぁ……。 heita です。今日は Haskell 2010 で新しく採用された Pattern Guards についてご紹

    paella
    paella 2010/01/10
    すみません、さっぱり分からないのでこれから勉強します。PatternGuardsについて。C/C++ に応用できるかな?
  • 参照透明な malloc は可能か (あるいは IO モナドについて) @ val it: α → α = fun

    This entry was posted by Jun Mukai on Friday, 6 November, 2009 alohakun が次のようなことを書いていたのが面白かったので、今日ちょっと帰宅途中につらつら考えたんだけど、twitterでつぶやくには長すぎるのでちょっと書いてみることにします。 malloc() って副作用あるの ? もちろん内部的にはあるだろうけど、外部的な振る舞いだけを見ると、有効なメモリリージョンの先頭アドレスが返ってくるだけだから、観測できないと思うんだけど。 (http://twitter.com/alohakun/status/5433639881) Haskell で乱数作るときってどうやって参照透明にしてるんだ ? 乱数を直接作る関数は無くて、シードを元に、乱数の無限リストを作るとかなのかな。ならば、確保可能アドレスの無限リストを作れば、副作

    paella
    paella 2009/11/06
    必ず読む。面白そうだけど、理解に時間がかかりそうなので後回し。
  • モナドで悟りをひらきたいのなら - 図でわかる(?)モナド - Pixel Pedals of Tomakomai

    圏論の最大の武器はダイアグラムなので、モナドで悟りをひらきたいのならダイアグラムを使えばいいんじゃないでしょうか。 ダイアグラムの書き方 例えば、「 f :: a -> b 」とか「length :: [a] -> Int」は以下のように書きます。型を点で、関数を矢印で書きます。 ダイアグラムの利点は、fやlengthの中身を忘れて簡略化することができることです。人間の脳ができることには限りがあるので、注目する情報が少ない方が理解しやすくなるってスンポーです。 なお、 合成 g . f は図示する時に順が逆になるので気をつけて下さい。これは、合成関数の適用が g ( f x ) と書けることに由来してます。まずfを適用し、次にgを適用するということです。 return と >>= の図示 今回のダイアグラムの約束として、元となる型(Bool, Char, Int 等)は最下段に書きます。そ

    モナドで悟りをひらきたいのなら - 図でわかる(?)モナド - Pixel Pedals of Tomakomai
    paella
    paella 2009/11/02
    図でも難しい雰囲気が・・・そんなに難しいものなのかしら?
  • Route 477 - gemcutterの使い方まとめ (2009年秋)

    ■ [haskell] モナドって結局なんなの 社内勉強会でモナドについて発表しました。分かった気がするたびにすぐに手からすりぬけてしまう、それがモナド…! 追記: モナドそのものが何なのかとか考えないほうがいいんじゃないですかね! [Twitter / いーぐるとまとより引用] まさにその通りだと思います(笑)。IOの使い方、Maybeの使い方、Stateの使い方などを押さえておけば、 中がどうなってるかなんて知らなくても大丈夫。 でも、モナドの持つ「なんか秘技がありそうな感じ」が、中を覗いてみたくさせるんですよね。 この、どこまで掘っても自分の知らないことが出てくる感じがHaskellの魅力なのかも。 Haskell の当にすごいところは、「なぜなに」を問いかけることでいつまでもプログラマが成長できるところにある。 [ふぁぼったー / ikegami__より引用] 一問一答 Q. モ

    Route 477 - gemcutterの使い方まとめ (2009年秋)
  • 遅延評価だけだと出力の順番が定まらない例 - あどけない話

    Haskell に関してよく見かける説明は、おおむね次のような感じだ。「遅延評価では、その値が必要になったときに初めて評価されるので、順番が大切な入出力とは相性が悪い。」 Haskellの入出力は、基的にIOモナドを使用しないと扱えない。IOモナドは、入出力の順番を制御してくれる。だから、遅延評価は入出力と相性が悪いと言われても、実際相性の悪い例題は示せないので、納得できない。 この問題を長い間考えていたが、昨日ひらめいた。Haskellでは純粋な関数にIOを忍び込ませることは、基的にはできないけれど、裏技がある。Debug.Traceで定義されている trace がその掟を破る。 trace は第一引数を出力し、第二引数を返す関数である。出力するにも関わらず、関数の型にはIOは現れない。 trace :: String -> a -> a trace string expr = un

    遅延評価だけだと出力の順番が定まらない例 - あどけない話
    paella
    paella 2009/10/09
    遅延評価では計算の順番が定まらない(必要なときに初めて評価されるため)ことを実際に目で確認する方法。
  • gmc4cc (C Compiler for GMC-4)

    gmc4ccは大人の科学 Vol.24 4ビットマイコン の付録の4ビットマイコンキットGMC-4(FXマイコン)のためのCコンパイラです. ハンドアセンブルを楽しむこのキットに対してCコンパイラを作るというのはとても邪道ですが, コンパイラを作ること自体が目的だったのでよしとします. Cコンパイラ自体はコンパイラコンパイラの類を使わずにHaskellのみで書かれています. 最適化をコツコツとするようにして,なんとかまともなコードが生成されるようになりました. とは言えいろいろ足りないので,気が向いたら改良していく予定です. C言語で書いた4bitゼビウス "Nibbled XEVIOUS"等のプログラムも公開しています. 最適化機能付きアセンブラも使えます. こちらのFX-マイコン シミュレータ用のファイルも出力できます. また,BASICのコンパイラであるG4CBASICを作成している

    paella
    paella 2009/07/06
    大人の科学 Vol.24 4ビットマイコン の付録の4ビットマイコンキットGMC-4のためのCコンパイラ。初めてのHaskellプログラミングでCコンパイラを作る、というのもすごい。
  • グローバル変数が欲しい理由?

    グローバル変数が欲しい理由? グローバル変数が欲しい理由っていうエントリを見まして,忙しかったのでズイブン遅くなっちゃったけど,ちょっと考えてみます. 実はコメントしているnobsunが話をした同僚ってのは私です. で,nobsunは完成したプログラムを公開してこうすればいいんじゃない的なブログを書いてますけど, これでは多分相手はナットクしないんじゃねーかなーと思うわけ. だってグローバル変数を避けて実装すりゃ,そらそうでしょうよって思うだけだもの. そうじゃなくてnobsunをはじめとしてHaskellerがグローバル変数を欲しくならないのか, それとも禁欲的に自分に制約をかけてるだけなのかを示さなきゃならんと思うわけですよ. 確かにグローバル変数が欲しいとか引数に持ち回らなきゃいけないのってイマイチとか, どっかで聞いたようなセリフだよなぁ.(^^;) いや,言いましたよワタシも.

    paella
    paella 2009/02/17
    タイトルでそんなこと言っているけれど、実はHaskellプログラムを書くときの思考の流れが書いてある。その点でとても有益な情報だと思いました。
  • blog.bjrn.se: Let’s build an MP3-decoder!

    Even though MP3 is probably the single most well known file format and codec on Earth, it’s not very well understood by most programmers – for many encoders/decoders is in the class of software “other people” write, like standard libraries or operating system kernels. This article will attempt to demystify the decoder, with short top-down primers on signal processing and information theory when ne

    paella
    paella 2009/01/26
    MP3の圧縮方式についての説明と、簡単(?)なデコーダのサンプルソース(ただしHaskell)。すばらしい!
  • はてなブログ | 無料ブログを作成しよう

    景色変わる6インチヒール ― の話 春頃に買ったすごくお気に入りのがあって、今日はその話をします。 商品としてはこれで、アイボリーとブラックを持っています。 https://store.cityhill.co.jp/item/945970.html アイボリーを買った後、かわいくて歩きやすくて気に入ったのでブラックを追加購入しま…

    はてなブログ | 無料ブログを作成しよう
    paella
    paella 2008/09/08
    Haskellと聞けば、まずブックマークしておいて、そして悶々と悩みながらソースを読む。
  • 1