----------------------------------------------------------------------------- -- bugs * Pick the preferred export names as per the paper. * A module re-export should only reference the target module if the target module is imported without hiding any of its exports (otherwise we should inline just the exported bits). * remove the s/r conflicts I added to the grammar * Support for the rest of GHC extensions in the parser: - scoped type variables (return types left to do). - template haskell * Be a bit cleaner about error cases: some internal errors can be generated by bugs in the Haskell source. Divide out the proper internal error cases and emit proper error messages. * For a module with no documentation section, include a "synopsis" header? * Parent button should be removed if there isn't a parent. * derived instance support isn't quite right (doing it properly is hard, though). * Referring to something that has a defn but no typesignature doesn't elicit a useful message. * Trying to re-export something from another package doesn't work (unless it's the whole module). We should give a warning or something. ----------------------------------------------------------------------------- -- features * quiet warnings for missing things in modules which aren't included in the run (i.e. stop complaining about Prelude stuff by default). * merge the indices, adding annotations to distinguish types/classes/functions/ constructors as necessary. Remove the emboldening of original entities in the index. * Generating a single index from many .haddock files should be possible. * nested itemized and enumerated lists. * There ought to be a way to include some structure in the "description" (section headings, etc.) and possibly in other comments. (suggseted by Daan). * Comments on instance declarations? (suggested by Daan and Iavor). * Comments on default method declarations? (suggested by Satnam). * Add a search feature which just invokes Google? * Do the unlitting/CPPing from Haddock itself so we get the source file links right. * attributes for individual declarations, eg. -- #abstract or targetted to a specific decl: -- #T: abstract #long, #short, #noinstances (on a type or class) #inline, #noinline on a module export * Allow documentation annotations to explicitly name the entity they refer to. * In the contents page, indicate portability/stability of each module somehow. * Add back-references from the definition to the uses of types/classes (perhaps in the index?) * Add a link to the defining location of a re-exported entity * fixities * include file revision info in module headers * Allow individual function arguments to be documented when the function type is a record element? * hiding instances? ----------------------------------------------------------------------------- -- cosmetic * for a constructor, don't fill its entire cell with a grey background. * switch to longer rendering form for datatypes when necessary? * remove extra whitespace from the generated HTML to save space