A format expression is of the form
"(Specifier|NonSpecifier)*"(,Var)*
            where Var
            can be any string without a comma.
          
A specifier is in the form
%[flags] [width] [.precision] type
Width and Precision are either integers or *.
            For explanation on semantics see
http://pubs.opengroup.org/onlinepubs/009695399/functions/fprintf.html
          
For further informations see the library `Data.Format` of package `printf`. Not all parsable expressions are usable.
Author: Jasper Sikorra (with changes by Michael Hanus)
Version: November 2023
| parse
                  ::  String -> Pos -> String -> IO (PM String)The function parses and converts a String that is in the format of a C-like printf expression into a Curry Expression that makes use of the Data.Formatlibrary. | 
| 
                       
                      The function parses and converts a String that is in the format of a C-like
printf expression into a Curry Expression that makes use of the
 
 
 
 |