タグ

Haskellに関するraimon49のブックマーク (29)

  • 2011年に Haskell を始める人のために - あどけない話

    適切な一歩を踏み出すか否かは、大きな違いを生みます。この記事では、2011年に Haskell を始める人のために、著者が考える最適な入門方法を示します。 Haskell Platform をインストールする 昔人気のあった Hugs は、もう保守されていません。現在は、GHC の時代です。GHC とライブラリをパッケージ化した Haskell Platform をインストールして下さい。 インタープリタが使いたい場合は、付いてくる ghci を使います。 コンパイラ -- ghc インタプリタ -- ghci スクリプト -- runghc GHC マニュアルの日語訳もあります。 プログラミングHaskell 次に、プログラミングHaskellを読んで関数プログラミングの「こころ」を理解しましょう。 プログラミングHaskell 作者: Graham Hutton,山和彦出版社/メー

    2011年に Haskell を始める人のために - あどけない話
  • 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 - あどけない話
    raimon49
    raimon49 2011/08/25
    >Haskell の入出力関数は、すべて non-blocking で書かれていますので、誤って block してしまうことも起こりにくくなっています。
  • 2010-10-25

    一年以上も何も書いていないわけですが、最近Haskellを勉強中なので、久しぶりに書いてみようと思います。 家ではMac、職場ではWindows、サーバはFreeBSDとUbuntuを愛用しているわけですが、何を間違えたか初期費用無料キャンペーンなんてやっていたお名前.comのVPSを契約しちゃったので、そこにとりあえずHaskellの開発環境を入れてみようと思います。 とりあえず、Haskellのデファクトな実装であるGHCとパッケージ管理システムCabal、それから開発に必要となる最低限のライブラリは入れておきたいので、お手軽なHaskell Platformを入れることにします。インストール先の環境は次の通りです。 Server: CentOS 5.5 (お名前.com レンタルサーバ VPS-01プラン) CentOSなので適当なyumリポジトリからインストールするのもアリですが(

    2010-10-25
    raimon49
    raimon49 2011/07/20
    haskell-platformをソースコードから。
  • Informasi Sains dan Teknologi

    Tempat judi slot online resmi menyediakan permainan bervariasi serta layanan 24 jam nonstop setiap hari. Member bisa mengakses kapan saja di tempat yang ada koneksi internet. Link alternatif berlaku pada computer, android dan tablet mempermudah tahap registrasi. Memegang ID dapat masuk ke website lalu melakukan berbagai transaksi. Deposit melalui banyak sistem pembayaran sudah bebas potongan. … Si

    Informasi Sains dan Teknologi
  • Gitをバックエンドに使ったプログラマ向きWiki - Gitit - Masatomo Nakano Blog

    Wikiというものはとても便利なんだけど、 大量の文章を書くにはWebブラウザのインターフェースはまだまだ辛い オフラインで使えない(文章書くのは電車が一番) 複数の文章を再構成したり、一括で検索したり、置換したりは、Webだとやっぱりきびしい と言った欠点がある。 とは言え、誰でも気軽に編集できるWikiの魅力も捨てがたい。 そこで、「Wikiではあるんだけど、ローカルでも自分の好きなエディタで簡単に編集できるツールないかなー」と探してみたら、 Gitit というWikiを発見した。 ここ数日、結構な量のドキュメントをGititで書いてみて、わりと満足しているのだけど、検索してもGititの日語の情報があまり出てこないので紹介してみる。 Gititの特徴 コンテンツをGitのレポジトリに保存する。 そのGItレポジトリをcloneして好きなようにいじってからcommit/pushすれば

  • 不完全にしてかなり言葉足らずな比較プログラミング言語学 - 西尾泰和のはてなダイアリー

    プログラミング言語は人が作ったもの。人は誤るもの。なので完璧なプログラミング言語は存在しない。 「人は誤るもの、しかし誤りに固執するのは馬鹿の所業だ。」(キケロ) プログラミング言語も、間違った設計をして、馬鹿でない人がそれを修正することの繰り返しで発展してきた。 というわけで言語間での設計判断のい違いとか失敗した設計とかを収集中。一部抜粋して講義資料に入れるつもりなので他の事例をご存知でしたらぜひ情報をいただけるとありがたいです。 if(x = 0) C言語では代入が式であるためif(x == 0)のつもりでif(x = 0)と書いてしまい、常に偽になってしまう。 x = 0の値はint、条件式はboolでないといけないので型エラーだよ派: Java x = 0は式ではないので条件式に入れたら構文エラーだよ派: Python 条件式にx = 0をいれたらx == 0と解釈するよ派: H

    不完全にしてかなり言葉足らずな比較プログラミング言語学 - 西尾泰和のはてなダイアリー
    raimon49
    raimon49 2010/07/25
    Javaって厳格。
  • Python における関数型プログラミング のための functools, itertools (1) – Haskell と同じ名前の関数たち

    1. 関数型プログラミングのための functools, itertools モジュール Python 2.7 Python の標準ライブラリには、関数型プログラミングにとって重要なモジュールがある。 9.7. itertools — Functions creating iterators for efficient looping 9.8. functools — Higher-order functions and operations on callable objects itertools, functools は、 The Python Standard Library — Python v2.7.3 documentation 9. Numeric and Mathematical Modules の階層の中にある。 9. Numeric and Mathematical

    Python における関数型プログラミング のための functools, itertools (1) – Haskell と同じ名前の関数たち
    raimon49
    raimon49 2010/06/07
    itertoolsの考え方。
  • λ Calculus - まずは遅延評価から : 404 Blog Not Found

    2008年02月04日07:00 カテゴリLightweight Languages λ Calculus - まずは遅延評価から うーん、まずY Combinatorというのはおじさんたちが悪かったかな。ギター習いたてでいきなりFの音を出すようなもんだから。 Haskell のリストと遅延評価が少し分かった - IT戦記 Y コンビネータって何? - IT戦記 まずは、遅延評価についてきちんとおさらいしておこう。 慌てるな、ループは急に止まらない まずは、以下の式を考えてみる。 (function(a, b, c){ return a ? b : c; })(true, 1, 1+1); 実行してみると、1となるはずだ。しかしここで重要なのはこのことじゃない。後ろの1+1が実行されるかだ。このことはどうやって確認したらよいだろうか。以下のようにしてみればいいはずだ。 var ELSE =

    λ Calculus - まずは遅延評価から : 404 Blog Not Found
  • 本物のプログラマはHaskellを使う:ITpro

    筆者 shelarcy Haskellは,関数型プログラミングというジャンルに属する言語です。Haskellや関数型プログラミングを題材に物事を見ていくことで,今まで思いもよらなかったような未知の世界を知ることができるでしょう。 プログラミング言語を学ぶという行為には, 言語の基的な文法や考え方を理解する 言語の文化圏で広く使われている考え方に親しんでその言語らしい書き方を習得する 単に言語を使ってできること以上の知恵を学ぶ の3段階があります。この連載では,三つ目の段階を目標に,Haskellプログラミングの世界を一つひとつ丁寧に紹介していきます。 更新は毎月第1水曜日(1月のみ第2水曜日)

    本物のプログラマはHaskellを使う:ITpro