[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 10/27 09:49 / Filesize : 201 KB / Number-of Response : 803
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

関数型プログラミング言語Haskell Part8



1 名前:デフォルトの名無しさん mailto:sage [2007/10/30(火) 20:28:13 ]
haskell.org
www.haskell.org/

日本語サイト
www.sampou.org/cgi-bin/haskell.cgi
www.shido.info/hs/

過去ログ
関数型プログラミング言語Haskell
Part1 pc.2ch.net/tech/kako/996/996131288.html
Part2 pc2.2ch.net/test/read.cgi/tech/1013846140/
Part3 pc8.2ch.net/test/read.cgi/tech/1076418993/
Part4 pc8.2ch.net/test/read.cgi/tech/1140717775/
Part5 pc8.2ch.net/test/read.cgi/tech/1149263630/
Part6 pc11.2ch.net/test/read.cgi/tech/1162902266/
Part7 pc11.2ch.net/test/read.cgi/tech/1174211797/

・2chの仕様により、行頭の半角スペースは表示されません。
 コードをインデントしたいときは、代わりに または全角スペースを使うことができます。

610 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:58:13 ]
ghcに-prof -auto-allを付けると最適化が弱まるのはいやがらせか?
フルに最適化の掛かったコードのプロファイルを取るにはどうすればいいんだ

611 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 19:14:50 ]
>>610
最適化ありとなしなら違うだろうけどそれぐらいなら大差つきそうな感じもしないし
だいたいでいいんじゃない?

612 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 19:55:01 ]
>>611
いや、一番内側のループにGHC.IOBase.>>の呼び出しやらunboxing/reboxingやらが残るんだ
もともと最適化で余計なものが全部消えることに期待しているソースなので、影響が大きい
実際、プロファイル版だと通常版の7倍くらい時間が掛かる
もちろんプロファイルのオーバーヘッドもあるだろうけど、別のソースだと3倍くらいで済むので、
最適化がうまく効かないことの要因が大きいと思う

613 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 13:44:15 ]
wxHaskell 0.10.3 rc1が出てた。

614 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 16:47:24 ]
wxHaskellをスタティックリンクする方法ありませんか?

615 名前:デフォルトの名無しさん [2008/03/18(火) 09:56:50 ]
Gtk2Hsと比べてどうなの?

616 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 21:37:58 ]
ghc test.hs -o test
とやった時に生成される
test.hi
test.o
test.manifest
この3つのファイルを生成させなくする方法ってないですか?

617 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 21:52:22 ]
>>616
manifestファイルの生成は-fno-gen-manifestで抑止できる
ただし多少の副作用がある。詳しくはマニュアル参照
oとhiの生成を止めるのは多分無理。これなしじゃ分割コンパイルできないし
ファイルが残るのが嫌なら、ghcを実行した後にoとhiを削除するスクリプトでも組めばいい

618 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 22:10:49 ]
>>617
ありがとうございます
スクリプト書いて我慢することにします。



619 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 20:13:49 ]
Introduction to Functional Programming Using Haskell
¥ 11,554 (税込)

ペーパーバックでこれって…。何でこんな高いの?

620 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 21:11:09 ]
Bird大先生の書いた素晴らしい本なのでその価値はあります。
文章はもちろんコードが素晴らしいです。

621 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 21:19:32 ]
>>619
需要と供給の関係じゃない?

622 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 21:33:24 ]
>>621
Craftとかと比べるとあんまり売れ筋じゃないってこと?

623 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 21:47:52 ]
>>619-620
「関数プログラミング(using Miranda)」はもっと安いYO!i

624 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 22:32:20 ]
正直コードのぱっと見はSASL系のMirandaの方が好きだった。比Haskell

625 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 22:54:32 ]
>>619
円高なんだから.comの書店から輸入すれば安いYO!

626 名前:デフォルトの名無しさん [2008/03/20(木) 13:46:58 ]
>>624
どの辺が違うの?

627 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 13:48:34 ]
>>624
Mirandaスレ逝けYO!

628 名前:619 mailto:sage [2008/03/20(木) 13:57:36 ]
っていうか、もう買っちゃったんだけどw

ついさっき届いたんだが・・・チョっw、Craftとかよりも紙が安っぽいwww

これ、11,554円か・・・。頑張って自分のモノにしないとなw



629 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 14:32:26 ]
1966年にP.J.LandinがISWIMという言語を作ったのがその起源で、SASL, Mirandaという後継言語を経て、HaskellとCleanが生まれました。
これらは、全て「遅延評価」を評価戦略におくプログラミング言語であり、「純粋関数型言語」と呼ばれるグループです。

SASL系のMiranda???イミフ。

630 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 19:31:56 ]
1954年にJ.BackusがFORTRANという言語を作ったのがその起源で, Algol, Cという後継言語を経て、C++とJavaが生まれました。
これらは、全て「副作用による状態の更新」を実行の基礎とするプログラミング言語であり、「手続き型言語」と呼ばれるグループです。

Algol系のC???イミフ。

631 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 19:39:51 ]
wxHaskell 0.10.3 が出たみたい。
sourceforge.net/project/showfiles.php?group_id=73133

632 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 23:22:00 ]
遅延評価よりもしっくりくる言葉はないものだろうか
直訳で不精評価とか?

633 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 23:37:01 ]
>>632


634 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 23:45:23 ]
SASL系のMirandaって何?Haskellは何系なの?クワシク。

635 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 00:00:20 ]
HaskellはMiranda系です

636 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 00:20:12 ]
>>630 なにが意味不なのかわかんね

637 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 00:53:22 ]
英語が難しくてよく理解できないのでつがw

638 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 10:58:06 ]
>>629 なにが意味不なのかわかんね



639 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 11:43:24 ]
Point-free styleで
\a b -> a*b + a/b
を書くにはどうすればいいですか?
一般に,同一の引数を複数回使うような関数はどう定義すればいいですか?
さらに例えば2引数a, bを取って,それらを複数回使い,
その場所が構文木の深さで並べたとき交互に入り混じるような関数はどう定義すればいいですか?
\a b -> a + exp(b + exp a)
みたいな.
* idとかを使って形式的に同じ深さにする(例えば snd(id b, id a) + exp(id b + exp a) とする)
* 2変数関数に同じ引数を与えるようなapplyをあらかじめ定義しておく
(そう言えばSコンビネータは S f g x => f x (g x) でxが2回出てくるなぁ...)
が鍵かなーと思ってますが,一般にはどうすればいいのか.

640 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 13:18:34 ]
Control.MonadとControl.Monad.Instancesをインポートするとこの二つが使える
ap :: (a -> b -> c) -> (a -> b) -> a -> c
liftM2 (.) :: (a -> b -> c) -> (a -> d -> b) -> a -> d -> c
どっちも便利

641 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 13:51:22 ]
s = \ x y z -> x z (y z)
k = \ x y -> x
i = \ x -> x
-- f = \ a b -> a * b + a / b
f = ((s ((s (k s)) ((s ((s (k s)) ((s (k k)) (k (+))))) ((s ((s (k s)) ((s ((s (k s)) ((s (k k)) (k (*))))) ((s (k k)) i)))) (k i))))) ((s ((s (k s)) ((s ((s (k s)) ((s (k k)) (k (/))))) ((s (k k)) i)))) (k i)))

642 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 14:37:06 ]
返り値がユニットって他の言語で言うvoidの事ですか?

643 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 14:43:08 ]
他の言語ってどの言語だよw

644 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 14:46:42 ]
例えばcやJavaです

645 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 14:59:03 ]
>>634
> SASL系のMirandaって何?

Turner大先生の作った言語がSASL→KRC→Miranda
en.wikipedia.org/wiki/Miranda_%28programming_language%29

Mirandaは売り物じゃなければもっと普及したと思う。

646 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 19:45:21 ]
>>642
全く違います。
Unitは値ですがvoidは値ではありません。

647 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 21:22:47 ]
全く違いますか・・・
勉強しなおしますい

648 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 21:26:41 ]
void 式は存在するし、C++ だと return 文にも渡せるが、
void 式を入れる変数が存在しない点が Unit とは大きく違う点か。



649 名前:デフォルトの名無しさん [2008/03/23(日) 21:46:56 ]
TAPLにはunitとCやJavaのvoidの使われ方は近いと書いてあるね。

650 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 21:57:00 ]
使われ方は近いっていうのと概念が近いってのを混同せぬよう。

651 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 22:36:57 ]
voidは引数として渡せないしな。

652 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 22:51:43 ]
データ構造にも入れられない

653 名前:639 mailto:sage [2008/03/24(月) 00:09:11 ]
>>640
Control.Monad.Instances って関係あるんですか?
つーか Control.Monad の ap や liftMn は (Monad m) => ... m a -> ... な感じでモナド専用なのでは?

>>641
トランスレータ乙w
Wikipediaに載ってる変換アルゴリズムには
> In general, the T[ ] construction may expand a lambda term of length n to a combinatorial term of length Θ(3n).
とありますが.
まぁSKIがあれば不可能な訳ではない,と...

R. Bird先生とかの論文で習うしかないのかなー

654 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 00:11:01 ]
日本語でおk

655 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 00:19:18 ]
instance Monad ((->) r) -- Defined in Control.Monad.Instances

656 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 01:13:02 ]
lambdabotのplというプラグインが自動でポイントフリー変換をしてくれる
\a b -> a*b + a/b
を入れたら
ap (ap . ((+) .) . (*)) (/)
が返ってきた

\a b -> a + f (b + g a)
だと、
ap ((.) . (+)) ((f .) . (+) . g)

657 名前:初心者修業中 mailto:sage [2008/03/24(月) 04:17:08 ]
あの、結局、ポイントフリーは

「クイズとしては面白いけど無理に使う必要はない」

という事ですよね?

658 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 07:52:47 ]
当然だ
使うに値すると思ったときだけ使えばいい



659 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 04:01:38 ]
Birdの一派は「ポイントフリーの方がプログラムの本質が一層明らかになる」とか主張するんだよね

660 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 04:21:26 ]
彼らの変形萌えぶりをみれば、
それほど無茶を言ってないと思えるよ。
プログラム変換(人力)で成果挙げてるからね。

661 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 00:32:30 ]
Haskell のテストコード書いたり、簡単な実行したりコードさらしたりするにはここへカモン。
codepad.org/
コードを書いて実行した時のURLを記録しておけば、
実行結果も一緒にさらす事が出来て幸せです。



662 名前:デフォルトの名無しさん mailto:sage [2008/03/26(水) 04:41:11 ]
なんであんたあちこちで宣伝してんの?

663 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 12:06:11 ]
GHCのドキュメントをMakeするときに必要な
stringparamっていうプログラムって何でしょうか?これが無いせいでhtmlドキュメントが生成できません
xmlproc関係のものだと言う気はするんですが、検索しても見付かりません
入手方法など情報お願いします

664 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 12:20:15 ]
stringparamはプログラムじゃなくてxsltprocのコマンドラインオプションじゃないか?

665 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 21:14:03 ]
なるほど、どもです
どうやら原因はMakeの中で上手くxsltproc関連の変数が設定されてないのが原因でした

666 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 01:33:37 ]
以下のコードでtimeout関数の動作確認をしたのですが、
うまく動作しません。何がいけないのでしょうか?

import System.Timeout

main = do a <- timeout (3*10^6) getLine
print a



667 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 02:07:19 ]
>>666
俺の環境(Linux x86 ghc-6.8.2 base-3.0.1.0)だと動いたよ
windowsだとHandleからの入力でブロックするときにselectを使ってないから、そのせいかも

668 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 19:56:39 ]
モナドとかって解りやすく
書いた論文とかありますか?

PARSEC使いたいのですが
どうにも曖昧で




669 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 20:15:35 ]
>>668
I Love Ruby本

670 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 20:50:09 ]
>>668
つ "The marriage of effects and monads"
つ "Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell"

ググればPDF手に入る

671 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 20:56:19 ]
parsec使うのにモナドの知識は必要ないけどな

>>670
Tackling...はIOモナドについての論文じゃないか?

672 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:02:17 ]
だったら何?

673 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:06:05 ]
モナドについて知りたがってる奴にIOモナドの事を教えてもしょうがないだろ
群について知りたがってる奴に整数を教えるようなものだ

674 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:08:14 ]
>>673
あとkindとかって数学の眠い本永遠と
読まないと理解できないかな?

圏とかまじで数学本気でやってねーから解らん

675 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:18:11 ]
kindは全然難しいものじゃない
「Maybe Int」型の式は存在するけど単なる「Maybe」型の式は存在しないとか、
「Maybe Maybe」っていう型は不正だとか、そういう次元の話

676 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:21:18 ]
パージングするとIOモナとの連携は付き物だから、
>>668は知りたくなるんじゃないかな?
知らなくてもPARSEC使えるけどね。

677 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:28:50 ]
知らなくても使えるんだけど
背景とか基礎的な内容知りたく
ならない?

ならない、そうですかそうですか.....

678 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 21:41:01 ]
Trends in functional
Programmingって毎年出てるの?



679 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 01:49:14 ]
>>668
"Monadic parser combinators"ってテクニカルレポートが
仕組みやモナドの解説が分かりやすく書いてあってよかった。

680 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 09:06:14 ]
自分は手続き型のメジャー言語を普段使っている人間ですが、最近関数型が話題になって
勉強しているところです。

この板の書き込みもそうですし、実際に出版されている本の数や内容など見ると、まだ
Haskellのような言語は研究者レベルの言語なんでしょうか。

個人的には今後アプリがマルチプロセスに対応せざるを得ないとか、複雑性が上がる
中で処理の信頼度を一層高める必要がある中で、Haskellのような言語がある時期から
一気にパラダイムシフトを引き起こすのじゃないか、とか妄想していますが、単なる
妄想ですかねw

681 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 09:25:48 ]
Haskellは、ある時期と言わず今、実用プログラムを(分野にも依るけど)書く上で有力な言語だと思うよ
その意味で、Haskellは既に研究レベルの言語ではない
一方で、今のHaskell利用者に占める研究者や学生の割合はそれなりに高いだろうし、
Haskellが研究の道具として使われてるのも事実だから、その意味で研究者の言語だ

682 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 09:59:31 ]
>>680
遅延評価のHaskellから、
> ある時期から一気にパラダイムシフトを引き起こすのじゃないか
ってのはちょっと難しいだろうね。

> 研究者レベルの言語

こういう考え方はよくわからない。
自分の腕を上げるために必要なことは学べばいいだけなんで。

683 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:01:57 ]
immutableにするとスレッドセーフになるのは分かる
代入ができなくても別に困らない、というのも分かる

分からないのは遅延評価
原則的にはeagerにして必要なときだけ明示的に遅延するのでは駄目な例ってないすか

684 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:10:05 ]
>>682
> 遅延評価のHaskellから、
> > ある時期から一気にパラダイムシフトを引き起こすのじゃないか
> ってのはちょっと難しいだろうね。

これはどういう意味でしょうか?

685 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:12:07 ]
>>683
駄目ってことはないんじゃないか?
Haskellは、原則的には遅延で必要なときだけ明示的にeagerという立場だから、
Haskellコードを、デフォルトがeagerな言語に翻訳するのは機械的な書き換えで済む
どっちをデフォルトにするのが便利かは議論の分かれるところじゃないだろうか

686 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:16:32 ]
>>683
「つまらない」そこが駄目

687 名前:680 mailto:sage [2008/04/06(日) 10:24:01 ]
>>683
SICPなんかだと、参照透過性と遅延評価をStreamの項で関連付けて
いたりしますが、その辺へのこだわりではないんでしょうか?

688 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 10:33:23 ]
1988年?ぐらいの関数言語を実装するための
本があるはずだけど
あれみれば遅延評価背景わかるはず

本の名前が解らん




689 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 11:17:06 ]
>>688
research.microsoft.com/~simonpj/papers/slpj-book-1987/index.htm
これ?
lazy evaluationの正当化は194ページにちょっとあるだけかな

690 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 11:23:03 ]
>>689
おーそれそれ
あとどれだったかなぁ


691 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 19:27:55 ]
日本だとどっちを先に読めって言われてるの?
・Introduction to Functional Programming Using Haskell
 www.amazon.co.jp/exec/obidos/ASIN/0134843460/
・Haskell: The Craft of Functional Programming
 www.amazon.co.jp/exec/obidos/ASIN/0201342758/



692 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:25:11 ]
>>691
自分はCraftを先に読みました。Craftは所謂Haskell言語の入門書だと思います。

Introduction〜はHaskellの入門というよりも、関数型言語の原理原則を中心に
展開する書物ですね。自分は今読んでる途中です。

どちらもよい本だと思います。

693 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:25:18 ]
>>691
欧米だとどっちを先に読めって言われてるの?

694 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:28:17 ]
片方が初級で片方が中級、とかではないですね。

695 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:46:40 ]
>>693
俺の恩師のイギリス人のじいちゃん先生
だと、今の若い人間には退屈すると
長続きがしないだろう。好奇心だけでは
どうしても無理だろう。といって、Craftを
読んで言語を理解しなさいと言われたなぁ



696 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 00:14:53 ]
このすれの住人って
俺以外に、5人しかいないだろ?

697 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 03:08:19 ]
日本でHaskellやってる人間なんて100人未満だろうな

698 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 03:13:05 ]
だってモナドって何ですかって聞くと
「圏論について勉強するといいよ」って返されるんだもん

そしてwikipediaで圏論の説明見てわからず涙目になる俺



699 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 04:11:20 ]
>>697
3000人じゃなかった?

700 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 06:33:59 ]
Haskellでモナドを使ったり作ったりする分には圏論の知識なんて要らないけどな

701 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 10:04:01 ]
>>699
そのうち何人が実際にソフトウェアを記述するかといったら100人未満だと思うよ

702 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 00:19:34 ]
Webの自動テスト
Haskellで書くと面白いんだけど
Arrowが良くわからん

あれが必要ななんでどうまくつかいこなせない

703 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 06:49:34 ]


704 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 08:26:47 ]
和訳すると、
「よくわからないArrowが必要なせいで、うまく使いこなせない。」

705 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:22:44 ]
arrowより日本語を使いこなした方がよいのでは…

706 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:38:51 ]
まぁ、arrowよりも日本語の方が長く使うだろうからなぁ。

707 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:42:17 ]
分からないぞ、突如GHCが日本を占拠して日本語の代わりにHaskellを使うように命じられるかもしれない。

708 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 18:48:55 ]
それは中国が世界を支配する確率とどちらが高いかね?



709 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 20:42:39 ]
GHC とは General Headquarters Compiler の略だったのか・・・
ギブ・ミー・モナド

710 名前:デフォルトの名無しさん [2008/04/10(木) 11:30:08 ]
>>702
Arrowが必要なのは、Arrowベースのテストツールかなにかを
使ってるからなんだろうけど、なに使ってるの?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<201KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef