The Racket project leadership [see signature at end] hasn't had a
chance to meet and discuss since RacketCon. When it does meet, we
should be able to offer a plan for both the future development of
Racket and the process of involving everyone in that development.

Let's start by reminding everyone that Racket has always played several
roles simultaneously. It has been a solid vehicle for

 - commercial developments,
 - research experiments,
 - education at several levels, and
 - hobbyists' pleasure. 

A vehicle for commercial software and educational delivery, in
particular, needs stability, so we have provided that to a high degree.

A research tool needs flexibility. We have accommodated flexibility,
and Racket has gained

 - a new garbage collector,
 - a syntax system seamlessly integrated with documentation,
 - a syntax-parse system that everybody migrates to,
 - a contract system that seeks its equal, and
 - a type system that accommodates almost all idioms.

None of this initially affected Racket's usability as a commercial or
educational vehicle, and all of this has benefited people in these
communities, eventually. When research didn't work out or was not
completed to a production level, such as

 - the initial experimentation with Honu,
 - our experiments with parallel futures, and
 - class initialization factories.

then we made sure it would not affect Racket's stability. You may not
even have heard about this efforts. On some occasions, we have broken
backwards compatibility (including in version 7.4), but always with a
transition path and generally with positive community feedback.

Moving from Racket to Racket2 involves two technical projects. We
consider the "consistency" and "genericity" vectors uncontroversial.
The syntax-design experiment is a different story. We are

 - likely to proceed with the experiment
 - because people seem interested 
 - and willing to spend significant resources on this project. 

It's important for the community to understand this last point. The
resource issue is why we can't just quietly perform some experiments
and then integrate it, like we have done before. Doing so would make
some of our work, our discussions, and our predictions easier, but it
would not be fair.

The syntax-design experiment will still be structured as independent of
the main Racket distribution. So, for quite some time, core Racket will
experience only the "consistency" and "genericity" changes. You
can count on Racket's stability and usability as you have for 20 years.

Because the syntax part in particular is an experiment, we do not know
exactly how Racket will look at the end. Matthew's messages have
offered some guesses. Contrary to those guesses, the syntax part of the
experiment might fail completely, and it might fail later rather than
sooner. And because of this, too, we want to engage the community for
the entire migration path.

We understand the discomfort that comes with uncertainly, but Racket
needs room to evolve. From our perspective, this is far from the first
point of uncertainly or contention during Racket's history. Our
experience is that Racket users stick around through experiments and
changes that are made with earnest effort and in good faith. We will
continue to act on these principles.

- Jay, Matthew, Matthias, Robby, and Sam

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-users/5d541d36.1c69fb81.c7c6a.4e79SMTPIN_ADDED_MISSING%40gmr-mx.google.com.

Reply via email to