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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 16:41:29 ]
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/
Part8 pc11.2ch.net/test/read.cgi/tech/1193743693/
・2chの仕様により、行頭の半角スペースは表示されません。
 コードをインデントしたいときは、代わりに または全角スペースを使うことができます。


92 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 00:01:55 ]
do { ... } は「アクションっていう値」という認識でいいの?

93 名前:初心者修業中 mailto:sage [2008/05/25(日) 00:18:03 ]
>>92
do構文はbind演算子で結合された式を
手続型言語っぽく見せる糖衣構文と認識してますが。

94 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 01:33:41 ]
>>92
do{...}が値を持つ単なる式であるか、という質問ならそのとおり
>>93が言うようにdo式は構文糖で、bind演算子(>>=)の略記
do式の値が(広い意味で)アクションか、という質問ならそのとおり
具体的には、IOモナドに関するdo式なら値はIOアクション、リストモナドならリスト、という具合

95 名前:92 mailto:sage [2008/05/25(日) 01:35:15 ]
>>94
そういう意図の質問でした。ありがとう。

96 名前:初心者修業中 mailto:sage [2008/05/25(日) 02:31:03 ]
>>94

>(広い意味で)アクション
の意味がわかりません。

Maybeも(広い意味で)アクションなのでしょうか?


97 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 03:08:50 ]
>>96
そういうつもりで書いた
一般的でない用語法だったらすまん

98 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 03:28:30 ]
Just x : なにもしないでxを返すアクション
Nothing : 計算を即座に終了させるアクション

99 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 07:33:24 ]
f x: xにfを適用するアクション
1 + 2: 1と2を加えるアクション

100 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 09:42:48 ]
理系の方々に伺いたいんですけど、Haskellは数学で蓄積された
知識をダイレクトにコード化が可能だと感じますか?

Cなんかだと似ても似つかないものにしないといけませんよね。
数学的なモデルのシュミレーションなんかを記述する際に、
正しく書くのは結構大変じゃないかと思ってしまいます。

そういう点で、Haskellはそのままとは言いませんが書きやすいの
かなぁと。だけど、僕の知人で理系の人たちはC言語使う場合が
多いようです。最大の理由はスピードだそうですが、手間を考えると
早い計算機使ってHaskellで書いた方がいい、という考えの人も
いるんでしょうか。



101 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 10:41:40 ]
ダイレクト云々よりも
LINPACKが使えるかどうか
それが問題だ


102 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 10:49:58 ]
>>99
関数とアクションは同じものなの?

103 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 10:55:25 ]
>>102
別のものだよ
>>99はネタ(か、たちの悪い誤解)だから真に受けんな

104 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:19:31 ]
LINPACKとか言ってるおっさん
氏ねよw

105 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:24:30 ]
>>100
0か1かみたいな考え方は辞めた方がいいかと。
工学の人は合理的、合目的的に考えるから、適材適所でやります。

速い計算機に、さらに速いソフトウェアがあれば、より計算を回せます。
計算機が速いから、ソフトウェアは遅くていいなんてやり方じゃ、
ライバルに負けてしまいます。遊びならそれでもいいけど。

106 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 11:39:54 ]
>>100

107 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 12:36:24 ]
「アクション」ていうのはIOモナドだけじゃねえの?
Maybeとかでも「アクション」ていうの?

108 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 12:43:09 ]
少なくともStateとかSTMモナドではアクションって言うよ

109 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 12:43:17 ]
自分もActionというのはIOだけを指しているのだと思ってました。要するに
関数の外の世界に対して、関数の動きが影響を与えたり、逆の現象が発生
するのがActionであり、IO型であると。

IOがモナドなのは、モナド則に当てはまるから、ってだけではないでしょうか?

110 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 13:21:38 ]
モナド則に当てはまらないものをモナドと言うわけないでしょ。



111 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 13:24:07 ]
>>105
そうそう、その時点その時点でのベストを尽くします。そして、過去の仕事に対するリスペクトも忘れません。

112 名前:デフォルトの名無しさん [2008/05/25(日) 15:24:57 ]
質問です

たとえば
data Hoge = Hoge { x1 :: Word32, x2 :: Word32, x3 :: Word16, x4 :: Word16}
のようなHogeを[Word8]と相互変換する便利な方法ってないでしょうか?

113 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 15:29:12 ]
使ったことないけどSerTHとか?

114 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 15:33:25 ]
>>113
へえ・・・ 何となくおもしろそう
ドキュメントとか読んでみます

115 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 15:58:20 ]
SerTH見てみましたけれど、どうやら私の用向きとは違うようですね。

116 名前:デフォルトの名無しさん mailto:sage [2008/05/25(日) 16:02:02 ]
Template Haskellの方もちょっと見てみます

117 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 00:05:41 ]
計算理論の基礎
計算機プログラムの構造と解釈

ってどっち買ったらいいの?
なんか最近数学の基礎たりねー

118 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 00:17:22 ]
ちなみに計算理論の基礎が
つい先日第2版が出たので聞いてみた
私事だけど金がないので優先度が欲しい

119 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 07:36:44 ]
後者は原著がネット上で無料で読めるから前者

120 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 09:26:17 ]
というか全然違う傾向のほんのどっちがいいか聞かれても…
しかもHaskellには関係ない
推薦図書スレは別にあるよ




121 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 14:08:03 ]
こっちでいいかと
science6.2ch.net/test/read.cgi/informatics/1160740645/

122 名前:36 ◆K0BqlCB3.k mailto:sage [2008/05/26(月) 15:31:05 ]
全く調べずに聞くが、concurrent arrowなんてのは無いの?
arrow使ってていつも思うんだが、並列処理に向いてなくない?
FPGAとかのHDL記述とかに応用したりしてる人いないの?

123 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:01:15 ]
>>117
若いうちに読んどいた方がいいのは計算理論の基礎 の方だろ。
計算機プログラムの構造と解釈は仕事で必要になってからで十分。

124 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:17:09 ]
>>123
独学でやってしまった奴は
次何すればいいの?
とりあえず今自習でλの数学側の
側面勉強してみているが
何の役に立つかわからん

125 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:24:27 ]
絵を描いて学ぶ・プログラマのためのラムダ計算
d.hatena.ne.jp/m-hiyama/20070220/1171956186

126 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:27:23 ]
僕が「ラムダ計算は知っておいたほうがいい」と思う理由は、形式的計算体系としての“純粋ラムダ計算”が理論的に重要だから、というだけではありません。
むしろ、次に述べるようなことがより大きな動機となります。
まず、関数を表現する方法としてのラムダ記法(lambda notation)に慣れて、紙と鉛筆によるインフォーマルなラムダ計算が出来ると、
けっこうそれを使える場面が多いのです。例えば、「JavaScriptによるテンプレート・モナド、すっげー簡単!」の最後で、モナド法則を示すために、
インフォーマルなラムダ計算を使っています。
ある種の計算的実体(例:クロージャ)や計算手法(例:継続ベースの計算)の説明にもラムダ式がよく使われます。
式言語(EL; expression language)に対する処理系(パーザーやエバリュエータ)を作る場合なども、ラムダ計算が良いヒントになるでしょう。
もちろんラムダ計算は、既存の関数型言語を理解する基盤となります。あるいは、新しいプログラミング言語を設計する際にもラムダ計算が規範になるかも知れません。

127 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:45:04 ]
そもそも計算とはいったいなんなんだ?


128 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:36:50 ]
後者関数ってなんだぉ?

129 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 00:14:01 ]
やっぱ手書きしねーと理解できねーよw


130 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 07:23:35 ]
data type Nat = O | S Nat
という定義で自然数(0以上の整数)が表現できる。(ペアノの公理を満たす)
このとき S のことを後者関数(successor function)と呼ぶ。



131 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:39:43 ]
ここで
定義に再帰を使っていいんですか?
とか聞くとYコンビネータとか出てきちゃうんだろうか

132 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:49:17 ]
質問です

yampaっていったい何ですか?
ごく簡単に馬鹿でもわかるように概要を説明してください

133 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:16:35 ]
>>132
d.hatena.ne.jp/propella/20070315/p1
なんかどうよ。

134 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:06:04 ]
>>132
ll.jus.or.jp/llw2004/program/Reactive.pdf
5ページ目
Haskell による Arrowised Functional Reactive
Programming という実装


135 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:54:50 ]
Yampaってコンパみたいなもん?

136 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 07:20:03 ]
>>127N.D.Jones, Computability and Complexity
その他良本情報はこちら
ttp://www.kurims.kyoto-u.ac.jp/~hassei/reading_list.html


137 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 11:55:19 ]
「The Haskell School of Expression」で使われているコードの
ファイルってどこかに落ちてませんかね。

138 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 13:59:28 ]
>>137
ttp://www.haskell.org/soe/software1.htm

139 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 14:22:28 ]
>>138
あ、これってグラフィックライブラリだけじゃなくて、本のコードも
入ってるのか。勘違いしてた。ありがとう。

140 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 20:44:19 ]
comb :: Maybe a -> (a -> Maybe b) -> Maybe b

このときの

Maybe a -> (a -> Maybe b) ここまでが入力だよね?
2項目の引数が関数になっているって解釈でいいんだよね?



141 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 21:04:28 ]
うん

142 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 21:41:20 ]
違うだろw

入力 : Maybe a
出力 : (a -> Maybe b) -> Maybe b

143 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 21:51:45 ]
()でくくるとどうなるのw?

144 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 21:52:57 ]
>>142
同じことじゃねーか
関数を返す関数と二引数の関数を同一視するのはHaskellでは普通の習慣

145 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:22:38 ]
>>143
a -> Maybe b
っていう関数を引数にとるっていうことだよ

146 名前:初心者修業中 mailto:sage [2008/05/31(土) 22:30:19 ]
>>140
Maybe a -> (a -> Maybe b) の2つを入力とする事もできるし、
Maybe a だけを入力とする事もできる。

後者の場合は(a -> Maybe b) -> Maybe bの関数が出力となる。
これを部分適用といい、こういった事ができるのが
Haskellの魅力である。

…と認識しています。


147 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:31:41 ]
>>145
えっとねそれじゃあ
Maybe aと関数を引数に取るために
(a -> Maybe b)、この2つを与えてますよね?
関数渡すためにこう記述するしか方法がないから
そのようになっていると理解したてみたのですが
どうやら上の人曰く間違っているようで何が違うのでしょうか

Haskellはグラフ簡約によって1度に1つのTermを解釈していくだけ
なので、最終的な結果は高々1つになるはずだと思っていたのですが
どうやら違うようで混乱してきました。困った、不勉強だ困った


148 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:38:00 ]
>>143
右結合の二項演算子?である「->」の結合順序をデフォルトから変更している。

A -> B -> C -> D
は、「->」が右結合の二項演算子?であるがゆえに、
A -> (B -> (C -> D))
と解釈される。

A -> (B -> C) -> D
は、
A -> ((B -> C) -> D)
と解釈される。

149 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:39:34 ]
>>147
>どうやら上の人曰く間違っているようで
間違ってないよ

150 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:55:51 ]
>>147
> Haskellはグラフ簡約によって1度に1つのTermを解釈していくだけ
> なので、最終的な結果は高々1つになるはずだと思っていたのですが
> どうやら違うようで混乱してきました。困った、不勉強だ困った

型の問題と適用の問題が、頭のなかでうまく区別が付いていないのでは?

適用される関数はA -> (B -> C) -> D型で変化はないけど、

* A型の「値」に適用すると、(B -> C) -> D型の「値」(関数)が帰ってくる。
* A型の「値」と、 (B -> C)型の「値」(関数)の2引数に適用すると、D型の「値」が帰ってくる。

このように考えてはどうか。

これで納得できなければ、やっぱり単純に、
A -> (B -> C) -> D型は、A型の値をとって、(B -> C) -> D型の値を返す関数の「型」
という出発点に戻るべきかな。



151 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 22:56:33 ]
>>142が突っ込んでるのは

> Maybe a -> (a -> Maybe b) ここまでが入力だよね?

の部分。

> 2項目の引数が関数になっているって解釈でいいんだよね?

こっちは合ってる。

152 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 23:54:09 ]
カリー化とは何か?を書いた方がいいんではないでしょうか。

↓ではお願いします。

153 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 23:58:34 ]
この関数適用は出来損ないだ。食べられないよ。

154 名前:初心者修業中 mailto:sage [2008/06/01(日) 01:08:22 ]
カリー化とは、
複数の引数を持つ関数を
引数一つの関数の組み合せとする事。

…と認識しています。

155 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:08:36 ]
カリー化という言葉を見ると頭の中で
「カリンカカリンカ カリンカマヤ」という歌が繰り返されて止まらなくなる。

156 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:54:38 ]
おれもそうりかいしてる。<154
でも、カリー化ときいてターメリックをぶっかけてるイメージしかないw

157 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 09:01:04 ]
ガラムマサラとかも入れた方がいいのでは?

158 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 10:27:15 ]
エバラ化、桃屋化

159 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 10:28:14 ]
味の素化

160 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 10:59:26 ]
>>140
  A -> (B -> C)
というふうに切り出してしまったけど、これは本来の
  A → ((B → C) → D)
という結合関係を無視してる(「A -> (B -> C)」という型を扱うみたいに書いている)。
ってのが>>142でしょ。

カリー化の影響として、「複数の引数をとる」
  (A × (B → C)) → D
ことと、「関数を返す」ことの、どちらに主眼があるかが不明瞭になるってのがあると思うね。



161 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 11:24:29 ]
>>151>>160
その理屈は分かるんだが、カリー化を理解してるのか怪しい初心者に対して
混乱させるようなことを言うのは不親切だと思う
Maybe aと(a -> Maybe b)の二つが引数になっているという理解で正しい、と教えれば十分じゃないか

162 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 11:29:36 ]
f(a,b,c) = y
f : A×B×C→Y

f a b c = ((f a) b) c = y
(((f a) b) c) : Y
((f a) b) : C→Y
(f a) : B→(C→Y)
f : A→(B→(C→Y))


163 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 11:48:09 ]
> Maybe a -> (a -> Maybe b) ここまでが入力だよね?

「ここまでが引数リストに対応する部分だよね?」と読むと○
「ここまでが引数の型だよね?」と読むと× ← ちょっと窮屈な解釈かも、みたいな空気

164 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 15:19:49 ]
> Maybe a -> (a -> Maybe b) -> ここまでが入力だよね?

と書けばおk

165 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 17:10:16 ]
なるほどw

166 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 23:06:52 ]
複数引数の邪悪な関数をこらしめるのがカリー化です。

167 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 23:33:45 ]
それだけならタプルで渡せばいいだけじゃそ

168 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 23:44:14 ]

=>

これがよくわからん


169 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 23:47:32 ]
<コ:彡

170 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 00:31:27 ]
兄者…



171 名前:初心者修業中 mailto:sage [2008/06/02(月) 01:36:10 ]
>>168
:は、リストの先頭に要素を結合する演算子

=>の左辺(文脈)は、
多相的なデータを静的型チェックするために
コンパイラに与える条件


…と認識しています。

172 名前:OCamler mailto:sage [2008/06/03(火) 22:55:07 ]
だれかもうちょっと正しいコメントを付けてやってください。お願いします。



173 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 01:51:13 ]
[1, 2, 3] ← ふつうの見やすい表記(ただし、本来のデータ構造が見えない)
1 : [2, 3]
1 : 2 : [3]
1 : 2 : 3 : [] ← 本来のデータ構築子 (:)(cons)、[](nil)で書く(ただし、いまいちリストに見えない)
1 : (2 : (3 : [])) ← 右結合性にたよらないで書く
(:) 1 ((:) 2 ((:) 3 [])) ← 演算子としての表記法をやめる(S式マゾ以外には読みにくい)

174 名前:初心者修業中 mailto:sage [2008/06/04(水) 01:51:20 ]
お願いします m(_ _)m

175 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 03:18:52 ]
Haskell実用経験皆無の俺が来ましたよ

>>168
4.1 Overview of Types and Classes
> but the type system has been extended with type classes (or just classes)
> that provide a structured way to introduce overloaded functions.

型クラスの存在意義がわかるかどうかだと思う。

整数の足し算と有理数の足し算って、ふつう同じ記号を使うけど、
計算の内容は違う(多重定義、オーバーロードされている)でしょ。
でも、共通の性質を考えたいときもある。
そのとき、ただ「共通の演算記号+を使っているから同類とみなす」では話にならないから、

twice :: a -> a
twice x = x + x -- 2倍したいけど、+の型などがコンパイル時に不明

+を「Numという型クラスの特徴」として整理して、整数や有理数はその特徴を共有している、とみなすと。

twice :: Num a => a -> a -- 「型aはクラスNumに属する(Numのインスタンスである)」という前提をする
twice x = x + x -- と、演算子+の存在と型が保証される

そんな感じ?(ごめん、確認してない)

176 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 07:01:52 ]
改めて見るとオーバーロードの解釈が破綻してるなw
すまぬ

177 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 00:09:02 ]
=>
C++のテンプレートの特殊化みたいなものか
演算子は定義されているけど特定の型じゃないと
処理できない場合、特定のの変数を特殊化すること
あるけど

178 名前:初心者修業中 mailto:sage [2008/06/05(木) 00:54:30 ]
>>177
日本語でお願いしますm(_ _)m

179 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 08:24:10 ]
Haskellian ももうブランドではなくなりましたね…
メジャーになった証か


180 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 08:41:12 ]
=> の意味は総称型に制限を与える、じゃだめなのかなぁ。

質問、というより興味本位のアンケート。
あなたが思うhaskellの面白いところってどこですか?



181 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 09:05:56 ]
アホな質問するスレがあるところ

182 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 16:59:32 ]
堅い言語なのに簡潔に書けるようになってるところが面白いと思うし、すごく好きだ
記号を多用してたり、インデントを使ってたり

183 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 18:54:01 ]
「haskell使ってる」と言うと、みんなに尊敬して貰えること

184 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 19:19:05 ]
>>180
高速化を考え出すと、すごくたいへんなところ。

185 名前:デフォルトの名無しさん [2008/06/05(木) 21:02:04 ]
[(x,y) | x + y = 10]

186 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 21:59:49 ]
>>183
このスレ見てたらそう思えんわな、、、


187 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 22:55:55 ]
知らない人は知らないし、知ってる人はわかるもんな
しかしいい言語だ

188 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 23:02:27 ]
汎関数系の言語はC++もそうだが、
かなり野心的な言語設計になるね。
クラス囲い込み度が低いからだろうか。

189 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 23:56:07 ]
>>185
そんなのできたの!?と思って ghci で試したらできなかった。
ちょっと悲しくなった。

190 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 00:00:22 ]
インデントがよくわからなくて
エラーでていらつく
なんとかならんのかね?この糞言語
インデント制約糞なら最初からなんか
そういう機能入れろよなぁ

あーあー世界で最悪の糞言語だね
インデントのせいだけで



191 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 00:12:41 ]
>>190
そういう説もあります。
そうでないという説もあります。

192 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 00:29:14 ]
インデントがいやなら { } と ; で全部区切ればいいじゃん
一緒だよ






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

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

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