Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
implementations:01_implementations [2008-03-14 11:50] – Document moved from tools:currydoc jactools:currydoc [2013-02-26 09:49] mh
Line 1: Line 1:
 ====== CurryDoc ====== ====== CurryDoc ======
 +
 +CurryDoc is a tool in the
 +[[http://www.informatik.uni-kiel.de/~pakcs/ | PAKCS]] and
 +[[http://www-ps.informatik.uni-kiel.de/kics2 | KiCS2]] distributions
 +that generates the documentation for a Curry program (i.e., the main module
 +and all its imported modules) in HTML (and optionally also LaTeX) format.
 +The generated HTML pages contain information about
 +all data types and functions exported by a module as well
 +as links between the different entities.
 +Furthermore, some information about the definitional status
 +of functions (like rigid, flexible, external, complete, or
 +overlapping definitions) are provided and combined with
 +documentation comments provided by the programmer.
 +
 +==== Short Summary ====
 +
 +A **documentation comment** starts at the beginning of a line
 +with three dashes (also in literate programs!).
 +All documentation comments immediately before a
 +definition of a datatype or (top-level) function are kept together.
 +The documentation comments for the complete module occur before
 +the first ''module'' or ''import'' line in the module.
 +The comments can also contain several special tags. These tags
 +must be the first thing on its line (in the documentation comment)
 +and continues until the next tag is encountered or until the
 +end of the comment. The following tags are recognized:
 +
 +  * ''@author comment'': Specifies the author of a module (only reasonable in module comments).
 +  * ''@version comment'': Specifies the version of a module (only reasonable in module comments).
 +  * ''@cons id comment'': A comment for the constructor ''id'' of a datatype (only reasonable in datatype comments).
 +  * ''@param id comment'': A comment for function parameter ''id'' (only reasonable in function comments). Due to pattern matching, this need not be the name of a parameter given in the declaration of the function but all parameters for this functions must be commented in left-to-right order.
 +  * ''@return comment'': A comment for the return value of a function (only reasonable in function comments).
 +
 +
 +==== Further Information ====
 +
 +More details on CurryDoc described in the user manuals of
 +[[http://www.informatik.uni-kiel.de/~pakcs/ | PAKCS]] and
 +[[http://www-ps.informatik.uni-kiel.de/kics2 | KiCS2]].
 +There is also a //paper describing the basic ideas of CurryDoc//:
  
 **CurryDoc : A Documentation Tool for Declarative Programs** **CurryDoc : A Documentation Tool for Declarative Programs**
  
-[[mh@informatik.uni-kiel.de | Michael Hanus]]+[[http://www.informatik.uni-kiel.de/~mh | Michael Hanus]]
  
 Proc. of the 11th International Workshop on Functional and (Constraint) Logic Programming (WFLP 2002), Research Report UDMI/18/2002/RR, Università degli Studi di Udine, pp. 225-228, 2002  Proc. of the 11th International Workshop on Functional and (Constraint) Logic Programming (WFLP 2002), Research Report UDMI/18/2002/RR, Università degli Studi di Udine, pp. 225-228, 2002 
/srv/dokuwiki/currywiki/data/pages/tools/currydoc.txt · Last modified: 2020-12-22 23:18 by mh
Back to top
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0