[racket-dev] proposal: `data' collection
On Wed, Jun 23, 2010 at 5:31 PM, Eli Barzilay <eli at barzilay.org> wrote:
> On Jun 23, Sam Tobin-Hochstadt wrote:
>> At the Northeastern PLT lunch today, I proposed adding a top-level
>> `data' collection, for all manner of data structures. People here
>> thought it was a good idea, so I'm proposing it to the whole group.
>
> (The name sounds iffy to me.)
The name is (a) short (b) descriptive and (c) has precedent in other
languages [1].
>> Definitely candidates:
>> Hari Prashanth's functional data structure library (which he's been
>> working on with me)
>> `unstable/skip-list' (by Ryan)
>> `unstable/interval-map' (by Ryan)
>> `unstable/queue' (by Carl)
>>
>> Possible candidates (these would still be provided by `racket' if they
>> are currently):
>> `racket/dict'
>> `racket/set'
>> `racket/list'
>> `racket/vector'
>> `unstable/{list,dict,set,hash}'
>> `unstable/sexp-diff'
>
> * I went over one file in unstable, and had a quick look through a few
> others. Assuming that this will be a fundamental collection, there
> is much work needed to get the unstable stuff to an appropriate
> level.
Unfortunately, our project doesn't have a long history of code review.
I think we shouldn't wait for that to materialize before doing
things, but obviously more review is good.
> * Re the functional structures, I'm skeptical about adding a big ball
> of code that was never used. I'd like it to have more public time
> before it's added. (Eg, planet.)
I don't think we should add any code to the core before it's been
looked at some. But we add new code that's never been used all the
time (racket/set, for example).
> * The `racket/*' stuff needs to be where it is since it's part of the
> current core. (It can still be reprovided through the new
> collection.) If the definition of the core changes to include the
> new collection, then there are more restrictions on it like not
> depending on typed scheme.
To clarify, I'm proposing that this be a part of the "core" (which I
think just means "the things in the Racket Textual" distribution). A
library of useful data structures certainly seems worthy of the core
to me. Obviously, that comes with restrictions.
> (And this is due to how things are now,
> where typed scheme is not part of the core.)
Personally, I would like to (eventually) have Typed Scheme be a part
of the "core", but I think that's a discussion that can wait.
[1] http://www.haskell.org/ghc/docs/6.12.2/html/libraries/
--
sam th
samth at ccs.neu.edu