[過去ログ] 関数型プログラミング言語Haskell Part33 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
145: 2020/04/01(水)13:27:17.06 ID:0siDwK7Q(1) AAS
simulationライブラリで純粋な関数式プログラミングをする
外部リンク[aspx]:x0000.net

UIライブラリ (C#, 2D) を作ったよ
外部リンク[aspx]:x0000.net

学術巨大掲示板群: アルファ・ラボ
外部リンク:x0000.net

物理学 化学 数学 生物学 天文学 地理地学
IT 電子 工学 国語 方言 言語学 など
165
(1): 2020/04/03(金)19:05:03.06 ID:AMwYpRxM(2/2) AAS
犯人オタクキモすぎてわろ
368: 2020/08/13(木)17:57:45.06 ID:AeuuY+wz(1/3) AAS
圏論入門 Haskellで計算する具体例から
雪田修一 (単行本)
という本が近々出るので、Haskellの予習のためにHaskellの本を買いました。

プログラミング環境は何をインストールするのがおすすめでしょうか?
OSはWindows 10を使っています。
406: 2020/08/21(金)20:51:03.06 ID:3LvfPoDL(1) AAS
通常の関数適用は左結合だから
f g z x は ((f g) z) x と同じ意味になって
コンパイルエラーになっちゃうけど
関数合成演算子を使うと括弧が減るよ、ということが言いたいはず

関数合成自体は結合的だからそこの向きは確かに関係ないね
410
(1): 2020/08/22(土)00:48:03.06 ID:66roH7xF(1) AAS
>>408
しらんけど、位相空間って連続写像仮定してないか?
プログラミング言語でいう写像とは違う
位相空間論で一般的に言われているのならその定理を示した方がいいんじゃない?
個人的には位相空間論の書籍に限定しているのが気になる。どちらかと言うと代数学の方が一般的と思うが。

>あと「Haskellによる関数プログラミングの思考法」にも(証明は無いが)言及があった
こっちはたぶん書籍持ってるかな?ページ数教えてくれる?
四則演算というか群論でいう、逆元を仮定しているとかそんな感じやない?しらんけど

数学ではよくあるけど、仮定が大事 それを無視するから、結論を間違えるのはよくある
貴方が間違えたかどうかは知らんど
写像の合成で結合則が必ず成り立つのなら、そのような記述はどっかの書籍に必ずある
自分は見たこと無い。あるとすれば、なんらかの仮定で限定されている。
580: 2020/11/22(日)20:14:41.06 AAS
居飛車党と振り飛車党の闘いは続く
728: 2021/02/11(木)14:43:11.06 ID:/UgD5Hp7(1) AAS
地獄の沙汰も金次第
だが天国への言及はない
845: 2021/06/07(月)12:42:09.06 ID:k7DmZ27b(1) AAS
昨日の自分は他人です
847: 2021/06/07(月)22:37:59.06 ID:+U7TScWJ(1) AAS
そりゃあ人間の能力は老化とともに衰えるから仕方ないね
904
(1): 2021/09/22(水)20:18:48.06 ID:02VLVXq+(4/4) AAS
備忘録がてら調べてわかった事書いておきます
Pattern Synonyms は今回のようにライブラリの提供者が型のコンストラクタを提供してない、しかしパターンマッチは使いたいとかの場合に使える拡張のようです
{-# LANGUAGE PatternSynonyms, ViewPatterns #-}
を使うと

pattern ( マッチさせたい表現) <-
( その型から取り出したい値を取り出す関数)
-> ( 取り出した値にマッチさせるパターン) )
( where さらにコンストラクタシノニムとしても使いたい場合の逆変換関数 )

の形で使うようです
例えばInt型でxが偶数であった場合にdiv x 2をパターンマッチで拾うために

pattern TwiceOf x <-
( ( \t -> ( div t 2 , even t ) ) -> ( x, True ) )

のように定義しておいて

main = do
case 2 of { DoubleOf x -> print x; _ -> print "odd" }
case 3 of { DoubleOf x -> print x; _ -> print "odd" }

のように利用できるようです
TwiceOf はあくまでパターンマッチの表現のみで使える“仮の”コンストラクタですがpattern文にwhere句を

pattern DoubleOf x <-
( ( \t -> ( div t 2 , even t ) ) -> ( x, True ) )
where TwiceOf x = 2*x

のように追加するとあたかもInt型の新しいコンストラクタが追加されたように振る舞い“DoubleOf 2”のような表現が許されるようになるようです
今回の場合はどうすべきか悩みどころです
ライブラリの開発者が低レベルの(:%)を公開しない理由もわかるので無理クリ(:%)を使うのもどうなんつて気もするし、かと言ってまだHaskellの標準として認められてない、GHCでしか使えない拡張使うのもどうなんという気もするし
929: 2021/10/18(月)02:49:04.06 ID:mrfOLNSK(1) AAS
また圏論か
もういいよ
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.055s