[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Ideas for documentation system




Some of it. To be more precise: 

(1) The documentation should become accessible and browsable through
    HelpDesk in a standardized modular manner. 

(2) Pre and postconditions are stated informally. Why? For a language 
    like Scheme, plain old pre/post conditions make little sense: 

    - the language is used in a mostly functional manner so that such
      invariants should be directly expressed as predicates on input and
      output sets (of course, pre/post conditions are assertions that mean
      this)

    - invariants are misleading and incomplete. The problems are causes by
      higher-order functions (what does it mean to say that an input must
      be of type (number -> number)?) and objects and first-class classes
      and such things. 

      One could respond: but I cover the most common cases.  Our response:
      If you use Scheme properly, that's not true.  And, the goal of PLT is
      to get away from the "I got 30% right and cover most of the cases and
      it works" attitude of old language designs.

      We are working on this issue and hope to supply an optional
      specification system so that people can express some of these things
      and get sound run-time system support. 

      In the meantime, test MrSpidey on a few small examples. It has a
      sound theory, a solid implementation, and a neat GUI
      interfaces. Future type/assertion checking systems will work in a
      similar manner. 

Thanks for the offer and I'd love to see it build within the above
constraints. 

-- Matthias