futhark
Safe HaskellNone
LanguageGHC2021

Language.Futhark.TypeChecker.Terms.Loop

Description

Size inference of loop. This is complicated, so the implementation is separate from the main type checker.

Synopsis

Documentation

type CheckedLoop = ([VName], Pat ParamType, LoopInitBase Info VName, LoopFormBase Info VName, Exp) Source #

A loop that has been type-checked.

checkLoop :: (Exp -> TermTypeM Exp) -> UncheckedLoop -> SrcLoc -> TermTypeM (CheckedLoop, AppRes) Source #

Type-check a loop expression, passing in a function for type-checking subexpressions. See Note [Loop size inference].