[過去ログ] 関数型プログラミング言語Haskell Part16 (978レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
96: デフォルトの名無しさん [sage] 2011/10/11(火) 22:45:56.60 AAS
横レスだが、イギリスの各大学でいろいろな関数型言語が別個に開発されていて、
またオープンソースもそれほど盛んな時代ではなかったので、
大学を異動すると前の処理系は使えず、別の処理系を作り始める必要がある場合があった。
これでは人的リソースの無駄なので、
イギリス大学内での共通言語を目指してHaskellプロジェクトが立ち上がった。
150: デフォルトの名無しさん [sage] 2011/10/15(土) 18:00:48.60 AAS
ありがとうございます

みなさんの意見を参考に、mapA に決定しました (A = Adjacent)
286
(1): デフォルトの名無しさん [sage] 2011/10/27(木) 12:31:24.60 AAS
>>284
284(1): デフォルトの名無しさん [sage] 2011/10/27(木) 12:12:07.98 AAS
発想を広くとか勘違いしてるやついるな
発想はよさだろ

発想が狭くても良ければいい

お前みたいなやつはクソ

海外旅行経験300回未満のゴミが

"欧米では〜〜、海外では〜〜、視野を広める、心を広く、発想を広く、世界は広い、井の中の蛙、まだまだ甘かった
日本人は〜、コミュニケーションは大事、むこうでは〜〜、ボブがよ!ヘイ!ジョンとかブログに書く馴れ馴れしく”
とかほざいてるのとおなじ気持ち悪いんだよゴミ

なあゴミ
良い発想かどうかは、誰がどうやって判断するんだろ。。。
304
(2): デフォルトの名無しさん [sage] 2011/10/28(金) 07:47:46.60 AAS
>>301
301(6): デフォルトの名無しさん [sage] 2011/10/28(金) 02:56:26.22 AAS
Haskellでプロトタイピングをするとき、ここから作ってく、こうやって作っておけば後からの変更に強い、
みたいな作法って持ってます?

ある組成式を受けとったら、その分子の平均質量とかマススペクトルとかを返してくれるような
プログラムを書いてみようかと思ったんだけど、まず基本となる原子のデータ型から作っていって、
data Atom = Atom { abbr::Char, abundance::Distributions }
type Distributions = [(Int,Double)]
とか定義しておいて、average :: Atom -> Doubleやspectrum :: Atom -> (Int -> Double)
みたいな関数を作り、組成式はtype Molecule = [(Atom,Int)]としてみようか、と考えています。

で、Atomを拡張してname::Stringみたいな値も格納しておこうか、と思いついたとき、
Atom型の値の中身をパターンマッチで分解している部分は全て書き直さなければならなくなります。
変更に弱いから、手探りでコーディングをしているときはパターンマッチによる分解は使うべきじゃない、ということで良いのでしょうか。
> Atom型の値の中身をパターンマッチで分解している部分

ここが元凶じゃないかな

Atom型の値の中身をパターンマッチで分解するのなら、
何の為に abbr 関数や abundance 関数を定義したの?

パターンマッチで分解するんじゃなく、
これらの関数を使って中身を取得すべきじゃないの?
パターンマッチだと型の構成を固めちゃうよ

ちなみに、見た目よく似た問題に Expression Problem というのがある
data X = A | B という型をパターンマッチで A B 仕分けしている関数が多くあり、
そこに新たに C という値構築子を追加したいが、修正すべき関数が多くて大変
なんとか楽にしたい、ついでにできれば再コンパイルしたくない

そういう場合なら、たとえばこことか日本語で分かりやすい
外部リンク:d.hatena.ne.jp
464: デフォルトの名無しさん [sage] 2011/11/11(金) 00:42:49.60 AAS
それこそ

beki n = beki' n 2
618
(1): デフォルトの名無しさん [sage] 2011/11/29(火) 23:01:30.60 AAS
hmatrix を使ってます

行列とスカラーの積ってどうやるのでしょうか
639
(1): デフォルトの名無しさん [sage] 2011/12/02(金) 12:59:59.60 AAS
>>638
638(1): デフォルトの名無しさん [sage] 2011/12/02(金) 12:34:38.78 AAS
>>637
許容できる速度に達していないライブラリしか存在せず、
かつ、絶対に遺伝的アルゴリズムが必要なら何らかの方法で自作するしかない

しかし、FFI によって C のライブラリも使える中で、
専用ライブラリが問題になるほど遅い状況が考えにくいのだが、
そんな状況があったの?
結果が出るのに何時間もかかるような大規模演算が必要な状況なら
ピンポイントでそういう部分がボトルネックになることが多いんだよ。
646: デフォルトの名無しさん [sage] 2011/12/02(金) 19:09:51.60 AAS
既にCライブラリがあるならそうだな
661: デフォルトの名無しさん [sage] 2011/12/08(木) 21:42:23.60 AAS
小飼弾相手だったら北畠を応援したくなる
673
(1): デフォルトの名無しさん [sage] 2011/12/09(金) 18:36:28.60 AAS
>>671
671(1): デフォルトの名無しさん [sage] 2011/12/09(金) 18:33:46.88 AAS
Haskellはscanlとか便利な関数多くて助かるけど、一所懸命実装してたら実は既にライブラリにあった事も時々ある。
欲しい機能から検察出来れば良いんだけど、皆さんはどうやってますか?
主な関数は覚えちゃってるのかな?
Hoogleなら型から検索できる
しかしPreludeとData.Listくらいは使ってれば大部分覚えることになると思うけど
719: デフォルトの名無しさん [sage] 2011/12/18(日) 11:01:23.60 AAS
Haskellで概念を学びScalaで応用する。GUIも簡単だぞ
あとはIDEサポートがJava並になれば最強(typesafeが開発中らしい
840
(1): デフォルトの名無しさん [sage] 2011/12/25(日) 18:41:00.60 AAS
「こういうの」って何だ?
具体的に訊いてくれ
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.035s