Man Linux: Main Page and Category List


       kc - generate C code from Kimwitu input


       kc [ file.k ...  ]
       kc --version


       kc  reads the abstract syntax definition, function definitions, rewrite
       rules and unparse rules from the files given on the  command  line,  or
       from  the standard input if no file arguments were given, and generates
       for each file.k input file a pair of file.c and  a  file.h  files  that
       contain  the  translation of the functions defined in the corresponding
       file.k,  in  addition  to  the  files  that   are   always   generated:
       csgiok.[ch], rk.[ch] and unpk.[ch] files, that contain respectively the
       CSGIO-, the rewrite- and the unparse-functions, and  the  k.c  and  k.h
       files  that  contain  the  grammar  tables  and the remaining ‘default’
       functions.   If  no  command  line  file  arguments  are   given,   the
       translation   of  the  user-defined  functions  will  be  generated  in
       stdin.[ch] files.

       kc does not  unnecessarily  overwrite  a  file:  if  a  file  would  be
       overwritten  with its own (identical) contents, it will not be touched.
       This makes it easy to write an efficient Makefile.


       --version   print the version number of kc and exit (this option is not
                   available in kc versions older than V3_9P3)


       k.[ch]      the grammar and default functions

       rk.[ch]     the rewrite view declarations and rewrite functions

       csgiok.[ch] the CSGIO functions

       unpk.[ch]   the unparse view declarations and unparsing functions

       file.[ch]   translation of user-provided Kimwitu functions.

       stdin.[ch]  translation   of  user-provided  Kimwitu  functions  if  no
                   command line file arguments were given.


       If an error is encountered in the Kimwitu input,  an  apropriate  error
       message  will  be  written  on  standard error, code generation will be
       suppressed and a non-zero exit  value  will  be  returned.   The  error
       messages should be self-explanatory.


       Axel Belinfante, University of Twente, the Netherlands.


       By Email: <>


       This manual page documents kc V3_* and newer.

                                 May 13, 1996