Racketeers, tl;dr: We’re adding a lightweight RFC process to design and document changes to Typed Racket, and you can see the first one, on prefab structs, here: https://github.com/racket/typed-racket/pull/699
Recently in Typed Racket, we’ve realized that the process for documenting high-level design is lacking. Missing this leads to several problems -- not knowing why things were done a particular way in the past, not having enough written down when discussing new features we might add, and needing to reference academic papers to understand how the software works. Additionally, not putting enough thought into design up front leads to unpleasant surprises down the road. To address this, we’re planning to adopt an RFC process, pioneered by communities like Rust, Python, and Ember. This means that before we make a big change to Typed Racket, we plan to write an RFC document describing the change, laying out rationale, and discussing alternatives. This won’t be needed for small bug-fixes and other straightforward improvements, but will be important for substantial changes, such as those that involve new type system features or potential problems for backwards compatibility. You can see an example RFC, about fixing the currently-broken treatment of prefab structures, here: https://github.com/racket/typed-racket/pull/699 as well as a template for future RFCs and a README about the process here: https://github.com/racket/typed-racket/tree/master/rfcs Hopefully, this will only add a little more process upfront, since we’re already thinking about all of these questions when coming up with new features, while making a significant difference in the maintainability and correctness of Typed Racket going forward. I'm happy to answer questions about this, or to change the process in various ways to make it work well for Typed Racket. Sam -- You received this message because you are subscribed to the Google Groups "Racket Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-dev/CAK%3DHD%2BYgZpyN08oJ0DuF0FiO4Ub9zUbLutuy0qE4a8HncKe38g%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
