関数型プログラミング言語 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
556デフォルトの名無しさん
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 その無駄に思えるオシャレが大事なんだぜ
622デフォルトの名無しさん
2018/07/05(木) 06:27:20.02ID:fgqUaerO Pythonの例として上げられてるのは、seabornという
1. Rからデザインと
2. 人気のあるデータ表示方法
をパクって、同じことをmatplotlib.pyplotを裏で使ってお手軽にできるようにしたパッケージであって、
素のmatplotlib.pyplotのグラフはgnuplotのデフォルトと変わりのない見た目ですよ
gnuplotだって、山ほど表示用オプションがあって綺麗に表示できます
1. Rからデザインと
2. 人気のあるデータ表示方法
をパクって、同じことをmatplotlib.pyplotを裏で使ってお手軽にできるようにしたパッケージであって、
素のmatplotlib.pyplotのグラフはgnuplotのデフォルトと変わりのない見た目ですよ
gnuplotだって、山ほど表示用オプションがあって綺麗に表示できます
623デフォルトの名無しさん
2018/07/05(木) 09:04:27.74ID:HeNpkv8u >>622
gnuplot でお手軽に綺麗に表示できるようになってるの?
話が逸れたが、ある程度データ構造が共通に使えて
目的に応じて使えるかなり機能も見た目も
良くできたグラフライブラリが幾つかある、ってのが Python の状況だよ
個人的にはHaskell でそれが出来りゃ嬉しいが、、
Python は実行しないとエラーが出ないから、げんなりする時もある
教えてもらった labels- explorer は面白そうなんで見てみるよ
gnuplot でお手軽に綺麗に表示できるようになってるの?
話が逸れたが、ある程度データ構造が共通に使えて
目的に応じて使えるかなり機能も見た目も
良くできたグラフライブラリが幾つかある、ってのが Python の状況だよ
個人的にはHaskell でそれが出来りゃ嬉しいが、、
Python は実行しないとエラーが出ないから、げんなりする時もある
教えてもらった labels- explorer は面白そうなんで見てみるよ
624デフォルトの名無しさん
2018/07/05(木) 12:35:27.07ID:aP+h4Ji7 >>623
綺麗にできるかどうかは使用者のセンスに依ると思います。
python の方のサンプルは、単に淡い色を使い、
線を太めに表示しているだけに見えますが、違いますか?
他に python のグラフならではの特徴があれば言ってください。
下記のような設計のライブラリがあればあなたの要望は満たされますか?
1. 見た目が python のサンプルの様になる「デザインのプリセット」がある。
2. pandas のデータフレームに似た使い勝手の「2次元の表」からグラフを生成できる。
3. 上記1. 2. を満たせば、グラフの生成自体は gnuplot に任せても良い。
綺麗にできるかどうかは使用者のセンスに依ると思います。
python の方のサンプルは、単に淡い色を使い、
線を太めに表示しているだけに見えますが、違いますか?
他に python のグラフならではの特徴があれば言ってください。
下記のような設計のライブラリがあればあなたの要望は満たされますか?
1. 見た目が python のサンプルの様になる「デザインのプリセット」がある。
2. pandas のデータフレームに似た使い勝手の「2次元の表」からグラフを生成できる。
3. 上記1. 2. を満たせば、グラフの生成自体は gnuplot に任せても良い。
625デフォルトの名無しさん
2018/07/05(木) 18:25:11.62ID:rB4OVQ4f 一見丁寧に見えてなかなかに辛辣でワロた。
626デフォルトの名無しさん
2018/07/05(木) 18:32:51.78ID:Ia+ptacm そんなところ頑張りたくないからデフォルトで一般受けする図を出せる奴が欲しいってだけの議論でなんでこんな白熱するんだ
627デフォルトの名無しさん
2018/07/05(木) 18:54:20.69ID:rB4OVQ4f628デフォルトの名無しさん
2018/07/05(木) 21:16:31.45ID:aP+h4Ji7 勘違いしているようですが、python 視点とかはどうでもいいです。
要は、希望されている機能がどれだけ楽に実装できるかが問題なんです。
その「頑張りたくないからデフォルトで」がプリセットの提供で満たせ、
かつ gnuplot を使ってもいいのなら、
見た目の部分は頭をそれほど使わず実装できそうです。
また、データフレーム的なデータ構造も、
もうメンテされてなさそうですが、labels-explore で賄えます。
となれば、ライブラリの形はインターフェースを簡易化したラッパー的なもので十分。
一から作るより遙かに楽です。
でも、私の指摘の他に python のグラフならではの特徴があり、
それを求められているのであれば、実装が難しくなり、
正直腰が引けます。
そのための確認です。
要は、希望されている機能がどれだけ楽に実装できるかが問題なんです。
その「頑張りたくないからデフォルトで」がプリセットの提供で満たせ、
かつ gnuplot を使ってもいいのなら、
見た目の部分は頭をそれほど使わず実装できそうです。
また、データフレーム的なデータ構造も、
もうメンテされてなさそうですが、labels-explore で賄えます。
となれば、ライブラリの形はインターフェースを簡易化したラッパー的なもので十分。
一から作るより遙かに楽です。
でも、私の指摘の他に python のグラフならではの特徴があり、
それを求められているのであれば、実装が難しくなり、
正直腰が引けます。
そのための確認です。
629デフォルトの名無しさん
2018/07/05(木) 21:59:46.30ID:LtuS5J6M 普通にいける範囲なら実装してくれるってこと……?
神かよ
神かよ
630デフォルトの名無しさん
2018/07/05(木) 22:39:32.46ID:JLdZJLqI Pythonならでは、って訳じゃないが(むしろ Rのパクリだと思うが)
facet とかいうグラフを二次元の表に並べたオシャレなグラフは欲しい
軸はグラフ毎に共通にできたりバラバラにできたりする
seaborn の facetgrid ってクラス見てくれ、map でグラフ書いたりしてて、ちょっと関数型言語の影響がありそうだから
あとは逆にHaskell ならではの良さが出るかどうかだな
facet とかいうグラフを二次元の表に並べたオシャレなグラフは欲しい
軸はグラフ毎に共通にできたりバラバラにできたりする
seaborn の facetgrid ってクラス見てくれ、map でグラフ書いたりしてて、ちょっと関数型言語の影響がありそうだから
あとは逆にHaskell ならではの良さが出るかどうかだな
631デフォルトの名無しさん
2018/07/05(木) 23:17:35.48ID:mFkifadT > Haskellならではの良さ
フーム
フーム
632デフォルトの名無しさん
2018/07/05(木) 23:22:55.84ID:aP+h4Ji7 >>630
複数のグラフを並べるのは、gnuplot では、このサンプルの一番下のものですね。
http://gnuplot.sourceforge.net/demo_5.0/layout.html
すみませんが、python 自体は昔に少し触ったくらいで殆ど門外漢です。
不慣れなものを調べるのは面倒で、そこまで労力や時間をかけたくないです。
あくまで、暇ができるのでやってみましょうか、という話です。
なので、実装してほしい事は自分の口で、
python を知らない者にも分かるように説明してください。
それでも、あまりに大変そうならお断りするかも知れませんが。
あと何度も言いますが、オシャレなグラフになるかどうかは個人のセンスですので、
そんなものはライブラリに期待しないでください。
ある程度のプリセットは用意しようと思いますが、あくまで私のセンスです。
普通は利用者がパラメーターを調整して自分でオシャレに仕上げるものです。
複数のグラフを並べるのは、gnuplot では、このサンプルの一番下のものですね。
http://gnuplot.sourceforge.net/demo_5.0/layout.html
すみませんが、python 自体は昔に少し触ったくらいで殆ど門外漢です。
不慣れなものを調べるのは面倒で、そこまで労力や時間をかけたくないです。
あくまで、暇ができるのでやってみましょうか、という話です。
なので、実装してほしい事は自分の口で、
python を知らない者にも分かるように説明してください。
それでも、あまりに大変そうならお断りするかも知れませんが。
あと何度も言いますが、オシャレなグラフになるかどうかは個人のセンスですので、
そんなものはライブラリに期待しないでください。
ある程度のプリセットは用意しようと思いますが、あくまで私のセンスです。
普通は利用者がパラメーターを調整して自分でオシャレに仕上げるものです。
633デフォルトの名無しさん
2018/07/06(金) 00:29:48.55ID:qcgYo1MM それはいけない。
現にSeaborneはおしゃれに仕上げて来ているので、Pythonならライブラリに期待できるのにHaskellでは期待出来ないということになってしまう
現にSeaborneはおしゃれに仕上げて来ているので、Pythonならライブラリに期待できるのにHaskellでは期待出来ないということになってしまう
634デフォルトの名無しさん
2018/07/06(金) 01:50:57.76ID:nHf3/Uiq >>633
プログラミング言語を用いてグラフを作る目的は、
データの取得、加工、整形までをサクッとプログラムしたのだから、
そのデータの全体像を捉えるための可視化も「ついでに」してしまおうというもの。
つまり、プロセッシングしたデータの特徴を「すぐに見たい」という要求に応えるもの。
その様な目的のグラフに求めるのは、データの様相を正しく映すこと。
オシャレなんて入る余地は微塵もありません。
(例えば haskell には使用メモリ量をプロファイルしたデータのグラフ化ツールがありますが、
そのグラフにオシャレさは必要でしょうか)
もし、人にカッコイい思われるグラフを作りたいとか、
人にインパクトを与えるグラフを作りたいという目的ならば、
なにもプログラミング言語を使わなくてもいい。
というのが、古臭いかもしれませんが、私の考えです。
なので、あくまでオシャレなグラフを作るライブラリを求めているのでしたら、
私のモチベーションは大きく下がるので、
この件から降ります。
プログラミング言語を用いてグラフを作る目的は、
データの取得、加工、整形までをサクッとプログラムしたのだから、
そのデータの全体像を捉えるための可視化も「ついでに」してしまおうというもの。
つまり、プロセッシングしたデータの特徴を「すぐに見たい」という要求に応えるもの。
その様な目的のグラフに求めるのは、データの様相を正しく映すこと。
オシャレなんて入る余地は微塵もありません。
(例えば haskell には使用メモリ量をプロファイルしたデータのグラフ化ツールがありますが、
そのグラフにオシャレさは必要でしょうか)
もし、人にカッコイい思われるグラフを作りたいとか、
人にインパクトを与えるグラフを作りたいという目的ならば、
なにもプログラミング言語を使わなくてもいい。
というのが、古臭いかもしれませんが、私の考えです。
なので、あくまでオシャレなグラフを作るライブラリを求めているのでしたら、
私のモチベーションは大きく下がるので、
この件から降ります。
635デフォルトの名無しさん
2018/07/06(金) 02:04:10.34ID:qcgYo1MM >>634
そういう考えなら降りた方が良いと思うよ
そういう考えなら降りた方が良いと思うよ
636デフォルトの名無しさん
2018/07/06(金) 05:21:13.62 なんでオシャレにしないといけないんですか(正論)
637デフォルトの名無しさん
2018/07/06(金) 06:38:28.09ID:hZ+CPQ2X 自己肯定感かな
論理に自信があるなら論理だけでいいがそうでなければオシャレが必要なような気がする
論理に自信があるなら論理だけでいいがそうでなければオシャレが必要なような気がする
638デフォルトの名無しさん
2018/07/06(金) 06:41:34.00ID:2hmUlp+S 何がオシャレなのかを定義して
正確に人に伝えるところからじゃないの?
正確に人に伝えるところからじゃないの?
639デフォルトの名無しさん
2018/07/06(金) 07:12:51.82ID:hZ+CPQ2X もし定義できないならできないと伝えるのが正しい言葉なんです
640デフォルトの名無しさん
2018/07/06(金) 07:46:50.10ID:vkH0MZEq ユーザーは最初から見た目を重視してんのに、ここにきていきなりオシャレは必要ないって突っ返すのは、
さすがにPythonがどうとかHaskellがどう以前にコミュニケーション不全
さすがにPythonがどうとかHaskellがどう以前にコミュニケーション不全
641デフォルトの名無しさん
2018/07/06(金) 08:37:44.78ID:ODtONBJi 万能なプリセットなんておれは期待してないから、
適当なのを真似るだけで全然問題ないよ
ただ別に金出してるわけでもないから、おれは好き勝手書いてるけど別に従う必要はないよ
あとちょっとグラフに対するおれの感覚と違っているようだから書いておく
少なくとも今は、一種類のデータだけじゃなく、沢山の種類のデータを見たい人がいるんだよ。
そういう人にとっては、情報は圧縮されていて欲しい。忙しいから、全体を見たいんだ。
例えば一台の使用メモリ量じゃなく50台のを見たい、とかだよ。
そんな時に、50枚のグラフを渡されて一個一個が完璧に可視化しているでしょ、とか言われたら困る。
画面に収まるようにするには、削ってもいい情報を削り、例えばfacetみたいな方法でまとめるしかない。
かといって圧縮しすぎても分からなくなるし難しいけどね。
適当なのを真似るだけで全然問題ないよ
ただ別に金出してるわけでもないから、おれは好き勝手書いてるけど別に従う必要はないよ
あとちょっとグラフに対するおれの感覚と違っているようだから書いておく
少なくとも今は、一種類のデータだけじゃなく、沢山の種類のデータを見たい人がいるんだよ。
そういう人にとっては、情報は圧縮されていて欲しい。忙しいから、全体を見たいんだ。
例えば一台の使用メモリ量じゃなく50台のを見たい、とかだよ。
そんな時に、50枚のグラフを渡されて一個一個が完璧に可視化しているでしょ、とか言われたら困る。
画面に収まるようにするには、削ってもいい情報を削り、例えばfacetみたいな方法でまとめるしかない。
かといって圧縮しすぎても分からなくなるし難しいけどね。
642デフォルトの名無しさん
2018/07/06(金) 10:10:20.21ID:nHf3/Uiq >>641
> 画面に収まるようにするには、削ってもいい情報を削り、例えばfacetみたいな方法でまとめるしかない。
> かといって圧縮しすぎても分からなくなるし難しいけどね。
私は「全体像」を捉えるための可視化と言っています。
細部を見るための可視化とは言っていません。
(50個分のグラフで表されるデータの全体像を捕らえたいという要望に、
50枚のグラフを作るなど愚の骨頂)
そして、それはあなたがオシャレではないと感じている gnuplot でできますよね。
gnuplot のサンプル見ましたか?
gnuplot でもできることは理解したけど、
オシャレではないので却下という事ですか?
> 画面に収まるようにするには、削ってもいい情報を削り、例えばfacetみたいな方法でまとめるしかない。
> かといって圧縮しすぎても分からなくなるし難しいけどね。
私は「全体像」を捉えるための可視化と言っています。
細部を見るための可視化とは言っていません。
(50個分のグラフで表されるデータの全体像を捕らえたいという要望に、
50枚のグラフを作るなど愚の骨頂)
そして、それはあなたがオシャレではないと感じている gnuplot でできますよね。
gnuplot のサンプル見ましたか?
gnuplot でもできることは理解したけど、
オシャレではないので却下という事ですか?
643デフォルトの名無しさん
2018/07/06(金) 11:23:26.70 長い棒グラフを端折る為に、下端を0以外の数値にしちゃうとか、マナー違反しない限りもう好きにやってくれ
644デフォルトの名無しさん
2018/07/06(金) 11:46:42.42ID:aeaUac9w オシャレって結局UXだからね
手軽に良いUXが得られる方を使うのは自然っちゃ自然なわけで
手軽に良いUXが得られる方を使うのは自然っちゃ自然なわけで
645デフォルトの名無しさん
2018/07/06(金) 14:15:19.37ID:hZ+CPQ2X UXを定義できないなら予測もできない
予測できると思ってるならやっぱり定義するべき
予測できると思ってるならやっぱり定義するべき
646デフォルトの名無しさん
2018/07/06(金) 18:44:45.57ID:aeaUac9w UX自体の定義は単純だよね
プロダクトによってユーザーが得る経験
良し悪しになると一意には定まらないけど良い悪いのアンケでも取って統計的有意差を得られれば良い悪いとしていいと思う
もし客観主義として定義可能なものしか定義と認めないと言うならお手上げだ
良いUXが得られるとされるプロセスには既にアンケなどによるユーザ要求の明確化が含まれてしまうからね
プロダクトによってユーザーが得る経験
良し悪しになると一意には定まらないけど良い悪いのアンケでも取って統計的有意差を得られれば良い悪いとしていいと思う
もし客観主義として定義可能なものしか定義と認めないと言うならお手上げだ
良いUXが得られるとされるプロセスには既にアンケなどによるユーザ要求の明確化が含まれてしまうからね
647デフォルトの名無しさん
2018/07/07(土) 09:26:18.48ID:IVdrrdB1 アンケ取って結果を発表するところまで全部がUXになるからお手上げだな
放○線を測定して数値を報道するみたいなUXだ
放○線を測定して数値を報道するみたいなUXだ
648デフォルトの名無しさん
2018/07/07(土) 11:29:34.03ID:o7Nl1O6h 出来ない出来ないと言い訳ばかりして実際出来ているPythonから目をそらす
649デフォルトの名無しさん
2018/07/07(土) 11:58:08.73ID:IVdrrdB1 プロシュー○「出来る…そんな言葉は使う必要がねーんだ。」
650デフォルトの名無しさん
2018/07/07(土) 12:00:36.05 たかがグラフ一つでいつまでもスレを汚さないで
もっと本格的な話をして
もっと本格的な話をして
651デフォルトの名無しさん
2018/07/07(土) 21:46:46.78ID:amcAQv9O 質問
let a = takeWhile p $ sort xs
これって、どこまでソート処理されるかは、
xs の並び方と条件 p によるよね
(厳密にはaの評価方法によるけど)
今のsortの実装は確かマージソートだったはずだから、
極端な話、条件に合う要素がただ一つだけ先頭にあれば、
ソート処理はすぐに終わると思っていい?
let a = takeWhile p $ sort xs
これって、どこまでソート処理されるかは、
xs の並び方と条件 p によるよね
(厳密にはaの評価方法によるけど)
今のsortの実装は確かマージソートだったはずだから、
極端な話、条件に合う要素がただ一つだけ先頭にあれば、
ソート処理はすぐに終わると思っていい?
652デフォルトの名無しさん
2018/07/07(土) 23:14:16.03ID:CxD5piUN >>651
そういう意図なら
sort $ takeWhile p xs
じゃないかな
最初に書いてある式だと、takeWhile p が引数のリストを評価しようとしたときに
sort xsの第一要素を見る必要があるのでxsをソートし終わらないと評価が進まないはず
そういう意図なら
sort $ takeWhile p xs
じゃないかな
最初に書いてある式だと、takeWhile p が引数のリストを評価しようとしたときに
sort xsの第一要素を見る必要があるのでxsをソートし終わらないと評価が進まないはず
653デフォルトの名無しさん
2018/07/08(日) 00:09:13.07ID:Xnl3te8c マージソートでマージが遅延されるならhead $ sort xsはO(n)だと思う
いい感じの説明用コードが思いつかないけど
あとたぶん例のクイックソートも
いい感じの説明用コードが思いつかないけど
あとたぶん例のクイックソートも
654デフォルトの名無しさん
2018/07/08(日) 00:15:59.84ID:Xnl3te8c あークイックソートは先頭だけでも最悪O(n^2)になったりするか
655デフォルトの名無しさん
2018/07/08(日) 01:32:29.33ID:fmVgo5Ue656デフォルトの名無しさん
2018/07/08(日) 01:40:40.69ID:fmVgo5Ue ふと思いついたが、比較関数に unsafePerformIO を入れて比較回数をカウントすれば分かるかも
今は実験環境が無いから、起きたら試してみる
お騒がせしてごめん、という結果になるかも
お休み、お前ら
今は実験環境が無いから、起きたら試してみる
お騒がせしてごめん、という結果になるかも
お休み、お前ら
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★9 [BFU★]
- 【赤坂ライブハウス刺傷】逃走していた自衛官の男(43)を殺人未遂の疑いで逮捕 警視庁 被害女性とは知人関係 [Ailuropoda melanoleuca★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 高市首相が異例の“買春行為の罰則化の検討”に言及…世界では“買う側”に罰則を科すのが先進国のスタンダード ★2 [樽悶★]
- 脳ぶっ壊れワイにおすすめの快楽手段
- 【ガチ正論】一般人「中国に規制制裁されて、『中国ムカつく』じゃなくて矛先が『許さんぞ高市』になってる奴、頭おかしいの?」 ★2 [153490809]
- ジャパニーズってジャパニーズじゃん?
- 店員に「あっこいつセックスするんだな」って思われずにコンドーム買う方法
- 中国のロボット部隊がすごい。仮に中国と戦争になったら日本人はロボットと戦わないとならなくなる [805596214]
- ツキノワグマ vs ヒグマ vs メカヒグマ vs モスラ vs キングギドラ
