$ ruby -I /the/path/you/wanna/add test.rb それか PATH に直接追加してしまうか。 $ export RUBYLIB=/the/path/you/wanna/add $ ruby test.rb もしくは、ruby スクリプト中で $LOAD_PATH.push('/path/to/dir') で追加できる。
函数プログラミングの集い 2011 in Tokyo に来てます。途中退出しますが、居る間内容を適当にメモります。会場はIIJさんです。毎度のことながらすばらしい会場。 この会は、神田でICFPという大きな国際的な学会が日本で行われるのにちなんでいるそうです。普段は「この言語は糞だ」みたいなことを言っている方も今日は休戦でお願いしますとのこと。 ハッシュタグは#fpm2011 です。ustream はこちら。 関数プログラミングの道しるべ / @kazu_yamamoto さん 今日は時間が短いので、今日の内容を理解してもらえるとは微塵も思ってない 入り口で引き返さずに、山へ登ってみて欲しいという思い Twitter での市場調査 → 関数 = 数学 = 怖い。関数 = アカデミック = 役に立たない Functional の訳を「実用的」とすべき。Functional Programin
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
「モナドは自己関手圏のモノイド対象にすぎない」とワドラーはいったがその事を説明したいと思います。 次のものを説明します。 対象 射 結合則 恒等射 圏 関手 自然変換 圏の基礎 圏は以下のものから構成されます 射 対象 射はソースとターゲットを結ぶ矢印とされます XがソースYがターゲットの社は次の通りに記述されます。 射の結合 の二つの射が存在した場合結合する事ができます さらに以下の公理を満たす必要があります。 恒等射 結合則 恒等射 任意の対象Xに対して射 が存在し恒等射という、さらに任意の射に対して が成り立つ。 結合則 が成り立ちこれを結合則という。 関手 圏Cと圏Gが存在したとして、 CからGに対して 対象 射 を対応させるものである。この時関手は以下の性質を保っていなけばならない。 恒等射 射の合成 自然変換 圏Cと圏Dの間に、F、Gという関手が存在し、 FからGへ移す射 が存
圏論の最大の武器はダイアグラムなので、モナドで悟りをひらきたいのならダイアグラムを使えばいいんじゃないでしょうか。 ダイアグラムの書き方 例えば、「 f :: a -> b 」とか「length :: [a] -> Int」は以下のように書きます。型を点で、関数を矢印で書きます。 ダイアグラムの利点は、fやlengthの中身を忘れて簡略化することができることです。人間の脳ができることには限りがあるので、注目する情報が少ない方が理解しやすくなるってスンポーです。 なお、 合成 g . f は図示する時に順が逆になるので気をつけて下さい。これは、合成関数の適用が g ( f x ) と書けることに由来してます。まずfを適用し、次にgを適用するということです。 return と >>= の図示 今回のダイアグラムの約束として、元となる型(Bool, Char, Int 等)は最下段に書きます。そ
Professor of Computer Science at the University of Nottingham Co-leader of the Functional Programming Lab My research interests are in the mathematics of program construction. The aim of my research is to develop simple but powerful techniques for writing and reasoning about computer programs, by recognising and exploiting their underlying mathematical structure. Most of my work takes place in the
GitHubにはGitHub Pagesというホスティングサービスがある。先日公開した『Unity入門』のページも、このGitHub Pagesを使ってホスティングしている。 GitHub Pagesが面白いのは、ウェブページのコンテンツとGitリポジトリが一体化しているというところだ。GitHub上に一定のルールに従ってリポジトリを作成すると、そのリポジトリの内容がウェブページとして配信される。コンテンツを更新するには、そのリポジトリに更新内容をpushするだけでいい。 GitHub Pagesは、単にリポジトリの内容を配信するだけではない。Jekyllという静的サイトジェネレーターを搭載しており、コンテンツに対してスタイルを簡単に適用できるようになっている。例えば『Unity入門』のページはこのようなソースファイル群によって構成されている。これを更新してpushすると、内部でJekyl
MVCモデルについて - GeekなNooblog プログラマーが意識するべきUI設計指針 3つのMVCモデル - GeekなNooblog MVCモデルの問題点を解決するPMモデルとMVPモデル - GeekなNooblog MVCにおけるViewの表示方法 トランザクションスクリプト、ドメインモデル - GeekなNooblog 前回の続きです。 MVCモデルにはある問題が潜んでいると述べました。 問題点を述べる前に、MVCで作成されたコード例をを見てみましょう。 商品名、価格、在庫数が表示されており、購入を押すごとに在庫が減っていくという簡単なプログラムです。 今回はViewの振る舞いが重要になってくる話なので少しコードは長くなりますが、GUIで説明していきます。 MVCモデル(依存性を利用するMVC) コード行数を節約するためにObserverは自分で作成するのではなくJavaで用
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く