トップページtech
1001コメント338KB

関数型プログラミング言語Haskell Part28 [転載禁止]©5ch.io

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん2015/04/09(木) 08:31:01.42ID:4yjREsCN
関数型プログラミング言語 Haskell について語るスレです。

         ,.-―: ̄`ー::::::::::、
       /::::::::::::.::::::::::::::::::::::::::::`::、、
      /::::::::::::::::::::::::::::::::::::::::::::::::::::::`、
      l::::::::::::::::::::::::::::::::::::::::;':l:::::::::::\::l
      l:::::::::::::::::::::::::::::::::,,::::::::;-,:,::::::::::::::::l
     l::::::::::::::::,_,.::::,';::::::;:::::: :: l ::::::::::::::l
     l::::::::::/-/:::/-ニ,.::::/=,./::::::::::l
     ヽ:::: ´、ひ> ;:  l .<ひ>'  、::::::::/
    ヽ:::::    ̄ .)::;  l  ̄   l::::/    < 毛の壁(岡部健)の話は禁止な
     、:::::..   /:::; .,-、     l:::/、
    ,―::::::::  ゝヽ- ー' 、    l::/,、ヽ
     l,、,、,,:、:: / ,--、,-.、_ l    /::::::,、,、l
   l,、,、,、,、,、::、 `ー ̄-'   /:::::::::::,、,、l
   l,、,、,、,、,、,、::ヽ      /::::::::、,、,、,、,ノ:\

haskell.org (公式サイト)
http://www.haskell.org/

前スレ
関数型プログラミング言語Haskell Part27
http://peace.2ch.net/test/read.cgi/tech/1420718555/
0951デフォルトの名無しさん2015/07/12(日) 22:05:39.58ID:zJqA9jr9
Cと競合しないならバイトコードインタプリタで十分
コンパイラのゴリ押しが良くない
0952デフォルトの名無しさん2015/07/12(日) 22:06:55.79ID:x1Gu8TTq
既存の大量にあるCライブラリを利用しやすいかは大事なポイント
0953デフォルトの名無しさん2015/07/12(日) 22:18:58.68ID:fsP2XOSV
>>951
>Cと競合しないならバイトコードインタプリタで十分
>コンパイラのゴリ押しが良くない

意味がわからん。
LLVMコードを出力するのとコンパイラとの境界ってなによ
0954デフォルトの名無しさん2015/07/12(日) 22:24:58.59ID:s7w6GHZY
>>940
RCをGCというならC++にもGCあるだろ
0955デフォルトの名無しさん2015/07/12(日) 22:42:25.31ID:bkprvq+c
JavaとかCは、明らかに駄目な応用先でも上の意向等で使わざる得ないことあるけどHaskell とかlispはそういうこと滅多にないでしょ
0956デフォルトの名無しさん2015/07/12(日) 22:43:02.61ID:fsP2XOSV
>>954
その理解で何の問題もないと思うが。
RCがGCの主要実装方法のひとつだという点まで争いたいの?
0957デフォルトの名無しさん2015/07/12(日) 22:47:38.71ID:7yEOwALs
明確な目的や条件を設定せずに
やたら言語の優劣をつけたがる奴は
まともな開発経験も知識も能力もない
アホだと断定していいだろ。
0958デフォルトの名無しさん2015/07/12(日) 23:08:59.10ID:bkprvq+c
JavaやCとHaskell の単純な比較はできない
0959デフォルトの名無しさん2015/07/12(日) 23:48:11.69ID:s7w6GHZY
>>956
>>938 がC++はGCないからRustやろうぜとか言ってたんですよ
0960デフォルトの名無しさん2015/07/12(日) 23:48:45.86ID:zJqA9jr9
>>953
バイトコードを外部に出力する機能があったら仕様変更の影響が外部に伝播するから
その機能が無くても十分なら無い方が良いってこと
0961デフォルトの名無しさん2015/07/12(日) 23:53:56.51ID:fsP2XOSV
>>959
なるほど。

Rustのリージョナルポインタによるメモリ管理を
GCと間違えたんだろうな。
0962デフォルトの名無しさん2015/07/13(月) 00:22:31.58ID:FwNm1COs
Java ビジネス
C 組み込み
こういう風になっています。

富豪プログラミングが出来る所でCを使う必要性はあまり無い。
0963デフォルトの名無しさん2015/07/13(月) 00:58:02.40ID:QeuWC4Dg
>>961
いやrustにGCがないのは知ってる
0964デフォルトの名無しさん2015/07/13(月) 02:59:06.50ID:6i7dJOia
Rustなんて放り投げてATSやろうぜ!
0965デフォルトの名無しさん2015/07/13(月) 07:50:41.60ID:Ml9NNXKo
>>963
だからRCあるだろうが!
0966デフォルトの名無しさん2015/07/13(月) 08:16:40.56ID:5ZThykAi
毛はキータで相変わらず行間が読めないから、
RSSじゃなくて毛自身がコメ書いてる事を自分でバラす事になるんだな(笑)
0967デフォルトの名無しさん2015/07/13(月) 10:09:26.25ID:gqfr1aBw
Haskell流行って長いけどなんか実用になるような成果でた?
0968デフォルトの名無しさん2015/07/13(月) 10:57:00.94ID:cCxFevQ1
型のついてない成果を型のついた成果に翻訳できる
右から左に流すだけの虚業のように見えるのは仕方ない
0969デフォルトの名無しさん2015/07/13(月) 11:18:47.64ID:Ml9NNXKo
普段から業務に使ってる人間からすると意味不明な問いだ。
0970デフォルトの名無しさん2015/07/13(月) 11:35:14.43ID:UsYUluT9
「プログラム」の何たるかを
丸っきり分かってない一部のバカにとっては、
「一般ユーザが利用可能なパッケージソフト」だけが
「実用的な成果物」なんだろ。
0971デフォルトの名無しさん2015/07/13(月) 12:24:32.84ID:O7974LG1
Haskell がパッケージソフトの作成に向いていないのは何故?
0972デフォルトの名無しさん2015/07/13(月) 13:38:57.82ID:tAtIl5MT
Javaなんて何のメリットもないのに使わざる得ない時があるのが謎
0973デフォルトの名無しさん2015/07/13(月) 13:40:49.84ID:cCxFevQ1
exeの作成は問題ないがdllの作成に向いているのはCしかない
C++でさえdllの作成に向いていない
0974デフォルトの名無しさん2015/07/13(月) 15:07:15.86ID:6ctAAsGS
エンタープライズ系のアプリケーションでは最適解のひとつだから
仕方がない。
>>962 のとおり。
0975デフォルトの名無しさん2015/07/13(月) 18:30:29.23ID:htwOfG4r
C は実用というよりは、もう教養の部類だからね‥
C がわからないようでは、そいつの言うことは信用できない
http://builder.japan.zdnet.com/script/sp_c-programming-language/20370255/
0976デフォルトの名無しさん2015/07/13(月) 19:05:07.18ID:xmoiVj3U
>>538
特定言語を知らん事を根拠にした
レッテリングにはあんまり賛同できないな。
0977デフォルトの名無しさん2015/07/13(月) 19:27:16.94ID:9wI4712X
windows7でhaskellplatform使ってるんですが、
Data.HashTableが入ってないようなので
cabal install hashtablesして、成功したのですが
未だにimport Data.HashTableで失敗します。
何がいけないのでしょうか?
0978デフォルトの名無しさん2015/07/13(月) 19:50:15.17ID:Ml9NNXKo
>>977
>Data.HashTable

Data.HashTableならbaseパッケージに入ってるんで、
hashtables要らないよ。

hashtables使うならData.HashTable.ST.Basicとか
Data.HashTable.ST.Cuckooをimportしないと。

多分どこかでなんか勘違いしてると思う。
0979デフォルトの名無しさん2015/07/13(月) 19:56:02.53ID:Ml9NNXKo
って、base-4.8からData.Hashtableなくなったのか〜
hashtables入れて import Data.HashTabl.IO でいいんじゃないかな。
0980デフォルトの名無しさん2015/07/13(月) 20:11:29.72ID:Ml9NNXKo
いちおうミニマルなサンプル

{-# LANGUAGE ScopedTypeVariables #-}
module Main where
import Data.HashTable.IO as H

type HashTable k v = H.CuckooHashTable k v

main = do
 (h::HashTable Int String) <- fromList [(1,"tata"),(2,"titi"),(3,"toto")]
 insert h 4 "tete"
 l <- toList h
 print l
0981デフォルトの名無しさん2015/07/13(月) 21:15:03.79ID:6helnrAX
ありがとうございます!
動作確認まだ出来てませんが、何とか先に進めそうです!
0982デフォルトの名無しさん2015/07/14(火) 14:33:35.00ID:d1S9qbgP
reduce関数やrange関数やmap関数は、命令型のループでしか書けないことをわかってな奴が居るな。

ノイマン型コンピュータというハードウェアは究極的には命令型でしか動作しない。

関数型の機械語なんて存在しない。

ここ、重要ね。反論はないと思うけど
0983デフォルトの名無しさん2015/07/14(火) 14:35:07.84ID:Bu3+R9wf
>>982
だからなに?
0984デフォルトの名無しさん2015/07/14(火) 15:11:21.95ID:GNUjvMWE
言ってみたかっただけ
0985デフォルトの名無しさん2015/07/14(火) 15:22:11.58ID:RRB/2bWF
>>982
関数型プログラマならBackusのCan programming be liberated from the von Neumann style?くらい読んでるわよ!
バカにしないでくれる!?
0986デフォルトの名無しさん2015/07/14(火) 15:26:34.91ID:lfdsryMV
極限まで高めた並列性が最高性能を引き出す・・・Haskellで書かれたプログラミンは・・神!
一万を超えるメニーコアが・・・Haskellは・・・神!
などと宣伝しすぎたから言われるんじゃないの。

結局速くなってないし。
0987デフォルトの名無しさん2015/07/14(火) 15:57:28.35ID:krmtTpmZ
宣伝には金がかかる
その金を汚いと思うかどうかは自由だが少なくとも金をかけてないやつは潔白だろ
関係ないやつを巻き込むなよ
0988デフォルトの名無しさん2015/07/14(火) 16:16:14.81ID:lfdsryMV
速くなってない・・・騙された・・・Haskell死ね!

と思う人がいても不思議じゃないだろ。

宣伝しすぎたんだよ。
0989デフォルトの名無しさん2015/07/14(火) 16:18:10.13ID:Bu3+R9wf
そんなに宣伝されてたの?
0990デフォルトの名無しさん2015/07/14(火) 16:44:47.28ID:lfdsryMV
そうだねえ。
チラシお断りと貼ってあるのに、ドンドン入れていく感じだね。
Haskellの宣伝がひどいので、コメント欄を無くしたブログも多かったんだよ。

そこまで宣伝したのに、宣伝されたことが全然実現されていないからね。
宣伝では5億並列で一ナノ秒以下を実現とか平気で言ってたからね。
もともと無理だったんだよ。
0991デフォルトの名無しさん2015/07/14(火) 17:50:31.44ID:Bu3+R9wf
>>990
どこの世界のお話ですか? 君の中の平行世界?
0992デフォルトの名無しさん2015/07/14(火) 18:47:54.12ID:JhU5Z9W0
>>982
>reduce関数やrange関数やmap関数は、命令型のループでしか書けないことをわかってな奴が居るな。
>ノイマン型コンピュータというハードウェアは究極的には命令型でしか動作しない。
>関数型の機械語なんて存在しない。
>ここ、重要ね。反論はないと思うけど

データフローマシンのような非ノイマン型アーキテクチャとか長年試作されてきたし
最近もReduceronはじめFPGAでグラフ書換プロセッサが実装されてるわけだが、
なにを根拠に「存在しない」とか言ってるのこのひとは?
0993デフォルトの名無しさん2015/07/14(火) 19:33:26.76ID:X8vX3uS6
次スレ

http://peace.2ch.net/test/read.cgi/tech/1436869629/
0994デフォルトの名無しさん 転載ダメ©2ch.net2015/07/14(火) 19:48:07.17ID:V8pOZFXs
次スレは当スレの約17時間後に立った下記重複スレを、実質Part29として活用しましょう。
当スレのレス数が1000になるまでは当スレを、それ以後は下記スレをご利用ください。
>>993のスレは(残っていれば)実質Part30として使います。

(実質Part29)
関数型プログラミング言語Haskell Part28 [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1428597032/
0995デフォルトの名無しさん2015/07/14(火) 20:33:29.57ID:9t3W2eIV
HaskellとErlangの並列性能のベンチマークあったけどボロ負けでしたよ
https://github.com/worksap-ate/demo/blob/master/Cloud-Haskell.md
0996デフォルトの名無しさん2015/07/15(水) 00:18:57.00ID:jeRkgPlX
趣味でしか触ってなくて、python をやってから haskell に来たのでそれはもう僕からしたら haskell は素敵に速いのです
0997デフォルトの名無しさん2015/07/15(水) 00:51:31.43ID:HWtOn7Kk
オブジェクト指向
アクターモデル
インターネット
圏論
集合論

非ノイマン型はどれですか?
全部ですか?
0998デフォルトの名無しさん2015/07/15(水) 01:10:17.43ID:x7KlsBjr
>>997
そもそもそれらのどこにコンピュータ・アーキテクチャが
含まれているのか教えてくれ。
0999デフォルトの名無しさん2015/07/15(水) 04:12:42.40ID:WlnCwIoX
いまだ役たたず
1000デフォルトの名無しさん2015/07/15(水) 04:18:56.45ID:meQVGR7r
>>1000
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。