dcollections 1.0 and 2.0a beta released

superdan super at dan.org
Fri May 21 10:50:47 PDT 2010


== Quote from Steven Schveighoffer (schveiguy at yahoo.com)'s article
> superdan Wrote:
> > == Quote from Steven Schveighoffer (schveiguy at yahoo.com)'s article
> > > superdan Wrote:
> > > > == Quote from Steven Schveighoffer (schveiguy at yahoo.com)'s article
> > > > > Is there some other reason to use structs besides copy construction?
> > > > > -Steve
> > > >
> > > > memory management n shit. with a struct u can use refcounting n malloc n
realloc n
> > > > shit. still stays a reference type. nothing gets fucked up.
> > > This is not necessary with purely memory-based constructs -- the GC is your
> > friend.  The custom allocator ability in dcollections should provide plenty of
> > freedom for memory allocation schemes.
> >
> > how do u set up yer custom allocator to free memory? u cant tell when its ok.
> > copying refs iz under da radar. dats my point.
> It frees an element's memory when the element is removed from the container.
The container itself is managed by the GC.
> >
> > > > den there's all that null ref shit. with a class u have
> > > >
> > > > void foo(container!shit poo)
> > > > {
> > > >     poo.addElement(Shit(diarrhea));
> > > > }
> > > >
> > > > dat works with struct but don't work with motherfucking classes. u need to
write.
> > > >
> > > > void foo(container!shit poo)
> > > > {
> > > >     if (!poo) poo = new container!shit; // fuck dat shit
> > > >     poo.addElement(Shit(diarrhea));
> > > > }
> > > >
> > > > u feel me?
> > > It doesn't work.
> >
> > wut? it don't work? whaddaya mean it dun work? is you crazy? what dun work? maybe
> > therez sum misundercommunication.
> void foo(int[int] x)
> {
>    x[5] = 5;
> }
> void main()
> {
>    int[int] x;
>    foo(x);
>    assert(x[5] == 5); // fails
> }
> -Steve

wrote a long post but it got lost. shit. bottom line dats a bug in dmd or phobos.


More information about the Digitalmars-d-announce mailing list