Matthias, In the style guide it suggests requires, auxiliary concepts related to the contracts, provide/contract, and then the body of the module. One problem I have is that I often use structs to define new data types and use the resulting structure type predicate - <type name>? - in many contracts. This forces the provide/contract to be at (or near) the bottom of the module. So, I had just started putting it there all the time. [The provide/contract seems to require the 'auxiliary concepts' to already be defined.]
Would it be better for me to define a <type name>/c flat-named contract for the struct and move it back to the top? I assume I can use a forward reference to a module variable - i.e., <type name>? - in the named-flat-contract. Doug On Wed, Sep 14, 2011 at 6:47 PM, Matthias Felleisen <matth...@ccs.neu.edu>wrote: > > > For the past few months, I have been writing a style guide for new Racket > PLTers. The current draft is available at > > http://www.ccs.neu.edu/home/matthias/Style/style/ > > I had hoped to complete it a bit more and polish it a bit more, but this > discussion suggests that people might be interested in reading it and > commenting on it. > > -- Matthias > > > _________________________________________________ > For list-related administrative tasks: > http://lists.racket-lang.org/listinfo/users >
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users