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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトのモナドさん2013/08/10(土) NY:AN:NY.AN
関数型プログラミング言語 Haskellについて語るスレです。

前スレ: 関数型プログラミング言語Haskell Part22
http://toro.2ch.net/test/read.cgi/tech/1364009659/

haskell.org
http://www.haskell.org/

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

過去ログ (10〜)
Part21 ttp://toro.2ch.net/test/read.cgi/tech/1358702176/
Part20 ttp://toro.2ch.net/test/read.cgi/tech/1350428908/
Part19 ttp://toro.2ch.net/test/read.cgi/tech/1340760070/
Part18 ttp://toro.2ch.net/test/read.cgi/tech/1331902463/
Part17 ttp://toro.2ch.net/test/read.cgi/tech/1325510368/
Part16 ttp://toro.2ch.net/test/read.cgi/tech/1317958045/
Part15 ttp://hibari.2ch.net/test/read.cgi/tech/1310199414/
Part14 ttp://hibari.2ch.net/test/read.cgi/tech/1299385928/
Part13 ttp://hibari.2ch.net/test/read.cgi/tech/1286706874/
Part12 ttp://hibari.2ch.net/test/read.cgi/tech/1272536128/
Part11 ttp://pc12.2ch.net/test/read.cgi/tech/1252382593/
Part10 ttp://pc12.2ch.net/test/read.cgi/tech/1231861873/
0951デフォルトの名無しさん2013/10/21(月) 06:59:00.80
>>950
ハングアップしたりして
0952デフォルトの名無しさん2013/10/21(月) 07:49:23.03
リストの要素が全て同じ値なら True、ひとつでも違う値があれば False を返す関数って、
標準ライブラリの中にありましたっけ?

f :: [a] -> Bool

なければ作りますが、できるだけ標準ライブラリの中のものを使う方が良いと思うので。
0953デフォルトの名無しさん2013/10/21(月) 07:51:24.43
all id
0954デフォルトの名無しさん2013/10/21(月) 08:25:55.79
f :: Eq a=> [a] -> Bool
f [] = True
f ls = replicate (length ls) (head ls) == ls

これのこと?
0955デフォルトの名無しさん2013/10/21(月) 08:50:09.62
(flip all <*> ((==) . head))

これか?
0956デフォルトの名無しさん2013/10/21(月) 09:03:12.45
200 MHz
64 MB

text-0.11.3.1
通常ビルドプロファイル版ビルド完了
最新PCだと何分で終わるか知りたいワロタwwwwww
09579522013/10/21(月) 12:38:00.51
>>953
>>954
>>955

この3つのレスから、標準ライブラリには存在しないと判断しました。
自分で作ることにします。
0958デフォルトの名無しさん2013/10/21(月) 12:51:22.91
>>956
楽しそうで何より
0959デフォルトの名無しさん2013/10/21(月) 13:08:38.77
できるだけ標準ライブラリを使いたいって言うから
頑張って実装したのに
0960デフォルトの名無しさん2013/10/21(月) 13:51:18.80
コンパイル時間ならhaskell-src-metaもなかなか凄い
0961デフォルトの名無しさん2013/10/21(月) 17:08:48.29
>>956
distcc出来ねえのか?wwwwww

私はGentooでHaskell-platformをインストールするのに1時間くらいかなあ
0962デフォルトの名無しさん2013/10/21(月) 21:05:04.77
>>952 nub
0963デフォルトの名無しさん2013/10/22(火) 00:51:45.36
>>952
import Data.Set
(1==).size.fromList

ところで、nubって辞書ひくと「要点,核心」「小さなかたまり」らしくて、
まぁなるほどとは思うんだけど、数学用語としての意味とかあるの?
0964デフォルトの名無しさん2013/10/22(火) 09:30:19.88
Hoogle先生も
(The name nub means `essence'.)
とおっしゃってるな
0965デフォルトの名無しさん2013/10/22(火) 10:24:55.49
順序集合から集合への写像をessenceと言い張るのは
集合を本質と信奉する原理主義者が標準ライブラリ作者の中にいるという事
0966デフォルトの名無しさん2013/10/22(火) 13:06:05.90
なにそれこわい
もしかして、モサド?
0967デフォルトの名無しさん2013/10/22(火) 22:46:04.60
>>193 が紹介してるリンク先をゆっくり読んでるのですが、
理解のために確認したいことがあります。

<Laws for sum types> のところで Add Void a === a の法則が出ててきます。
これが正しいことをfrom関数とto関数が作れることで証明したいのですが、
下記のようなもので良いのでしょうか。

from :: Add Void a -> a
from (AddL _) = undefined
from (AddR x) = x

to :: a -> Add Void a
to x = AddR x

これなら AddR a 型の方を使っている限り to (from a) == a と from (to b) == b
の同値性は保たれています。
一方 Void 型のとり得る値がないので AddL Void 型のとり得る値も存在しません。

こういう理解で良いでしょうか。
0968デフォルトの名無しさん2013/10/23(水) 07:30:49.54
> to (from a) == a と from (to b) == b
Haskellだとこれが証明できないんだよなぁ
しかもundefinedがあるから() -> Voidが証明できちゃうし
まずAgdaでやってその一部がHaskellでもできるよぐらいでいいんじゃないかな
0969デフォルトの名無しさん2013/10/23(水) 07:58:49.25
HaskellによるAndroid NDKアプリ作成デモが公開される
http://developers.slashdot.jp/story/13/10/22/0446238/Haskell%E3%81%AB%E3%82%88%E3%82%8BAndroid-NDK%E3%82%A2%E3%83%97%E3%83%AA%E4%BD%9C%E6%88%90%E3%83%87%E3%83%A2%E3%81%8C%E5%85%AC%E9%96%8B%E3%81%95%E3%82%8C%E3%82%8B
0970デフォルトの名無しさん2013/10/23(水) 08:54:32.71
Haskell製のdat取得システムが早速批評されてるな
これから叩く人沢山出てきそう
一般公開することでそれで俺がもっとHaskellらしい書き方で作ってやるぜみたいな人を発掘するっていうのも目的の一つなんだろうか
0971デフォルトの名無しさん2013/10/23(水) 10:28:49.11
>>970
Haskell製のdat取得システム Rokka
https://github.com/Cipherwraith/Rokka

Haskell自体についての批評はされてないと思うけどなぁ
Rokkaのスレにはひろゆきのレスを意図的に誤訳してHaskell批判にすり替えてるアホがいるけど、
それ以外にHaskellについて批評されたレスを見たことはない。
http://pele.bbspink.com/test/read.cgi/erobbs/1379086553/782-783
0972デフォルトの名無しさん2013/10/23(水) 16:46:06.00
ひろゆきサワーグレープセオリーwwwwwwww
ひろゆきの知能じゃハスケルは手に余るのでござろうwwwwwwww
0973デフォルトの名無しさん2013/10/25(金) 01:22:27.75
>>Haskell製のdat取得システム
こんなのスクリプト言語でもできるじゃん
何?ドーナツの輪はなんであるのか?見たいな事をするときに使うとかほざいてたわりに
実用的なことで使われてるじゃん
クズだな
0974デフォルトの名無しさん2013/10/25(金) 03:37:20.48
卒研でHaskellで2ch用CUIブラウザ作った俺からすれば、何を今さら…
shift_jisの日本語処理は諦めたからMSのコマンドプロンプトで実行すると文字が見えないが
0975デフォルトの名無しさん2013/10/25(金) 03:43:18.75
MD5の情報ファイルを読み込もうと思う
アットパーセックとかいうのを入れとけばいいんだろ?
0976デフォルトの名無しさん2013/10/25(金) 04:05:21.92
>>974
それ、もうすこしすると、ちょっとした修正で使えるようになるんじゃない?
0977デフォルトの名無しさん2013/10/25(金) 07:58:14.56
その卒研の新規性を知りたい
0978デフォルトの名無しさん2013/10/25(金) 08:03:23.74
卒研に新規性を求めてはいけない(懇願)
0979デフォルトの名無しさん2013/10/25(金) 08:17:19.38
卒研って研究室の教授はまるで見てないらしいな
まあ学部生なんかどうでもいいか
0980デフォルトの名無しさん2013/10/25(金) 08:31:09.54
おいおまえら、ここは2chだぞひろゆきの立場も考えろ
そうーHaskellで書いたのー新規性ちゅごいですねー
0981デフォルトの名無しさん2013/10/25(金) 09:26:55.20
2ch過去ログサイトunkarもGo言語で書かれているし、
マイナー言語を使って「俺カコイイ」したがる人は一定数いる

さすがに卒研でShift-JISも処理できない専ブラ作る人は別の意味でレベルが違うがなw
0982デフォルトの名無しさん2013/10/25(金) 09:47:35.43
学部3年の講義の課題でVMで動くJITコンパイラやGCライブラリを作る所も多いというのにそんな卒研で恥ずかしくないの?
0983デフォルトの名無しさん2013/10/25(金) 10:00:19.09
Shift-JISも処理できない専ブラで卒研通っちゃうとか、
そこらへんのフリーソフトの作者は誰でも卒研通っちまうだろう
0984デフォルトの名無しさん2013/10/25(金) 10:16:09.46
UIやアーキテクチャが論点かもしれないだろうし
0985デフォルトの名無しさん2013/10/25(金) 10:19:44.72
そこらへんのフリーソフトの作者がソフト自体やブログしか発表しないから駄目なだけで
きっちり論文にまとめられれば卒論・修論レベルになるのは普通にありそうだが
0986デフォルトの名無しさん2013/10/25(金) 11:02:40.08
NTTデータがリバースエンジニアリングに使うらしいけど
その顛末の方を知りたいな
0987デフォルトの名無しさん2013/10/25(金) 13:49:45.92
>>986
リバースエンジニアリングにHaskellを使う?
0988デフォルトの名無しさん2013/10/25(金) 15:39:39.75
JCLでCOBOLなレガシーシステムをマイグレーションするシステムをHaskellで作りました、
みたいな話でしょ。なんか聞いた記憶では。
0989デフォルトの名無しさん2013/10/25(金) 16:59:39.23
>>969
Haskellでアンドロイドアプリ作れるようになるの?しゅごい!
0990デフォルトの名無しさん2013/10/25(金) 17:24:47.91
>>989
AndroidはJavaのAPIが要だからfregeのが楽だぜ
ajhcは純Haskellで実用性重視という点で期待はできるが辛い
0991デフォルトの名無しさん2013/10/25(金) 21:55:27.75
関数型プログラミング言語Haskell Part24
http://toro.2ch.net/test/read.cgi/tech/1382705669/
0992デフォルトの名無しさん2013/10/25(金) 22:16:14.71
次スレも建ったことだし、埋めるか・・・
0993デフォルトの名無しさん2013/10/25(金) 23:29:01.96
Haskellスレにも穴があるんだよな…
0994デフォルトの名無しさん2013/10/26(土) 06:36:50.22
はぁ ♪
すける乳首に、
首ったけ♪
0995デフォルトの名無しさん2013/10/26(土) 10:23:46.29
埋めるよー
0996デフォルトの名無しさん2013/10/26(土) 10:25:38.67
Haskellっぽく埋めようぜ
0997デフォルトの名無しさん2013/10/26(土) 10:57:31.48
fregeってJavaのクラスライブラリ使うときに一々メソッドについて宣言しなくちゃならないんだろ?
http://fits.hatenablog.com/entry/2013/09/01/190502
多くのJavaクラスを使う必要が生じたら手間が膨大になって詰むだろ
0998デフォルトの名無しさん2013/10/26(土) 11:09:43.16
GHCでFFI使う時みたいに自動生成したらええやん
0999デフォルトの名無しさん2013/10/26(土) 12:23:31.03
>>997
実際やってみりゃわかるけど
ほぼ固定にできるから自分の使いたいように自動生成できるで
1000デフォルトの名無しさん2013/10/26(土) 12:25:48.89
_|_
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。