Demandedness analysis: checks whether functions demands a particular argument, i.e., delivers only bottom if some argument is bottom.
Author: Michael Hanus
Version: February 2025
showDemand
:: AOutFormat -> [Int] -> String |
lub
:: DemandDomain -> DemandDomain -> DemandDomain |
demandAnalysis
:: Analysis [Int] Demandedness analysis. |
daFunc
:: FuncDecl -> [((String,String),[Int])] -> [Int] |
daFuncRule
:: [((String,String),[Int])] -> Rule -> [Int] |
prelude
:: String |
Data type to represent information about demanded arguments. Demanded arguments are represented as a list of indices for the arguments, where arguments are numbered from 1.
Type synonym: DemandedArgs = [Int]
Constructors:
Bot
:: DemandDomain
Top
:: DemandDomain
|
|
Demandedness analysis. |
|
|