関数型プログラミング言語 Haskell について語るスレです。
haskell.org (公式サイト)
https://www.haskell.org/
前スレ
関数型プログラミング言語Haskell Part30
http://mevius.2ch.net/test/read.cgi/tech/1484491434/
探検
関数型プログラミング言語Haskell Part31©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2017/09/27(水) 02:33:08.70ID:2XAqPuH2
521デフォルトの名無しさん
2018/02/03(土) 00:14:03.29ID:st4XedSX このコード中に isShow というのがある
https://hackage.haskell.org/package/fitspec-0.4.4/docs/src/Test-FitSpec-Derive.html
https://hackage.haskell.org/package/fitspec-0.4.4/docs/src/Test-FitSpec-Derive.html
522518
2018/02/03(土) 00:59:05.30ID:z/YnSxMM AdvancedOverlapは外でShowのインスタンスが増えた時に対応できないです。
isInstanceOf ! そういうのがあるんですか。調べてみます。
これを通して実現したい機能は、頭部ではなく型制約でオーバーロードしたいというもの。
具体的にはdiagramsパッケージの元で作ったダイアグラムを画像化したい。
同じ関数で Show a も画像化したい。
一見簡単そうなんですけど、普通に合成したダイアグラムの頭部に具体的な型がつかないので、
通常の型クラスのインスタンス化でオーバーロードできない。
instance Show a => Hoo a where ...
instance (a ~ Diagram B) => Hoo a where ...
-- コンパイルエラー!
isInstanceOf ! そういうのがあるんですか。調べてみます。
これを通して実現したい機能は、頭部ではなく型制約でオーバーロードしたいというもの。
具体的にはdiagramsパッケージの元で作ったダイアグラムを画像化したい。
同じ関数で Show a も画像化したい。
一見簡単そうなんですけど、普通に合成したダイアグラムの頭部に具体的な型がつかないので、
通常の型クラスのインスタンス化でオーバーロードできない。
instance Show a => Hoo a where ...
instance (a ~ Diagram B) => Hoo a where ...
-- コンパイルエラー!
523デフォルトの名無しさん
2018/02/03(土) 22:01:25.34ID:GVlapN64 すみません、
Huttonの「プログラミングHaskell」で
学習をしているのですが
練習問題の解答が
著者や役者のサイト等を見ても見当たらなく
もし掲載のページを知ってたら教えて下さい。
Huttonの「プログラミングHaskell」で
学習をしているのですが
練習問題の解答が
著者や役者のサイト等を見ても見当たらなく
もし掲載のページを知ってたら教えて下さい。
524デフォルトの名無しさん
2018/02/04(日) 04:24:30.53ID:fRCSu2fr プログラミングHaskell 訳者によるサポートページ
http://www.mew.org/~kazu/doc/book/haskell.html
> 練習問題の答は、原著者のサポートページにあります。
http://www.mew.org/~kazu/doc/book/haskell.html
> 練習問題の答は、原著者のサポートページにあります。
525523
2018/02/04(日) 12:22:57.81ID:VtcsF5YK526デフォルトの名無しさん
2018/02/04(日) 14:14:55.60ID:+WAJGnPT コード例とかならここにあるみたいだけど
http://www.cs.nott.ac.uk/~pszgmh/book-old.html
http://www.cs.nott.ac.uk/~pszgmh/book-old.html
527デフォルトの名無しさん
2018/02/04(日) 19:26:34.09ID:VtcsF5YK528デフォルトの名無しさん
2018/02/22(木) 01:33:31.18ID:rShSr6qS class Hoo a
x :: Hoo a => a -> a
y :: (Hoo a => a) -> a
x = undefined
y = undefined
-- f :: a -> a
-- f a = x a -- コンパイル通らない
g :: a -> a
g a = y a -- コンパイル通る。なんでだ
-- h = y :: a -> a -- 通らない
x :: Hoo a => a -> a
y :: (Hoo a => a) -> a
x = undefined
y = undefined
-- f :: a -> a
-- f a = x a -- コンパイル通らない
g :: a -> a
g a = y a -- コンパイル通る。なんでだ
-- h = y :: a -> a -- 通らない
529526
2018/02/23(金) 11:53:44.22ID:QhNOj82G ghcを8.0.2 から 8.2.2に上げた。
h = y :: a -> a -- 通るようになった
h = y :: a -> a -- 通るようになった
530デフォルトの名無しさん
2018/03/05(月) 00:25:18.18ID:rygpwPFq このコンテストに参加してるHaskellerたったの6人と少ないのでチミたちも参加したまえ
https://www.codingame.com/leaderboards/challenge/botters-of-the-galaxy/global?column=slanguage&value=Haskell
https://www.codingame.com/leaderboards/challenge/botters-of-the-galaxy/global?column=slanguage&value=Haskell
531デフォルトの名無しさん
2018/03/08(木) 07:40:29.03ID:NOpOgpfl emacsでSymbols function definition is void: haskell-debug
てエラー文が出ちゃうんですが、原因わかる人いませんか、、
正確にはspacemacsのinteroです、、
てエラー文が出ちゃうんですが、原因わかる人いませんか、、
正確にはspacemacsのinteroです、、
532デフォルトの名無しさん
2018/03/12(月) 03:18:18.08ID:IKn+w3cq tanakhがイキリー田中って呼ばれているみたいだけどイキリーってどういう意味?
550番組の途中ですがアフィサイトへの転載は禁止です (ワンミングク MMda-oDZj)2018/03/11(日) 22:51:59.49ID:2Wu75Uw+M
pezyスパコン社員の
イキリー田中さん曰わく
Hideyuki Tanaka
@tanakh
最近ずっと国会で、国会じゃなくて裁判所でやるようなことばっかりやってないすか。もう逆に裁判所で政策議論した方が三権分立的にいいんじゃないすか(適当)
午前0:06 · 2018年3月10日
https://twitter.com/tanakh/status/972126503352676352
550番組の途中ですがアフィサイトへの転載は禁止です (ワンミングク MMda-oDZj)2018/03/11(日) 22:51:59.49ID:2Wu75Uw+M
pezyスパコン社員の
イキリー田中さん曰わく
Hideyuki Tanaka
@tanakh
最近ずっと国会で、国会じゃなくて裁判所でやるようなことばっかりやってないすか。もう逆に裁判所で政策議論した方が三権分立的にいいんじゃないすか(適当)
午前0:06 · 2018年3月10日
https://twitter.com/tanakh/status/972126503352676352
533デフォルトの名無しさん
2018/03/12(月) 03:22:34.32ID:IdW8RVi3 裁判所でもこんなあほなことやらん
534デフォルトの名無しさん
2018/03/12(月) 06:27:09.63ID:uoSNo/WD スレチの相手するなバカ
535デフォルトの名無しさん
2018/03/12(月) 07:14:31.89ID:IKn+w3cq Haskellで一番売れている本の訳者様だぞ
536デフォルトの名無しさん
2018/03/12(月) 11:28:56.92ID:67958OQ2 著者じゃなく訳者程度ってのをよく示しているのでは
537デフォルトの名無しさん
2018/03/12(月) 12:35:28.53ID:jLS1yZxx 売上データを証拠として提出する発想が裁判所だな
裁判の真似事をやってるのは統計学者だ
裁判の真似事をやってるのは統計学者だ
538デフォルトの名無しさん
2018/03/12(月) 12:37:27.36ID:Z6lm3+Nm 過疎を理由にスレチを正当化してはいけない
539デフォルトの名無しさん
2018/03/12(月) 17:16:39.91 最近毛の壁みないな
540デフォルトの名無しさん
2018/04/03(火) 13:16:07.09ID:CL00mLmV モナドの中での条件分岐ってはどうやればいいでしょうか
m0 >>= m1 arg1 【 >>= m2 arg2 】 >>= mN argN
【 】のブロックを条件に応じて呼び出すかどうかを制御したいです
whenだと値が取り出せない
m0 >>= m1 arg1 【 >>= m2 arg2 】 >>= mN argN
【 】のブロックを条件に応じて呼び出すかどうかを制御したいです
whenだと値が取り出せない
541デフォルトの名無しさん
2018/04/03(火) 13:25:16.21ID:CL00mLmV 自己解決しました
普通にif使えるんですね
普通にif使えるんですね
542デフォルトの名無しさん
2018/04/03(火) 16:36:19.17ID:bMx8P0pN 遅延評価って面白いね
ぱっと見挙動がわかりにくいのと使い所がみつけづらいのが難点だけど
ぱっと見挙動がわかりにくいのと使い所がみつけづらいのが難点だけど
543デフォルトの名無しさん
2018/04/03(火) 20:15:57.85ID:BMbwb1La544デフォルトの名無しさん
2018/04/13(金) 01:52:39.63ID:UkwKelSp purescriptをめっちゃ強化してクロスコンパイル&ネイティブコンパイル&jsコンパイル&wasmコンパイル可能でさらにビルド速度とGC性能をocaml並に出来ませんか😱
545デフォルトの名無しさん
2018/04/17(火) 11:35:04.71ID:qNbsUSYn もし自作の型が Generic クラスのインスタンスなら、
その型を Num クラスのインスタンスにするのは容易でボイラープレートを書くだけだ、
という話を聞いたのですが、どういうことでしょうか。
その型を Num クラスのインスタンスにするのは容易でボイラープレートを書くだけだ、
という話を聞いたのですが、どういうことでしょうか。
546デフォルトの名無しさん
2018/04/17(火) 15:15:39.87ID:xGORc44D Genericは代数的データ型の代数的構造に対して型クラスを使えるようにする仕組みという感じだから
例えば自然数の型クラスがあったらdata Nat = Zero | Succ Natっぽい型をインスタンスにできる(ようにできる)
data List a = Nil | Cons (List a)とかもList a=Natでいけそうだけど詳しいことは知らない
でNumは整数の型クラスだから符号情報を持たせた自然数っぽい型で考えればいいと思う
例えば自然数の型クラスがあったらdata Nat = Zero | Succ Natっぽい型をインスタンスにできる(ようにできる)
data List a = Nil | Cons (List a)とかもList a=Natでいけそうだけど詳しいことは知らない
でNumは整数の型クラスだから符号情報を持たせた自然数っぽい型で考えればいいと思う
547デフォルトの名無しさん
2018/04/18(水) 21:28:14.85ID:BYjTZdeC FRPのBehaviorとEventの構成ってなんか恣意的なのかなって印象で手付かずだったけど、
型がそれぞれ関数と直積で、カリーハワード考えるとForAllとExistsですよて説明見たら、
何に効いてくるのかまだよく分からんけど、真面目にやろうかなと思った。
型がそれぞれ関数と直積で、カリーハワード考えるとForAllとExistsですよて説明見たら、
何に効いてくるのかまだよく分からんけど、真面目にやろうかなと思った。
548デフォルトの名無しさん
2018/04/20(金) 15:57:50.03ID:0HOWAbgI Yesod のオライリー本ってまだ翻訳されてないの
549デフォルトの名無しさん
2018/04/20(金) 19:31:13.34ID:wBOVlPyY print "日本語"
で日本語を表示するにはどうしたらいいですか?
で日本語を表示するにはどうしたらいいですか?
550デフォルトの名無しさん
2018/04/20(金) 20:11:46.72ID:kdAO2jaP551デフォルトの名無しさん
2018/04/20(金) 20:49:36.18ID:4Eu7Barh できないんですね
わかりました
わかりました
552デフォルトの名無しさん
2018/04/20(金) 21:00:49.10ID:0HOWAbgI できますよ
553デフォルトの名無しさん
2018/04/26(木) 12:38:49.74ID:X3BRJjDS 公開したくない自作データ型を引数に持つ自作関数をhspecでテストする方法を探しています。
自作のモジュールは2つあり、ひとつはテストしたい関数 g がある ModSub、もうひとつは ModSub を使用する ModMain です。
-----[ ModMain.hs ]-----
module ModMain where
import ExtLib (calc) -- 外部ライブラリ
import ModSub
f = calc g 他のいくつかの引数 -- 他にも関数を呼び複雑な計算をする
-----[ ModSub.hs ]-----
module ModSub (g) where
import Control.Applicative
import ExtLib (SomethingClass) -- 外部ライブラリ
data D = D Bool Int
instance SomethingClass D where
someFunc = pure D <*> makeBool 適当 <*> makeInt 適当
g (D b i) = 何か
ExtLib の calc 関数は Something クラスのインスタンス型を引数に持つ関数を取り、その具体的な型は知る必要がありません。
私はアプリケーションの作成に当たって公開しなても動く設計のものは公開しないスタンスです。
なので、ModSub モジュールは D 型のコンストラクタを公開していません。
このような状況ではテストモジュールからも D 型が使えずテストできないため、私は2つの選択肢を考えました。
ひとつは、諦めてスタンスを曲げて D 型のコンストラクタを公開する。
もうひとつは、D 型を別のモジュール InnerModSub 内に定義して公開し、ModSub モジュールとテストモジュールは InnerModSub モジュールを使う。
そして、ModMain モジュールや他のモジュールは決して InnerModSub モジュールを使わないようルールを設ける。
他に何か良い方法はあるでしょうか。
自作のモジュールは2つあり、ひとつはテストしたい関数 g がある ModSub、もうひとつは ModSub を使用する ModMain です。
-----[ ModMain.hs ]-----
module ModMain where
import ExtLib (calc) -- 外部ライブラリ
import ModSub
f = calc g 他のいくつかの引数 -- 他にも関数を呼び複雑な計算をする
-----[ ModSub.hs ]-----
module ModSub (g) where
import Control.Applicative
import ExtLib (SomethingClass) -- 外部ライブラリ
data D = D Bool Int
instance SomethingClass D where
someFunc = pure D <*> makeBool 適当 <*> makeInt 適当
g (D b i) = 何か
ExtLib の calc 関数は Something クラスのインスタンス型を引数に持つ関数を取り、その具体的な型は知る必要がありません。
私はアプリケーションの作成に当たって公開しなても動く設計のものは公開しないスタンスです。
なので、ModSub モジュールは D 型のコンストラクタを公開していません。
このような状況ではテストモジュールからも D 型が使えずテストできないため、私は2つの選択肢を考えました。
ひとつは、諦めてスタンスを曲げて D 型のコンストラクタを公開する。
もうひとつは、D 型を別のモジュール InnerModSub 内に定義して公開し、ModSub モジュールとテストモジュールは InnerModSub モジュールを使う。
そして、ModMain モジュールや他のモジュールは決して InnerModSub モジュールを使わないようルールを設ける。
他に何か良い方法はあるでしょうか。
554デフォルトの名無しさん
2018/04/26(木) 22:19:07.30ID:XXRDrUvo >>553
ふたつめの選択肢が定番の解決策っぽい。Internalディレクトリに実装をまとめといて上層でre-export。
https://disarli.me/blog/haskell/testing/2017/08/21/testing-non-exported-functions-with-haskell.html
ふたつめの選択肢が定番の解決策っぽい。Internalディレクトリに実装をまとめといて上層でre-export。
https://disarli.me/blog/haskell/testing/2017/08/21/testing-non-exported-functions-with-haskell.html
555デフォルトの名無しさん
2018/04/27(金) 07:51:16.88ID:5zUTZf4m556デフォルトの名無しさん
2018/05/03(木) 01:36:32.06ID:kRKy+vnx ようやくwin10 wslでghcが遅かった件直った感じかな
557デフォルトの名無しさん
2018/05/04(金) 07:55:06.89ID:losdahgV558デフォルトの名無しさん
2018/05/04(金) 08:58:01.41ID:eKrFMwvm 日本人の「モナド萌え〜」Tシャツはないの?
559デフォルトの名無しさん
2018/05/06(日) 09:54:40.96ID:KRn6cuFA モナまでは可愛いが、油断してるとドがついて怖い感じ。
560デフォルトの名無しさん
2018/05/06(日) 10:12:01.34ID:KRn6cuFA Reflexやってる人います?Stackと親和的じゃないから結局諦めちゃった。
Threepenny-GUIはシンプルで良いね。Threepennyで作ったのをiOSやAndroidに移植できるんかな。
Threepenny-GUIはシンプルで良いね。Threepennyで作ったのをiOSやAndroidに移植できるんかな。
561デフォルトの名無しさん
2018/05/09(水) 03:57:47.41ID:yAd9yFdW >>557
三拍子揃っててだめだった
三拍子揃っててだめだった
562デフォルトの名無しさん
2018/05/16(水) 06:39:11.37ID:KuTIShdq intellijにhaskellいれようとしてたらいくらやってもだめだったの
よーくみたらWindow Defenderがじゃましてた
はらたつー
よーくみたらWindow Defenderがじゃましてた
はらたつー
563デフォルトの名無しさん
2018/05/16(水) 14:15:35.67ID:86oQSZWQ MS「永続性はウイルス」
564デフォルトの名無しさん
2018/05/20(日) 16:01:44.58ID:h2BQfP5S random パッケージの System.Random モジュールの split 関数は、
新しい RandomGen クラスのインスタンスをなぜ2つも生成するのでしょうか。
2つのインスタンスが要るのなら、引数の1つ目があるのだから、
新たに生成するのも1つで十分だと思うのです。
もっと必要なら、この処理を繰り返せばいいのでは?
私は何か勘違いをしているのでしょうか。
新しい RandomGen クラスのインスタンスをなぜ2つも生成するのでしょうか。
2つのインスタンスが要るのなら、引数の1つ目があるのだから、
新たに生成するのも1つで十分だと思うのです。
もっと必要なら、この処理を繰り返せばいいのでは?
私は何か勘違いをしているのでしょうか。
565デフォルトの名無しさん
2018/05/20(日) 17:35:56.32ID:FfB1JAMU そもそもnextだってgetValとnextGenに分けてもいいけどね
まあ基本的には設計とか効率の問題なんじゃない?
それに戻り値が一つのsplitは引数の方がそのままもう一回splitされないように注意する必要があるし
まあ基本的には設計とか効率の問題なんじゃない?
それに戻り値が一つのsplitは引数の方がそのままもう一回splitされないように注意する必要があるし
566デフォルトの名無しさん
2018/05/23(水) 19:45:00.92ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
P0GWF
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
P0GWF
567デフォルトの名無しさん
2018/05/24(木) 10:55:19.93ID:cPlRxlDn 567
568デフォルトの名無しさん
2018/05/25(金) 21:11:33.96ID:cptzVN/K エスパー来る
ところで、関数型言語のこの世の春は来ますか?
ところで、関数型言語のこの世の春は来ますか?
569デフォルトの名無しさん
2018/05/26(土) 04:33:44.12ID:d8ZkW1Ij GHCのインストール先の変え方教えて
ちなWindows
Cドライブに入れたくない
ちなWindows
Cドライブに入れたくない
570デフォルトの名無しさん
2018/05/26(土) 04:40:40.86ID:d8ZkW1Ij Stackのコンフィグをイジる?
571デフォルトの名無しさん
2018/05/31(木) 00:34:57.11ID:zA1zBE3e haskellの練習してる初心者なんですが2進数の文字列表現を10進数の整数に変換する処理ってこんな感じで大丈夫でしょうか? https://csacademy.com/code/CsGalG5X/
572デフォルトの名無しさん
2018/05/31(木) 01:09:51.63ID:CXLwfWM5 単に数値にしてるだけであって、10進数に変換して表示してるのはprintさんでしょ?
573デフォルトの名無しさん
2018/05/31(木) 08:07:17.08ID:Dl0sFDMW Showが忖度したのであってInteger大臣が文字列化を指示したわけではない
574デフォルトの名無しさん
2018/06/01(金) 00:33:16.96ID:vzHrz6jW 10進数への変換も自前で実装しろって話の流れ?
575デフォルトの名無しさん
2018/06/01(金) 01:50:05.31ID:0E17r036 >>571が何を目指すのかによる。
576デフォルトの名無しさん
2018/06/05(火) 20:09:41.67ID:pRSj0ubW どうでもいいけど、それぞれのGHC言語拡張の名前で単数形と複数形の違いがいまいち分からん。
うろ覚えで複数形で書いてコンパイルエラーになったり。
命名規則とかあるんかな?
うろ覚えで複数形で書いてコンパイルエラーになったり。
命名規則とかあるんかな?
577デフォルトの名無しさん
2018/06/06(水) 07:44:03.32ID:azXcBu8b 使った中じゃ英語で説明するのに複数形が使われるであろうものなら
大体複数形だったと思うけど
カタカナ語のノリでやってるから割と間違う
大体複数形だったと思うけど
カタカナ語のノリでやってるから割と間違う
578デフォルトの名無しさん
2018/06/13(水) 21:49:00.45ID:i4vh63zU すごいH本に煽られるとまじでムカつくんだけど
579デフォルトの名無しさん
2018/06/17(日) 22:53:19.15ID:kUxbeqDh すごいHだから勃起botをリツイートしてるのか
580デフォルトの名無しさん
2018/06/18(月) 09:11:06.80ID:QNagypIW おい!あの岡部健(毛の壁)がgithubで活動を再開してるぞ!
581デフォルトの名無しさん
2018/06/18(月) 18:39:20.54ID:MmynirXE IT芸人が新作コンテンツ提供開始か
>>580
本当ですか!ぜひお会いしたい!
本当ですか!ぜひお会いしたい!
583デフォルトの名無しさん
2018/06/27(水) 12:31:39.52ID:+XG/5Wm3 今時コンパイルとか流行らないよ
サクッと書けても実行までが面倒だと普及しない
もっと標準ライブラリをヘビィにしてPython化するしか生き残りの道はない
サクッと書けても実行までが面倒だと普及しない
もっと標準ライブラリをヘビィにしてPython化するしか生き残りの道はない
584デフォルトの名無しさん
2018/06/27(水) 14:44:28.75ID:rnjnLILH 同意だ。Turtle使ってシェバンにstackコマンドライン書いて、
Haskellでシェルスクリプトするというのがあったが正気の沙汰とは思えない。
Haskellでシェルスクリプトするというのがあったが正気の沙汰とは思えない。
585デフォルトの名無しさん
2018/06/27(水) 19:48:00.92ID:luhHLeJ1 むしろ今はコンパイル全盛期でしょ
rubyとか下火だし
rubyとか下火だし
586デフォルトの名無しさん
2018/06/27(水) 22:56:56.37ID:kWgGKFVN どれだけ簡潔に記述出来ても
短いプログラムでは実行するまでの手間の割合が大きくなるから
pythonでいいやってなる
短いプログラムでは実行するまでの手間の割合が大きくなるから
pythonでいいやってなる
587デフォルトの名無しさん
2018/06/28(木) 05:41:11.51ID:F07eHa3U 対話環境使わんの?短いプログラムてのがどんな状況か知らんからなんとも。
588デフォルトの名無しさん
2018/06/28(木) 07:28:52.90ID:BPlVOF4a Haskellで簡潔に書けるという特殊能力を持っておきながら
破壊的で動的型付けな言語を選ばなければいけないという悲劇
破壊的で動的型付けな言語を選ばなければいけないという悲劇
589デフォルトの名無しさん
2018/06/28(木) 15:27:57.03ID:5C2saF7L なんで宗教みたいに二者択一になるの
要所要所で使い分ければいいだけでしょ
要所要所で使い分ければいいだけでしょ
590デフォルトの名無しさん
2018/06/28(木) 16:47:06.64ID:aKd05JxM たかだか数秒のことで簡潔さを失いたいとは思わないね
591デフォルトの名無しさん
2018/06/28(木) 16:57:33.76ID:rY43/kt0 バンパターンとかseqとか使いまくるからあんま簡潔に書けないわ
592デフォルトの名無しさん
2018/06/28(木) 17:36:24.62ID:kdV1Odt0 簡単なプログラムだと
このifでこれとこれ書き換えてさらにネストしたifでこれとこれを書き換えて
とかやっちゃうな
haskellでもStateモナドとか使えばいいんだろうけど
このifでこれとこれ書き換えてさらにネストしたifでこれとこれを書き換えて
とかやっちゃうな
haskellでもStateモナドとか使えばいいんだろうけど
593デフォルトの名無しさん
2018/06/28(木) 18:02:30.70ID:rjCVmVg9 文字列を直接操作したければ動的型でいい
直接操作することなくShowとReadで処理できるならHaskellの型は無駄ではない
直接操作することなくShowとReadで処理できるならHaskellの型は無駄ではない
594デフォルトの名無しさん
2018/06/28(木) 20:20:52.20ID:8bPXL4i4 より真理に近い言語以外使いたくないのだ
595デフォルトの名無しさん
2018/06/28(木) 20:47:06.63ID:5C2saF7L 込み入った評価戦略で脳ミソ使わされるのが真理とも思えんがw
596デフォルトの名無しさん
2018/06/28(木) 20:59:45.19ID:rY43/kt0 量子コンピュータが実用化されればへーきへーき
597デフォルトの名無しさん
2018/06/28(木) 22:01:03.00ID:GLp7lVXW 文字列入力を要求してその文字列を含むファイルを検索して見つかったらエディタで開く、
的な、コマンドラインからさっと使いたいので実行までが重いと困るけど、
cabalプロジェクトにする程のもんでもない規模のやつ
的な、コマンドラインからさっと使いたいので実行までが重いと困るけど、
cabalプロジェクトにする程のもんでもない規模のやつ
598デフォルトの名無しさん
2018/06/28(木) 22:04:23.65ID:GLp7lVXW if ってあんま使ったことない。関数のガードとcase、あとData.Bool.bool
599デフォルトの名無しさん
2018/06/29(金) 18:53:31.79 Yesodって失敗したの?
600デフォルトの名無しさん
2018/07/02(月) 22:40:55.64ID:Q8zb4uVa Haskellは"関数型だから"コードが短く生産性が高いと聞いたのに
関数型ではないPythonの方がコードが短く書けると知った時の絶望感
関数型ではないPythonの方がコードが短く書けると知った時の絶望感
601デフォルトの名無しさん
2018/07/02(月) 22:42:40.97ID:zz3F/ohp そうなのか?
602デフォルトの名無しさん
2018/07/03(火) 12:03:15.48ID:j/SH2c2P 関数型ではないHaskellがあるってことだろ
男の娘みたいなやつが
男の娘みたいなやつが
603デフォルトの名無しさん
2018/07/03(火) 12:11:44.26ID:jJAl/nPq 関数型こそ邪悪なシンタックスに頼らない無敵の流派なのだ
ただし両方使う方が強い
ただし両方使う方が強い
604デフォルトの名無しさん
2018/07/03(火) 12:22:05.97ID:vylnwloM 最強はF#で決まりがこのスレの結論です
605デフォルトの名無しさん
2018/07/03(火) 15:28:26.92ID:RDWAs26/0 バグバグしてていいならpythonの方が手っ取り早いでしょ
606デフォルトの名無しさん
2018/07/03(火) 19:37:38.72ID:h6TZWOAm そのバグが出ない haskell で、まともなグラフ描けるライブラリ作ってくれよ
607デフォルトの名無しさん
2018/07/03(火) 20:25:29.91ID:k4izv0NM そういう考え方の人はpythonの方がいいでしょ
住み分け住み分け
住み分け住み分け
608デフォルトの名無しさん
2018/07/03(火) 20:42:26.69ID:kQlTmain >>606
hackage にアップされているグラフ描画ライブラリの
まともではない点とその理由を列挙していただけないでしょうか。
来月ちょっと暇ができるので、ここで議論が深まれば、
列挙されたものの幾つかを改善してみようかと思います。
hackage にアップされているグラフ描画ライブラリの
まともではない点とその理由を列挙していただけないでしょうか。
来月ちょっと暇ができるので、ここで議論が深まれば、
列挙されたものの幾つかを改善してみようかと思います。
609デフォルトの名無しさん
2018/07/03(火) 22:20:48.11ID:UwUpR5rd >>608
Haskell は調べかかってあきらめたからよく知らないんだが、Python ユーザの視点で書かせてくれ。
Python だとグラフ描くライブラリは、単純な(と言っても強力な)matplotlib って Matlab のパクリの他、
よりハイレベルなグラフが簡単に描けるライブラリとか、インタラクティブなグラフが描けるライブラリとかがある。
どれも、Jupyter ってWeb環境から普通に使えるし、データフレームって表みたいなデータ構造を入力に出来る。
データフレームはつまらないけど実用的には必須で、
カンマ区切りのテキストファイルとかエクセルとかデータベースを読み取れる。
Haskell ってそもそも標準的なデータフレームが無い気がするんだ。間違ってたらぜひ教えて欲しい。
あとオレが調べた時は単純にHaskell のグラフライブラリは見た目が古臭かった。gnuplot 並み。
最近だとPythonでもRでも、カッコいい色のセットとかを選べるし、複数のグラフを簡単にレイアウトできる。
頑張ればカッコよく描けるのかもしれないけど、そんなところに頑張りたくないんだ。
Haskell は調べかかってあきらめたからよく知らないんだが、Python ユーザの視点で書かせてくれ。
Python だとグラフ描くライブラリは、単純な(と言っても強力な)matplotlib って Matlab のパクリの他、
よりハイレベルなグラフが簡単に描けるライブラリとか、インタラクティブなグラフが描けるライブラリとかがある。
どれも、Jupyter ってWeb環境から普通に使えるし、データフレームって表みたいなデータ構造を入力に出来る。
データフレームはつまらないけど実用的には必須で、
カンマ区切りのテキストファイルとかエクセルとかデータベースを読み取れる。
Haskell ってそもそも標準的なデータフレームが無い気がするんだ。間違ってたらぜひ教えて欲しい。
あとオレが調べた時は単純にHaskell のグラフライブラリは見た目が古臭かった。gnuplot 並み。
最近だとPythonでもRでも、カッコいい色のセットとかを選べるし、複数のグラフを簡単にレイアウトできる。
頑張ればカッコよく描けるのかもしれないけど、そんなところに頑張りたくないんだ。
610デフォルトの名無しさん
2018/07/04(水) 03:12:38.67ID:kJrFfDeb0 じゃあグラフ描くならPythonってことでいいんじゃないですかね
611デフォルトの名無しさん
2018/07/04(水) 03:48:39.08ID:y2B7jfXw すいません。ハマってしまってます。助けてください。
GHC 7.8.3です。
有理数係数の複素数の計算をしようとして
import Data.Ratio
import Data.Complex
として
Prelude Data.Ratio Data.Complex> ((0%1):+(1%1))^2
としたら
<interactive>:5:1:
No instance for (RealFloat (Ratio a0)) arising from a use of ‘it’
In a stmt of an interactive GHCi command: print it
と駄目みたいです。
何がだめなのかさっぱりわかりません。
どなたか解決策わかりますか?
GHC 7.8.3です。
有理数係数の複素数の計算をしようとして
import Data.Ratio
import Data.Complex
として
Prelude Data.Ratio Data.Complex> ((0%1):+(1%1))^2
としたら
<interactive>:5:1:
No instance for (RealFloat (Ratio a0)) arising from a use of ‘it’
In a stmt of an interactive GHCi command: print it
と駄目みたいです。
何がだめなのかさっぱりわかりません。
どなたか解決策わかりますか?
612デフォルトの名無しさん
2018/07/04(水) 06:46:15.75ID:We7MgVDS >>609
matplotlibやpandasあたりは、
そのためだけに、Python使うくらいのライブラリだから、
他の言語に使いたいライブラリがあれば、
その言語を使うで使い分けで良いんじゃない。
Excelの読み書きもなんかもPython使ってるよ。
matplotlibやpandasあたりは、
そのためだけに、Python使うくらいのライブラリだから、
他の言語に使いたいライブラリがあれば、
その言語を使うで使い分けで良いんじゃない。
Excelの読み書きもなんかもPython使ってるよ。
613デフォルトの名無しさん
2018/07/04(水) 07:58:03.61ID:RQ3++Y83 HaskellのシンタックスのPythonが欲しい
614デフォルトの名無しさん
2018/07/04(水) 09:21:13.05ID:NlExtjkH >>611
HaskellのComplexで四則演算などをしようとすると
各要素はRealFloatクラスのインスタンス (いわゆる浮動小数点数)である必要がある
Ratio a はRealFloatのインスタンスになれないので計算できない
こうなってる理由はざっくり言えばHaskellのNumが悪い
(参考: https://blog.miz-ar.info/2016/06/haskell-num-class/#abs_signum )
HaskellのComplexで四則演算などをしようとすると
各要素はRealFloatクラスのインスタンス (いわゆる浮動小数点数)である必要がある
Ratio a はRealFloatのインスタンスになれないので計算できない
こうなってる理由はざっくり言えばHaskellのNumが悪い
(参考: https://blog.miz-ar.info/2016/06/haskell-num-class/#abs_signum )
615デフォルトの名無しさん
2018/07/04(水) 11:08:34.25ID:y2B7jfXw616デフォルトの名無しさん
2018/07/04(水) 11:21:15.35ID:rsOJUgV3 >>609
例えば QuickPlot (https://github.com/sheegl/QuickPlot)
そこそこモダンな描画を行うライブラリでしたが、
README.md にあるとおり、もうメンテナンスは行われていません。
ビジュアライゼーションサーバーのクライアントを作る方がより効率的だから、だそうです。
私もそう思います。
haskell でグラフ描画ライブラリを作るなら、
・データの作成 (取得や加工、整形など)
・サーバーへアクセスするためのインターフェース
この2点の実装に絞りたいですね。
データの作成は、python では Pandas のデータフレームを挙げていますが、
haskell ではこんなのはどうでしょうか。
https://github.com/chrisdone/labels/tree/master/labels-explore
あと、gnuplot を卑下してるようですが、そんなにダメですか?
私には視認性の良いグラフに見えますけど。
Wikipedia のグラフにも使われていますし。
例えば QuickPlot (https://github.com/sheegl/QuickPlot)
そこそこモダンな描画を行うライブラリでしたが、
README.md にあるとおり、もうメンテナンスは行われていません。
ビジュアライゼーションサーバーのクライアントを作る方がより効率的だから、だそうです。
私もそう思います。
haskell でグラフ描画ライブラリを作るなら、
・データの作成 (取得や加工、整形など)
・サーバーへアクセスするためのインターフェース
この2点の実装に絞りたいですね。
データの作成は、python では Pandas のデータフレームを挙げていますが、
haskell ではこんなのはどうでしょうか。
https://github.com/chrisdone/labels/tree/master/labels-explore
あと、gnuplot を卑下してるようですが、そんなにダメですか?
私には視認性の良いグラフに見えますけど。
Wikipedia のグラフにも使われていますし。
617デフォルトの名無しさん
2018/07/04(水) 14:52:23.98ID:okkM4kUQ gnuplot も悪いとまでは言わないが、昔の解像度が低く色数もあまりなかった時代に最適化されてる気がするんだよ
Python のグラフと、微妙に用途が違うのかもしれないが
Python のグラフ
ttps://seaborn.pydata.org/examples/index.html
Python のグラフと、微妙に用途が違うのかもしれないが
Python のグラフ
ttps://seaborn.pydata.org/examples/index.html
618デフォルトの名無しさん
2018/07/04(水) 16:23:51.06ID:rsOJUgV3 >>617
すいません、違いがよくまかりません。
gnuplot デモ
http://gnuplot.info/demos/
私には低解像度&少色数時代の環境に最適化されているようにはどうしても見えないです。
すいません、違いがよくまかりません。
gnuplot デモ
http://gnuplot.info/demos/
私には低解像度&少色数時代の環境に最適化されているようにはどうしても見えないです。
619デフォルトの名無しさん
2018/07/04(水) 19:14:51.99ID:J/c/gMh10 会社のプレゼンに使うならPythonの例の方がオシャレに見える
しかしオシャレなグラフというのは見栄え以外の面では役に立たない
しかしオシャレなグラフというのは見栄え以外の面では役に立たない
620デフォルトの名無しさん
2018/07/04(水) 21:47:59.97ID:gFgZc5FG MY6
621デフォルトの名無しさん
2018/07/05(木) 02:06:23.28ID:4KPVS4+Q その無駄に思えるオシャレが大事なんだぜ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国大使館、ついにXで尖閣諸島が領土と主張「何を言おうと釣魚島が中国に属する」に反発続々 [パンナ・コッタ★]
- 高市首相告白「『なめられない服』を選ぶことに数時間を費やしました」「外交交渉でマウント取れる服、買わなくてはいかんかもなぁ」★2 [ぐれ★]
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★11 [BFU★]
- 首相官邸前で「戦争あおるな」 台湾有事巡る答弁に抗議 ★2 [蚤の市★]
- 【野球】「地上波で放送しないWBC」は2軍選手中心で十分! 今こそネットフリックスに『ノー』を突き付けてほしい 江本氏が提言 [冬月記者★]
- 国民・榛葉氏「中国焦ってる」 ★2 [ぐれ★]
- ゆず、香港・上海・台北ツアー突如中止wwwwwwwwwwwwwwwwwwwwwwwwwww [329329848]
- ラーメン1杯500円… デフレ蔓延る日本、インフレさせて活力を取り戻す [667744927]
- 【実況】博衣こよりのえちえちゼルダの伝説 ムジュラの仮面🧪
- 女子サッカー見てるやつの目的
- 【悲報】ゼレンスキー「降伏するしかないかも・・・」ウク信「ゼレンスキーはプーアノン!最後の一兵まで戦え!」 [616817505]
- 結婚したい奴は結婚相談所行け
