69 views
Skip to first unread message

Sam Tobin-Hochstadt

unread,
Apr 25, 2018, 5:23:57 PM4/25/18
to d...@racket-lang.org
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

Stephen De Gabrielle

unread,
Apr 27, 2018, 10:01:50 AM4/27/18
to Sam Tobin-Hochstadt, d...@racket-lang.org
Hi Sam,

Will there be a similar process for other repositories included in the main distribution? (e.g. https://github.com/racket/drracket )

Kind regards, 

Stephen

--
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 racket-dev+...@googlegroups.com.
To post to this group, send email to racke...@googlegroups.com.
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.
--
Kind regards,
Stephen
--
Ealing (London), UK

Sam Tobin-Hochstadt

unread,
Apr 27, 2018, 10:05:54 AM4/27/18
to Stephen De Gabrielle, d...@racket-lang.org
On Fri, Apr 27, 2018 at 10:01 AM, Stephen De Gabrielle
<spdega...@gmail.com> wrote:
> Hi Sam,
>
> Will there be a similar process for other repositories included in the main
> distribution? (e.g. https://github.com/racket/drracket )

This plan is only for Typed Racket.

Sam
Reply all
Reply to author
Forward
0 new messages