purescript-0.15.9: PureScript Programming Language Compiler
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.PureScript.CoreFn.CSE

Description

This module performs limited common subexpression elimination

Synopsis

Documentation

optimizeCommonSubexpressions :: ModuleName -> [Bind Ann] -> Supply [Bind Ann] Source #

Float synthetic Apps (right now, the only Apps marked as synthetic are type class dictionaries being fed to functions with constraints, superclass accessors, and instances of IsSymbol) to a new or existing Let as close to the top level as possible.