futhark-0.25.32: An optimising compiler for a functional, array-oriented language.

Safe Haskell | None
Language | GHC2021

Futhark.Internalise.ReplaceRecords

Description

Converts identifiers of record type into record patterns (and similarly for tuples). This is to ensure that the closures produced in lambda lifting and defunctionalisation do not carry around huge records of which only a tiny part is needed.

Synopsis

- transformProg :: MonadFreshNames m => [ValBind] -> m [ValBind]

# Documentation

transformProg :: MonadFreshNames m => [ValBind] -> m [ValBind] Source #

Monomorphise a list of top-level declarations. A module-free input program is expected, so only value declarations and type declaration are accepted.