Module FlatCurry.ShowIntMod

Author
Michael Hanus
Version
November 2025

This module contains various operations to show a FlatCurry program in human-readable forms, e.g., only the interface or also the complete program translated back into pattern-based rules. These operations are used in the Curry Browser and they are also the basis to implement the :interface command of PAKCS or KiCS2.

The interface description contains the type declarations for all entities defined and exported by this module.

The human-readable presentation is (almost) Curry source code generated from a FlatCurry program.

Exported Functions


showInterface :: Bool -> Prog -> String  Deterministic 


showCurryModule :: Prog -> String  Deterministic 


showCurryDataDecl :: ((String, String) -> String) -> TypeDecl -> String  Deterministic 


showCurryFuncDecl :: ((String, String) -> String) -> ((String, String) -> String) -> FuncDecl -> String  Deterministic 


leqFunc :: FuncDecl -> FuncDecl -> Bool  Deterministic 


showFlatCurry :: Prog -> String  Deterministic 

Show FlatCurry module in pretty-printed form


showFuncDeclAsCurry :: FuncDecl -> String  Deterministic 


showFuncDeclAsFlatCurry :: FuncDecl -> String  Deterministic 


funcModule :: FuncDecl -> String  Deterministic