0
のは、私はこのように単純に実現される機能を持っているとしましょう:複数の同一の部分式があり一般的な部分式消去がGHCで起こっているかどうかを知るには?
quadratic a b c = (ans1, ans2)
where
ans1 = ((-b) + sqrt (b * b - 4 * a * c))/(2 * a)
ans2 = ((-b) - sqrt (b * b - 4 * a * c))/(2 * a)
。どのようにして共通の部分式消去が起こっているかどうか、そしてこれのどの部分にコアを読まずに伝えることができますか?
「読書コアで」と答えています。なぜそれをしたくないのですか? 'Debug.Trace'から関数を挿入することで推測できるかもしれませんが、私はそれに頼ることはありません。 – jberryman
@jberrymanどのようなコードが最適化される可能性が高いかどうかを示す経験則がありますか? – rityzmon
無関係ですが、非決定性はタプルではなくリストでモデル化されています。 '二次式a b c = [ans 1、ans 2] where ...' – chepner