[過去ログ] 関数型プログラミング言語Haskell Part8 (994レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(1): 2007/10/30(火)20:28 AAS
haskell.org
外部リンク:www.haskell.org
日本語サイト
外部リンク[cgi]:www.sampou.org
外部リンク:www.shido.info
過去ログ
関数型プログラミング言語Haskell
Part1 2chスレ:tech
Part2 2chスレ:tech
Part3 2chスレ:tech
Part4 2chスレ:tech
Part5 2chスレ:tech
Part6 2chスレ:tech
Part7 2chスレ:tech
・2chの仕様により、行頭の半角スペースは表示されません。
コードをインデントしたいときは、代わりに または全角スペースを使うことができます。
868(1): 2008/05/08(木)20:41 AAS
>>853 遅延評価の壁が、どっちにしても厚い
869(1): 2008/05/08(木)22:24 AAS
>>868
それって数理証明が難しいってだけだよね?
まさか利用することまで難しいとかDQNなこと
言ってないよね?
870(1): 2008/05/09(金)00:00 AAS
>>869
ConcurrentなActor ModelのCPSは利用が難しいJK。
871(1): 2008/05/09(金)00:35 AAS
>>870
具体的かつ簡単な問題ていじしてちょ?
リンクでいいちょよ
872(5): 2008/05/09(金)06:16 AAS
すみません、それこそDQNな質問かも知れませんが、
Haskell勉強していて本によく関数の証明が出てきますよね。
あと、この関数はこういう定理に基づいて、こう変形できるとか。
これって手続き型言語の本ではお目にかからないものだと
思います。ライブラリの知識よりも、そういう数学的な発想と
いうか、ある関数を見て、別の書き方に変換できる能力の
ほうが大事なんでしょうか。
873: 2008/05/09(金)06:33 AAS
数学的証明は箔をつける為の飾り
874(2): 2008/05/09(金)07:40 AAS
>>872
論文の数式見てアルゴリズム実装できりゃ
実用上十分なわけで
つうかHaskell駄本の証明は簡単だろ
解らないなら使うな以上
875: 2008/05/09(金)08:01 AAS
>>872
再帰を使ったプログラムは証明しやすいという利点がある。
ループを使ったプログラムは簡単には証明できない。
872が具体的にどのような証明のことを言っているのかわからないけど、
本では、その利点を示すために、もしくは、形式的手法の需要性を訴えるために
証明も付記しているんだろう。
876: 2008/05/09(金)08:26 AAS
>>874
分からないだの難しいだのなんて一言も書いてないだろ。
なんだこいつ。
877: 2008/05/09(金)08:58 AAS
簡単な数式なら載せる意味が無い様な気もするが、簡単なの?
878: 2008/05/09(金)13:35 AAS
>>872
面白いと思ったらやればいい
ただそれだけのこと
879: 2008/05/09(金)17:29 AAS
本質的かどうかと言ったら、割とどうでも良いってことかな
880(1): 2008/05/09(金)17:42 AAS
それはやる人が決めればいいこと。
プログラミング言語の問題じゃない。
881: 2008/05/09(金)18:30 AAS
少なくとも避けて通れない類のものではない
882: 2008/05/09(金)19:00 AAS
なんだか
教えて君を嫌うあまり
自分も対教えて君的な対応しかできなくなってる馬鹿回答者がいるな
883: 2008/05/09(金)19:50 AAS
解らないなら使うな以上(笑)
884: 2008/05/09(金)19:51 AAS
>>880
お前みたいなやつ、学校のクラスに一人はいたよなぁ・・
こういうやつは決まって内向的で友達少なくて欝気味なんだよな。
しかも人望がないくせにリーダーやりたがって、最終的には失敗するんだよ。
近くにいたくないタイプw
885(2): 2008/05/09(金)20:09 AAS
readProcessMemoryで他のプロセスのメモリを読むために、
findWindowで取得したHWNDからopenProcessで使うProcessIdを取得したいんですが、
その間の処理のための関数が見つかりません。
Win32apiのGetWindowThreadProcessIdに該当する関数は用意されていないのでしょうか?
だとしたら中途半端すぎると思うのですが。
findWindow :: String -> String -> IO (Maybe HWND)
openProcess :: ProcessAccessRights -> BOOL -> ProcessId -> IO ProcessHandle
readProcessMemory :: PHANDLE -> ForeignAddress -> Int -> IO (ForeignPtr a)
886(4): 2008/05/09(金)20:17 AAS
>>885
ソース読め
読んでも解らないなら使うな以上
887: 2008/05/09(金)20:34 AAS
>>885
win32パッケージはみんなが日常的に使うものって訳じゃないし、中途半端なところがあっても不思議じゃない
足りない部分があるならパッチを送るのがいいと思うよ
ちなみに、特定の関数のラッパがライブラリに含まれてるか知りたいときは、
ソースを落としてforeign import宣言をgrepするのがお勧め
888: 2008/05/09(金)20:36 AAS
>>886
はい?見当違いですね。
889: 2008/05/09(金)20:38 AAS
>>871
具体的な例が簡単なら利用が難しいとは言わないだろ常考w
890: 2008/05/09(金)20:41 AAS
>>886
私には君がそのレスを嬉々として書いている様が一瞬で頭に浮かんだのだが、
ちょっとここで落ち付いてもう一度考えてほしい。
そのレスをすることに何の意味があるのかを。
あ、オナニーですね、わかります。
解らないなら使うな以上(笑)
読んでも解らないなら使うな以上 (笑)
891(3): 872 2008/05/09(金)20:41 AAS
皆さん、ありがとうございます。
自分は手続き型しか経験が無かったので、プログラムが意図した動きを
するかをテストするという発想はあっても、証明するという発想はありません
でした。
それが、Haskell本ではよく出てくるので、アプリケーションの信頼性を「証明」
するということが重要なのかな、と思ったのです。
別にそんなこと一々しないんですかね。或いは、ツールで検証できたりする
んでしょうか。
892: 2008/05/09(金)20:43 AAS
その喧嘩腰の奴、最近あちこちの関数型言語のヌレで暴れてる知ったかぶりのアホだYO!
相手にする価値無いからほっといた方がイイ!
893: 2008/05/09(金)20:47 AAS
NGワード:
読め
使うな
以上
登録したら気分爽快w
894: 2008/05/09(金)20:49 AAS
>>886がネタレスにしか見えない
895(2): 2008/05/09(金)20:50 AAS
>>891
プログラム全体の正しさを証明するのは難しすぎて(良くても面倒すぎて)実際的じゃない(少なくとも今は)
だから、Haskellでもテストは手続き型言語の場合と同様に重要で、テストに代わるものは無い
ただし、限定された状況では形式的な証明が有効なことはある
Ordのインスタンスを書いたとき、それがちゃんと全順序になっていることを証明するとか、
自分で書いた書き換え規則(これはGHC特有の機能だけど)の正しさを証明するとか
896: 2008/05/09(金)20:51 AAS
俺も>>886は>>874をもじって遊んでるだけだと思ってたよ
897(4): 2008/05/09(金)21:44 AAS
モナドの説明によく出てくる、
「xxxという法則を満たすものをyyyとみなすといろいろ便利なことがあ
ります」
という謎掛けのような言い回し、なんだかいろいろなものを一つの枠組みで処
理することを表してるんかなあと思っていたんだけど、今日ひらめいた。
あんまり好きじゃない言葉をあえて使うけど、
モナドっていわゆるデザインパターンの一種と考えておk?
898(1): 2008/05/09(金)21:47 AAS
>>897
デザインパターンとはまた違うね。
モナドをデザインパターンとみなすならありとあらゆるアルゴリズムとデータ構造がデザインパターンだといわれてしまう。
899(2): 2008/05/09(金)21:58 AAS
>>897
その通りで、「モナド式のインタフェースを与える」というのが一種のデザインパターンになってる
ただし、メタな慣習に留まらずに、「Monad」というクラスを通じて言語内でこの仕組みを活用できるから、
いわゆるデザインパターン(対応する概念がコード中に直接現れない)とは少し違う
>>898
モナドはアルゴリズムでもデータ構造でもないけど、なんでそうなる?
900(1): 2008/05/09(金)22:01 AAS
>>899
アルゴリズムとデータ構造だろ。
901(1): 2008/05/09(金)22:07 AAS
>>900
個々のモナドならそうだな
俺は>>897を読んで、個々のモナドについてじゃなく
Monadクラス(あるいはモナドという考え方)についての話題だと解釈した
Monadクラスはデータ構造でもアルゴリズムでもないってのは認めるよな?
902(1): 2008/05/09(金)22:27 AAS
>>901
クラスとは?
型クラスのこと?
データ構造に過ぎないと思うが。
デザインパターンというのはもっとラフなもの、たとえばプログラマーの設計におけるノウハウのようなものを言うんだよ。
モナドはノウハウじゃないよね。
903: 2008/05/09(金)22:40 AAS
>>902
型クラスのこと
型クラスはいかなる構造も表さないだろ
データ構造は個々のインスタンスだ
モナドはノウハウだと言えると思う(少なくともそういう側面がある)
ライブラリを設計する時に、特定の機能をモナドとして公開するという選択肢を知っていると便利だという意味で
ただ、Haskellでのモナドは単なるノウハウにとどまらず、実際にコード上で型クラスとして利用できる
(つまりliftMとかmapMみたいな、任意のモナドについての関数を書ける)
という点で、典型的なデザインパターンとは違うから、それを>>899の4行目に書いた
904: 2008/05/09(金)22:43 AAS
OK これ以上何を言っても言葉遊びに過ぎないからやめよう。
905: 2008/05/09(金)23:22 AAS
>>897
モナドなんかの定義は
GHCの神様の論文みりゃいいだろ
数式的にこみいっているなら
圏とかその辺の簡単な英語の
教科書読めばいいだろ
そもそも、偉そうで大して
何も功績のない黄色猿の説明の
真似事を真に受けるから混乱するんだよ
他の分野と違って日本語で発信した
情報を改良していった分野じゃねーから
日本語の情報なんて読むだけ無駄なんだよ
906(2): 2008/05/09(金)23:26 AAS
>>891
>>895
Haskellの関数と仕様を与えて、関数がその仕様をみたすことの証明をする支援ツールがある。
名前はAgda
このツールによって証明された関数は、仕様を満たすことが保証されるので、テストが必要ない。
このようなツールは証明支援系(Proof Assistant)、定理証明系(Theorem Prover)などと呼ばれている。
907: 2008/05/09(金)23:27 AAS
>>891
>>895
Haskellの関数と仕様を与えて、関数がその仕様をみたすことの証明をする支援ツールがある。
名前はAgda
このツールによって証明された関数は、仕様を満たすことが保証されるので、テストが必要ない。
このようなツールは証明支援系(Proof Assistant)、定理証明系(Theorem Prover)などと呼ばれている。
908(3): 2008/05/09(金)23:42 AAS
たとえばネットワークアプリとかを書くとき、途中で通信が切断されたかどういう挙動をするかとか、
通信相手が異常なデータを送ってきたときどうなるかとか、
そういうのってテストするのが一番の近道だと思うんだけど、どうなんだろ。
909: 2008/05/09(金)23:56 AAS
>>908
その程度の組み合わせと遷移なら
spinでいいだろボケカス
910: 2008/05/10(土)00:16 AAS
>>906
Agdaの存在は知ってたけど、現実の問題に対してテストの代わりになるの?
911: 2008/05/10(土)00:36 AAS
外部リンク:www.tom.sfc.keio.ac.jp
こんな感じ?
912(2): 872 2008/05/10(土)08:40 AAS
>>906
おお、こういうツールがやはりあるんですね。ありがとうございます。
Haskellというとコンパクトな記述とかがクローズアップされますけど、
参照透過性にこだわりを持つ言語ということで、テストではなくて
証明が可能な場合が多い、というのは刺激的だと思います。
>>908
テストと証明では質的な違いがありますよね。テストはどこまで行っても
信頼できる「と思われる」の積み重ねであって、絶対に間違いがあっては
いけないシステムの場合、テストは凄いコストかかるんじゃないでしょうか。
証明可能で、しかもツールでそれが検証できれば凄いコストが減らせます。
一般的な実用化を進めるに際して、重要な要素だと思います。
913(3): 2008/05/10(土)09:58 AAS
>>912
Haskellで証明が可能な場合が多いのではなく、すべての関数について証明をすることができる。
もちろん非常に難しいものもあるが。
再帰関数は証明が簡単である事が多いという事実もある。
>>908
形式的な証明は常に必要な訳ではない。今すぐ使いたいシステムで、多少のバグは許容される場合は、
形式手法は向いていない。
しかし、不具合が許されないシステム開発においては、テスト行程に莫大な予算がかかってしまう。
[参考] UFJ銀行のシステム統合↓
外部リンク:itpro.nikkeibp.co.jp
これは、システム開発にCOBOLやJavaなどを使っているためである。
914: 2008/05/10(土)11:09 AAS
913
訂正
x すべての関数について証明する事ができる。
もちろん、正しくないことは証明できない。
915(1): 2008/05/10(土)12:02 AAS
俺は頭が悪いんで他人の意図が読みとれないのだが>>913は
『不具合が許されないシステム開発においてはHaskellで開発すればよい』
と言ってるのか?
916: 2008/05/10(土)12:15 AAS
作ったアルゴリズム
数式化するときってみんなどうしてる?
917(1): 2008/05/10(土)12:24 AAS
関数の仕様はその仕様でいいのか、
というところまで考えると、
やっぱりテストは必要だと思う。
918(3): 2008/05/10(土)12:31 AAS
>>915
その通り。
しかし現実的には以下のような問題があり、大企業で今すぐ導入する事は難しい可能性がある。
- 過去に作った巨大なシステムがJavaなどで作られている。
- 偉い人(責任者や、クライアント) がHaskellや形式手法などの技術に関する知識を持っていない。
- 関数型言語ができるエンジニアが世界的に見ても少数である。
これからシステムは複雑になっていく一方で、不具合に対するリスクや、
テストにかかるコストが上がっていくのならば、形式手法を用いた開発がより求められるかもしれない。
実際に関数型言語を第一言語として、金融関係のシステム開発を行っている会社がニューヨークに存在する。
外部リンク:www.janestcapital.com
919: 2008/05/10(土)12:38 AAS
まるで技術的な欠陥はないかのような書き方だけど
そうなの?
920: 2008/05/10(土)12:39 AAS
>>917
確かに仕様を厳密に読む能力がないといけない。それは契約書などで契約を結ぶのと似ている。
契約を結ぶ両者が契約書の記述をきちんと読んで判定しないと契約はうまくいかない。
テストが必要である事は変わらないかもしれないが、テストだけでは100%の保証をする事はできない。
形式手法によって、テストのウェイトを減らし、信頼性を増やす事ができるかもしれない。
921(1): 2008/05/10(土)12:39 AAS
本来は高レベルの
形式的意味論や型推論を
使って手続きと関数型を
クロス変換できるといいんだよなぁ
>>918作ってよ
922: 2008/05/10(土)12:46 AAS
Haskellでもゆるいコードは書けるよ。
共用体のような型を多用するとコンパイルが簡単に通るようになる。
けど実行時にエラーが出る。
何故そんな書き方が許されるのかというと、そうしないと書けないこともあるから。
そういうコードは静的なチェックができない。
923: 2008/05/10(土)12:49 AAS
マシン語を手続き型言語とするならば、関数型→手続き型の変換は存在する。
例えばGHC↓
外部リンク:www.haskell.org
924(1): 2008/05/10(土)12:50 AAS
画像リンク[jpg]:www.sagisou.sakura.ne.jp
画像リンク[jpg]:www.sagisou.sakura.ne.jp
画像リンク[jpg]:www.sagisou.sakura.ne.jp
画像リンク[jpg]:www.sagisou.sakura.ne.jp
925: 2008/05/10(土)12:51 AAS
>>918
HaskellでGoogle検索したときとかに、人材募集の公告を出している会社だね。
926(1): 2008/05/10(土)12:53 AAS
転職しようかな
927: 2008/05/10(土)13:08 AAS
>>924
うんこ絵まだ〜?
928: 2008/05/10(土)13:14 AAS
AA省
929(1): 2008/05/10(土)13:25 AAS
>>921
ET言語なんかがその方向なんジャマイカ?
外部リンク:alohakun.blog7.fc2.com
930: 2008/05/10(土)13:39 AAS
>>929
それって学会発表聞いた限り
CAD関係の数値データの変換程度
しかできないって記憶があるけど
今は分散トランザクションとか扱えるまで
成長してきたのかな?
931: 2008/05/10(土)13:45 AAS
プログラムの数学的な証明はテストの一部だろ
932: 2008/05/10(土)13:49 AAS
難しいことはそっちに置いておいて
アルゴリズムを数式化する方法について
教えてほしいぉ
933(1): 2008/05/10(土)13:52 AAS
>>918
俺、商売のチャンス見つけちゃってる?
934: 2008/05/10(土)13:58 AAS
実績のない言語での開発を許してくれる金融系のクライアントがいれば
935: 2008/05/10(土)14:06 AAS
>>933
競走相手は、学者だぞ。
MOT(技術経営:Management of Technology)は参考になるかも。
936: 912 2008/05/10(土)21:22 AAS
>>913
なるほど。自分はHaskell学習中で、BirdのIntroduction〜を読んでるの
ですが、最終章に証明アプリみたいなのが出てきますよね。
これを見て凄く感動しましたw。こういうのがHaskell開発の統合環境のような
ものでサポートされれば、関数選択して簡潔な表記へ変換とか、色んなことが
可能なんじゃないか。ユニットテストも全く違った形で、凄い精度よくできるん
じゃないかと思ったんですね。
937(1): 2008/05/10(土)22:08 AAS
これいいぉ?
Communicating and Mobile Systems: The Pi-Calculus
938(2): 2008/05/10(土)22:29 AAS
>>937なんぞこれ
939: 2008/05/10(土)22:52 AAS
>>938
サイボウズラボ
2chスレ:prog
611 名前: た 投稿日: 2008/05/10(土) 13:26:19
ね、分散システムとかの基礎本、
いいの知ってたら教えてちょ。
613 名前: 仕様書無しさん 投稿日: 2008/05/10(土) 14:08:26
>>611 Communicating and Mobile Systems: The Pi-Calculus
940(1): 2008/05/11(日)00:58 AAS
>>938
π-calculus 超入門
外部リンク[html]:web.yl.is.s.u-tokyo.ac.jp
941: 2008/05/11(日)00:59 AAS
おっΠ
942: 2008/05/11(日)03:07 AAS
>>940
ごちそうさまでした
943: 2008/05/12(月)01:55 AAS
hrefのiterateの誤植のおかげで時間ロスした……
944(1): 2008/05/12(月)19:49 AAS
test.hsをコンパイルしようとしたら次のようなエラーが出たのですが原因がわかりません
compilation IS NOT required
test.o(.test.o(.text+0x46):fake: undefined reference to
`cgizm3001zi1zi5zi2_NetworkziCGI_runCGI_closure'
945: 2008/05/12(月)19:50 AAS
すみません途中で送信してしまいました
>>944のようなエラーが出てきた場合はどのような対処をすればいいですか?
946: 2008/05/12(月)20:24 AAS
--makeオプション付けてる?
947(1): 2008/05/12(月)20:45 AAS
Haskell が形式的手法に向いてて、テスト等のコストダウンにつながるみたいな話が出ていたが、
F#はその点どうなんだ?
・一応関数型言語
・でもHaskellほど純粋じゃない
・M$開発なのもあって、使い始めてる企業もぽつぽつ
・.NET
948(3): 2008/05/12(月)23:13 AAS
質問です。
例えば、外部リンク:ujihisa.nowa.jp
のプログラムはrunghcで動かす時はリストの一部が出力されますが、ghcでコンパイルして
動かすと何も出ないですよね?
無限リストなんかを処理が終わった部分から逐次出力する、というのはどうすればいいんでしょうか?
runghcの場合は大丈夫なのですがコンパイルして実行すると駄目です。
949(1): 2008/05/13(火)00:06 AAS
>>948
こんなふうに書き換えると最初の値だけは出力されるね。
GHCの実装の詳細までは知らないですが……
main = mapM_ (print . love) [0..10]
love :: Int -> Bool
love 0 = True
love k = love (k-1) && love 1
950(1): 2008/05/13(火)06:08 AAS
>>948
標準出力のバッファリングを無効にすればいい
import IO
main = hSetBuffering stdout NoBuffering >> ...
951: 2008/05/13(火)07:55 AAS
>>947
F#でも同じだろ。
静的型付け言語だし、再帰でプログラミングするし。
ただ、現状ではHaskellやOCamlの方が、証明支援ツールが充実している。
952(4): 2008/05/13(火)09:52 AAS
いくつか関数型言語を使う企業を見たり、経験しているが証明はまずしない。
定理証明支援系で証明できることはどうせたかが知れており、
これは業種にもよるので断言できないが、実際に保証したいことはまず
証明できない。できたとしても時間かかりすぎ。仕様が変更されれば
証明に要した労力も無駄。費用対効果の面から魅力を感じられない。
自動、半自動的な検証は当然大いに利用したいが、モデル検査はちょっと
おおげさ。やはり言語に付属している型検査、型推論が妥当な手段になる。
企業側が関数型言語を選ぶのにはいくつか理由があるが、結構重要視されて
いるのが、関数型言語を書ける人間を集める方が、Javaで集めるより、
当たりが多いという事実。もちろんそういう意味では機械証明ができる人材は
歓迎される。まあ、面接や2chのスレを見てる限り、これももうすぐ成り立た
なくなるだろうけど。
953: 2008/05/13(火)16:05 AAS
>>952
> これは業種にもよるので断言できないが、
> 実際に保証したいことはまず証明できない。
まあ断言していいと思うよ。
954: 2008/05/13(火)21:20 AAS
NASAの中の奴らも
これで衛星軌道に乗せる
プログラムの証明やろうとして
職失ったしなw
今は曰く有りだから関わらん方が
いいよ。趣味でどうしてもとかいう
好奇心旺盛な変態はいいと思うが
955(1): 2008/05/13(火)22:10 AAS
>>952
>いくつか関数型言語を使う企業を見たり、経験しているが
可能ならば、具体例きぼんぬ。
956(2): 2008/05/13(火)22:16 AAS
>>952
それは、計算機で数学の証明ができない、ということと等価なんでしょうか?
957(1): 2008/05/13(火)22:17 AAS
>>952
実際にHaskellやOCamlを使っているところは、単純に静的型チェックによる安全性を重要視してるんじゃない?
Javaなんかも静的型チェックがあるけど、HaskellやOCamlはもっと安全で、でも、Javaほど冗長じゃない
っていうのが普通に便利だと思うけど。
958: 2008/05/13(火)22:24 AAS
>>956
答えはNo.
できるけれども、現状では、難しすぎて実用的でないということ。
定理証明支援器は使うためにラムダ式の厳密な扱いができないとダメだし、ツールの使いやすさも
まだまだ発展途上。
959(1): 2008/05/13(火)22:28 AAS
最近Haskell始めたんだけど、 a b c d って式があったらそれだけ見てもb c dは関数なのかそうでないのかわからないよね?
定義してる部分を見るしかないの?
960(3): 2008/05/13(火)22:42 AAS
>>955
働いたり内部に首を突っ込んで詳しく聞いたのは外資金融系数社、大手、小規模含む。ocaml 2社、Haskell 2社。
全社をあげて取り組んでいたり、一部プロジェクトチームだけだったり。これ以上は勘弁。
他にも外資金融数社でF#などの採用を考えているという話。金融ではこれからの十年は関数型じゃないか?という噂。
金融じゃないが東大でもHaskellを使ってspin-outした若者達がいたよね。
>>956
あまり関係ありません。
証明を書けたとしても通常は時間が掛かりすぎて、問題自体が変化するなど、労力=給料に見合わない、ということです。
証明スクリプトを自在に書けるほどの人材なら、基本デザインに参加させることで安全性を向上させるほうがよいです。
>>957
まあ、そのとうり。
偏見かもですが、以上の会社/プロジェクトではオブジェクトは人間による静的解析を
難しくするのでどこでも人気ありませんでした。
961(2): 2008/05/13(火)22:45 AAS
式を値として扱う方法
がいまいちわかってない
練習問題5個ちょうだい
962(2): 2008/05/13(火)22:49 AAS
>>960
955ではないですが、もう少しお聞きしたいのですが、金融系で関数型というのは、
どういう部分で使ってるんでしょうか?リスク管理とかのシステムは割と金融工学
とかの人たちが多い印象があるんですが、そういう部分でしょうか。
963: 2008/05/13(火)22:52 AAS
>>960
関数型言語を使う企業情報サンクス。
知らないだけで、けっこう使われているのね。
964: 2008/05/13(火)22:52 AAS
>>959
基本的にはそう。aの型だけ見れば分かることもあるけど
別にこれはHaskell特有の事情じゃなくて、例えばCでも、
a(b, c, d)
という式を見ただけではbやcやdが関数かどうかは分からない
965(1): 2008/05/13(火)22:53 AAS
>>960
> 働いたり内部に首を突っ込んで詳しく聞いたのは外資金融系数社、大手、小規模含む。ocaml 2社、Haskell 2社
日本の会社ですか?
966(1): 2008/05/13(火)22:53 AAS
>>961
式を値として使うってどういうこと?
967(1): 2008/05/13(火)22:54 AAS
なんかネタ臭いな
ひょっとしてビジネスロジックの計算部分だけとかそういうオチ?
968(1): 2008/05/13(火)23:01 AAS
Functions as Values
って奴です日本語の意味は知りません
969(1): 2008/05/14(水)00:02 AAS
>>913
投資額2500億円、開発工数11万人月
三菱東京UFJ銀行は2007年8月までにサブシステムの開発と単体テストを終え,
9月から今日に至る8カ月間,接続テスト,総合テスト,最終確認テストと,
ひたすらテストを重ねてきた。
↓
UFJ システム統合 テスト不十分
外部リンク[html]:www.nhk.or.jp
970(1): 2008/05/14(水)00:14 AAS
>>969
素朴な感覚として、数千人が従事したシステム開発で間違いが
あってはならない、というのは無理な相談だと思うが…。
関数型言語はそういう点でも期待されてるのかね。
971: 2008/05/14(水)00:18 AAS
>>970
海外の堅いシステム系の人に
質問したことあるけど結局金の問題
偉い人はたかがパソコンずらーっと並べて
金勘定させるのになぜこんなに金かかるんだ
安くしろ他社を出し抜けと思っているだけなんだよ
972(1): 2008/05/14(水)02:25 AAS
x8664版でりようしてるけど、初めて4G以上使ってしまった。
フィボでどこまでけいさんできるのか?して300000でシステムが不安定になったよ。^^;
でも落ちなかったところが偉い。
973(1): 2008/05/14(水)07:27 AAS
>>962
全社をあげて取り組んでいるところは基本インフラは全部関数型。
といってもトレーダーに関数型言語を習わせるわけにもいかないし、
シミュレーションコアはC/C++な所もある。
大手だと既存インフラがあるので一部を強化、置き換える形で導入。
Quantsは基本的に言語理論知らないので、Quantsが関数型使おう
ということはまずない。よほど意識の進んだ頭のおかしいQuantsとか、
ITの人がプロジェクトとして始める。うまくいったり、理解を得られず
失敗したり。そういう意味ではリスキー。
Quantsの悪口を言うと言語理論どころか計算量も知らない奴とか、
C++早い、マンセーとか言いながら構造体をコピー渡ししたりとか
大手にもいるの。なので、気をつけて関数型で書けば、もとの
プログラムより早くなっちゃたりする。実はそういう業界。
>>965
日本にある会社はごく一部。全部外資。日本企業は知らね。
>>967
Haskellを採用している所は遅いからそうかもわからんね。
974: 962 2008/05/14(水)11:10 AAS
>>973
ありがとうございます。基本インフラに関数型ってのは驚きですね。
それを売りにしようとしている企業なんでしょうか。
てっきり金融商品の価格設定計算だったり、リスク管理部門の計算
システムかと思ってました。デリバのリスク管理とかHaskellなんかが
向いてそうだなぁと。
975(1): 2008/05/14(水)11:14 AAS
インフラまで関数型か・・・
具体的なコードがみたいな
976(1): 2008/05/14(水)12:27 AAS
米の一部金融系ではErlangを実戦投入してたことがあったとか聞いたような
977: 2008/05/14(水)13:11 AAS
>>976
アーランの会社だろ
978: 2008/05/14(水)17:35 AAS
>>972
不安定になるなら落ちたほうがまだマシだろw
979(1): 2008/05/14(水)17:45 AAS
単純な掲示板を作成するとしたらどんなライブラリを参照すればいいですか?
980(1): 2008/05/14(水)19:15 AAS
>>975
どっかに就職してね
981: 2008/05/14(水)19:17 AAS
>>980
どこに?
982: 2008/05/14(水)19:18 AAS
ML スレでちょっと話題になってたけど、
千葉にオフィスがあるみたいだね。
外部リンク:ocaml.janestcapital.com
外部リンク[cgi]:rikunabi2009.yahoo.co.jp
983: 2008/05/14(水)19:23 AAS
インフラなんかまともなプロファイラやデバッガがないと務まらんだろうに。
Haskellでローレベルな解析するツールがどれだけ充実してるんだか。
984: 2008/05/14(水)19:24 AAS
>>979
Network.CGI と Text.Html あたりじゃない?
どっちも使ったことはないけど。
985(2): 2008/05/14(水)19:57 AAS
関数を値として扱う方法が
よくわかりません
例題を4題くだされ
986: 2008/05/14(水)20:20 AAS
ぼちぼち次スレ頼む。しかし最近は流れが早いね。いいことだ。
987: 2008/05/14(水)21:22 AAS
>>961
>>966
>>968
>>985
何がよくわからないのかよくわかりません。
988: 2008/05/14(水)21:49 AAS
>>985
外部リンク[html]:www.sato.kuis.kyoto-u.ac.jp
989(2): 2008/05/15(木)09:55 AAS
テンプレの改訂とか要望ある?
990: 2008/05/15(木)19:44 AAS
>>989
関連スレ
・関数型言語Part IV
2chスレ:tech
・【数学者】Haskellはクソ言語【オナニー】
2chスレ:tech
・純粋関数型言語Concurent Clean
2chスレ:tech
・関数型言語ML(SML, OCaml, etc.), Part 5
2chスレ:tech
・Lisp Scheme Part21
2chスレ:tech
【入門】Common Lisp その4【質問よろず】
2chスレ:tech
・Emacs Lisp 3
2chスレ:tech
991: 2008/05/15(木)19:46 AAS
あと
>>18 のリンク先も欲しいな
992: 2008/05/15(木)21:18 AAS
>>989
・栄光のグラスゴーHaskellコンパイルシステム利用の手引き バージョン6.8.2
外部リンク:www.kotha.net
も欲しいかも。
993: 2008/05/15(木)21:33 AAS
これを先頭に入れときな
外部リンク[html]:www.haskell.org
994: 948 2008/05/15(木)23:59 AAS
>>949-950
できました。
ありがとうございました。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.255s*