タグ

関数型に関するSuicomのブックマーク (16)

  • Rubyを使って「なぜ関数プログラミングは重要か」を解読しよう! - hp12c

    ブログを下記に移転しました。デザイン変更により移転先では記事が一層読みやすくなっていますので、よろしければ移動をお願い致します。 Rubyを使って「なぜ関数プログラミングは重要か」を解読しよう! : melborne.github.com - 「Why Functional Programming Matters:なぜ関数プログラミングは重要か」(原著者:John Huges 邦訳:山下伸夫)という論文があります なぜ関数プログラミングは重要か これはMirandaという関数型言語を使って プログラマにとって 関数プログラミングがいかに重要であるかを論証したものです これが書かれてからの年数*1と被ブクマ数を見れば 極めて有益でmust_readであることは明らかでしょうが 自分にとっては高度な内容で読み解くのにかなり苦労しています リストを使った関数の貼り合せ(3.の前半)までについて

    Rubyを使って「なぜ関数プログラミングは重要か」を解読しよう! - hp12c
  • pokarim さんによる Arrow 講座的な何か

    いげ太 @igeta 関数型コードもドットで繋いでくメソッド チェーンぽく書けるようにパイプライン演算子用意しとこか、とか。 2010-07-02 12:40:14

    pokarim さんによる Arrow 講座的な何か
  • 非同期と継続と私 - 技術日記@kiwanami

    非同期のプログラミングの解説の中にはよく「継続(渡し)」が良く出てきます。継続といえば Scheme の call/cc ですが、やっぱり JSDeferred のサンプルのページにも出てきます。直感的にはあんまり関係ないような気がしますが、関係があるようです。 さらに、非同期と遅延評価の関係も気になります。非同期は「結果が後で来る」感じですが、遅延評価は「必要になるまで結果を計算しない」ということで、後回しにする感じが似ています。 今回、deferred.el を作った後にこれらについて考えてみたところ、なんとなく自分の中で実用的な結論に達したのでまとめてみました。以下、その過程とまとめです。 あらすじ 継続渡し(CPS)と非同期 CPS変換から非同期化 Deferredで非同期化 遅延評価と非同期 遅延関数のCPS変換から非同期化 Deferredで非同期化 明示的形式と暗黙的形式 継

    非同期と継続と私 - 技術日記@kiwanami
  • What is object oriented programming really all about?

  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • フラクタルのプログラミング

  • 「モナドは象だ」の翻訳まとめ - Fight the Future

    とてもエントリが多くの回にわたったので、まとめます。 One Div Zero: Monads are Elephants Part 1 モナドについて調べていく(7) - Fight the Future じゅくのblog モナドについて調べていく(8) - Fight the Future じゅくのblog モナドについて調べていく(9) - Fight the Future じゅくのblog モナドについて調べていく(10) - Fight the Future じゅくのblog モナドについて調べていく(11) - Fight the Future じゅくのblog モナドについて調べていく(12) - Fight the Future じゅくのblog One Div Zero: Monads are Elephants Part 2 モナドについて調べていく(14) - Fig

    「モナドは象だ」の翻訳まとめ - Fight the Future
  • 第14回 関数脳のつくり方 Second Season ~モナドで悟りをひらく~

    大手SIベンダにてSEやPMやアーキテクトとして勤務したのち,株式会社豆蔵を経て,現在は合同会社シンプルアーキテクト代表社員であり,株式会社匠Business Placeのチーフコンサルタント。主に超上流のプロセスである要求開発やオブジェクト指向,アジャイル開発のコンサルタントとして活躍中。開発の現場にこだわり,開発の現場を少しでもよくしたいと日夜奮闘している。要求開発アライアンス執行委員。著書に『オブジェクト脳のつくり方』や『eXtreme Programming実践レポート』(ともに翔泳社発行。後者は共著)などがある。 Javaなど,オブジェクト指向や手続き型のプログラミングの経験はあるけれど,関数型のプログラミングは初めてという皆様のための,そして筆者自身のための「関数脳のつくり方」シリーズのSecond Season(First Seasonはこちら)。今回は「モナド」を取り上げま

    第14回 関数脳のつくり方 Second Season ~モナドで悟りをひらく~
  • OCamlチュートリアル

    このウェブサイトはOCamlを学ぼうとする人たちの為の実際的で詳細なチュートリアルを集めたものである。 よく知られている通り、OCamlはアプリケーション開発のための高速、簡潔かつ強力な言語である。ここでは読者がすでにOCamlの処理系をインストールしているものと仮定する。インストールの方法については英文であるがOCamlのメインページやOCaml Alianceによる解説に説明されている。またDebianその他のLinuxディストリビューション、FreeBSDパッケージにもなっている。 原文(英語) 邦訳版に関するツッコミなど

  • 数理科学的バグ撲滅方法論のすすめ---目次 | 日経 xTECH(クロステック)

    筆者 住井 英二郎 「プログラミング言語理論」という研究分野がある。この分野の研究者たちは,「ML」「Haskell」「Scheme」あるいは「λ計算」「π計算」(円周率計算のことではない)など,多くのプログラマにとっては聞いたこともない言語やモデルについて,日夜研究している。ただ,そのような言語は「難しい」「役に立たない」などと思われがちだ。 この連載では,こうしたプログラミング言語やソフトウエア科学の様々な研究を,できるだけ普通のプログラマやエンジニアにもわかりやすく(どちらかといえば理論よりも実用に重点をおいて)紹介していく。 更新は毎月第2水曜日(1月のみ第3水曜日)

    数理科学的バグ撲滅方法論のすすめ---目次 | 日経 xTECH(クロステック)
  • いげ太のブログ: F# を始めよう

    F# なる言語があることを知る。ちょいと探りを入れてみれば、開発中の報が 2003/05/29 の /.J にあがっている。いまさらなネタであることが露見したが、まぁそれもよし。それにしても情報が少ないが、流行ってないのかね。 F# - Microsoft Resaerch ライセンス 見ての通り、F# は MS によって開発されており、バイナリも無償で提供されている。ただし、製品ではなく、リサーチ プロジェクトという位置付けの、まだ試験段階の言語である。ライセンスについては、Microsoft Research Shared Source License Agreement (MSR-SSLA) なるものをベースにしており、リンク先のトップページにはこうある。 The F# License is a Microsoft Research Shared Source License Agr

  • Microsoft、関数型言語F#をVisual Studioに統合へ――開発者からはおおむね好意的な反応 | OSDN Magazine

    米国Microsoftは、Microsoft Research Groupが開発した関数型言語「F#」を、同社のアプリケーション開発プラットフォーム「Visual Studio」に統合する計画だ。これは10月22日に同社ディベロッパー部門のコーポレート・バイスプレジデント、S.ソマセガー氏が自身のブログで明らかにしたもの。 ソマセガー氏は、F#をVisual Studioに統合する一方、引き続きF#を発展させていくとしているが、Microsoft自体は正式なリリース・スケジュールを明らかにしていない。 ソマセガー氏によると、F#は関数型プログラミングの考え方に基づいているという。関数型言語は、演算作業を数学関数の計算として取り扱う。数学に近い関数型プログラミングは、金融や科学、技術分野の演算など、数学的表記による記述が多用される分野の専門家から注目を集めている。 Microsoft Res

    Microsoft、関数型言語F#をVisual Studioに統合へ――開発者からはおおむね好意的な反応 | OSDN Magazine
  • プログラム・プロムナード

    会誌「情報処理」連載の「プログラム・プロムナード」(2002年4月〜2005年3月掲載)と「Haskellプログラミング」(2005年4月〜2006年3月掲載)はどなたでもご覧になれます。ファイルはすべてPDF形式です。 「Haskellプログラミング」に掲載されたプログラムは http://www.sampou.org/haskell/ipsj/ から取ることができます.

  • 遅延評価によるストリーム、Perl で。 : torus solutions!

    SICP の 3.5 節「ストリーム」に出てきたストリームを Perl で実装してみた。 意外と簡単に書けた。 SICP のお買い上げは、アマゾンの 『計算機プログラムの構造と解釈』 のページからどうぞ〜。 概要 ストリームを使うと、 プログラムに状態変化を持ち込むことなく、 物事の変化を扱うことができるらしい。 必要な時に必要なだけの計算をするのに、 実際に計算をする部分と、 その計算された値を使う部分を完全に分離した形でコーディングできるので、 非常に強力なテクニックとなり得る。 ストリームは遅延リストとして実装するので、 まず遅延評価を実現するための手続き delay と force をそれらしく作り、 その上にストリームを構成するいくつかの関数を書いてみた。 実装 以下に、 テキストに出てきた Scheme でのコードと、 それに対応する Perl のコードを順番に載せます。 スト

  • 代数と余代数 最初の一歩

    Wed May 11 2005:start Sat May 14 2005:draft Mon May 16 2005:prefinal 形式的体系の初歩的知識を仮定して代数と余代数の紹介を試みる。特別な条 件を満たすソート付き形式的体系の指標(signature)を代数指標/余代数指 標と定義して、それのモデルとして代数/余代数を導入する。余代数とオブジェ クト指向との関係にも言及する。

  • なぜ関数プログラミングは重要か

    John Hughes, Institutionen för Datavetenskap, Chalmers Tekniska Högskola, 41296 Göteborg, SWEDEN. rjmh@cs.chalmers.se この日語訳は原著者の承諾を得て山下がここに公開するものです。 この訳文についての、御指摘などは山下伸夫(nobsun .at. sampou.org)までおねがい いたします。 翻訳最終更新日 : 2011-09-17 原文 "Why Functional Programming Matters" 日語訳PostScript この論文は1984年以来何年ものあいだChalmers大学のメモとして回覧された。 1989年と1990年に幾分か改訂をしたのが[Hug89]と [Hug90]である。この版はもとのChalmer大学のメモ のnroff原稿をもとに

  • 1