Thread overview
object serialization any time soon?
Oct 28, 2003
no
Oct 28, 2003
shinichiro.h
Oct 28, 2003
Ilya Minkov
Oct 28, 2003
no
Oct 28, 2003
no
Oct 28, 2003
no
Nov 01, 2003
Walter
October 28, 2003
I think object persistence is the last missing feature that keep me from jumping to D.  Walter, what's your roadmap for this?


BTW, follow the D link from (http://www.digitalmars.com/d/index.html)

http://www.functionalfuture.com/d/

why D is so bad on the follwing 4 tests in the middle? especially the hashes?

MSVC7  GCC    D      C#
fibo (42)       6.597  6.762  5.910  8.051
-------------------------------------------
ackermann (12)  3.005  2.929  6.064  9.017 hash (1000000)  1.954  2.653 14.929  3.013 hash2 (2000)    4.440  4.059 32.162 21.041 matrix (100000) 7.039  7.051 16.293 10.782
------------------------------------------
ary3 (1000000)  9.567 10.209  9.255  9.097

It also looks strange: D is quite good on fibo, but bad on ackermann; again good at array, but bad on matrix.

Walter, has you got time to look at these issues?



October 28, 2003
> why D is so bad on the follwing 4 tests in the middle? especially the hashes?

I also thought the hash's benchmark strange, and I checked it.

http://user.ecc.u-tokyo.ac.jp/~s31552/wp/d/hashbench2_en.rd.html

-------
 shinichiro.h

October 28, 2003
no@where.no wrote:
> I think object persistence is the last missing feature that keep me from jumping
> to D.  Walter, what's your roadmap for this?

I suggest you go to www.opend.org and download DLI, the old D for Linux  compiler. In the source of its Phobos, you will find pickle.d - take it and see if you can make it work with current DMD versions.

-eye

October 28, 2003
Thanks for the pointer.  I'm wondering why it's not included in the standard distribution? since both win32 and linux version are now distributed togather.

Also, I just quickly browsed the code, and find the dump(obj) function is using a linear search.  Will this be too slow, should a hash-table be used here?

/* Store the object */
void dump (Object object)
{
dumpClass (object.classinfo); /* Save the type */

/* See if a handle for it already exists */
for (int c = 0; c < objects.length; c ++)
{
if (objects [c] === object)
{
jar.uintSave (c + 1);
return;
}
}

/* Not found, output it */
objects ~= object; /* Register the object */
jar.uintSave (objects.length); /* Save the handle */
dumpCoreClass (object.classinfo, object); /* Save the object data */
}


In article <bnlvbs$2t0e$1@digitaldaemon.com>, Ilya Minkov says...
>
>no@where.no wrote:
>> I think object persistence is the last missing feature that keep me from jumping to D.  Walter, what's your roadmap for this?
>
>I suggest you go to www.opend.org and download DLI, the old D for Linux
>  compiler. In the source of its Phobos, you will find pickle.d - take
>it and see if you can make it work with current DMD versions.
>
>-eye
>


October 28, 2003
Thanks for the pointer.  I'm wondering why it's not included in the standard distribution? since both win32 and linux version are now distributed togather.

Also, I just quickly browsed the code, and find the dump(obj) function is using a linear search.  Will this be too slow, should a hash-table be used here?

/* Store the object */
void dump (Object object)
{
dumpClass (object.classinfo); /* Save the type */

/* See if a handle for it already exists */
for (int c = 0; c < objects.length; c ++)
{
if (objects [c] === object)
{
jar.uintSave (c + 1);
return;
}
}

/* Not found, output it */
objects ~= object; /* Register the object */
jar.uintSave (objects.length); /* Save the handle */
dumpCoreClass (object.classinfo, object); /* Save the object data */
}


In article <bnlvbs$2t0e$1@digitaldaemon.com>, Ilya Minkov says...
>
>no@where.no wrote:
>> I think object persistence is the last missing feature that keep me from jumping to D.  Walter, what's your roadmap for this?
>
>I suggest you go to www.opend.org and download DLI, the old D for Linux
>  compiler. In the source of its Phobos, you will find pickle.d - take
>it and see if you can make it work with current DMD versions.
>
>-eye
>


October 28, 2003
Thanks for the pointer.  I'm wondering why it's not included in the standard distribution? since both win32 and linux version are now distributed togather.

Also, I just quickly browsed the code, and find the dump(obj) function is using a linear search.  Will this be too slow, should a hash-table be used here?

/* Store the object */
void dump (Object object)
{
dumpClass (object.classinfo); /* Save the type */

/* See if a handle for it already exists */
for (int c = 0; c < objects.length; c ++)
{
if (objects [c] === object)
{
jar.uintSave (c + 1);
return;
}
}

/* Not found, output it */
objects ~= object; /* Register the object */
jar.uintSave (objects.length); /* Save the handle */
dumpCoreClass (object.classinfo, object); /* Save the object data */
}


In article <bnlvbs$2t0e$1@digitaldaemon.com>, Ilya Minkov says...
>
>no@where.no wrote:
>> I think object persistence is the last missing feature that keep me from jumping to D.  Walter, what's your roadmap for this?
>
>I suggest you go to www.opend.org and download DLI, the old D for Linux
>  compiler. In the source of its Phobos, you will find pickle.d - take
>it and see if you can make it work with current DMD versions.
>
>-eye
>


November 01, 2003
<no@where.no> wrote in message news:bnkip1$140o$1@digitaldaemon.com...
>
> I think object persistence is the last missing feature that keep me from
jumping
> to D.  Walter, what's your roadmap for this?

I don't have one for that yet, sorry.

> BTW, follow the D link from (http://www.digitalmars.com/d/index.html)
>
> http://www.functionalfuture.com/d/
>
> why D is so bad on the follwing 4 tests in the middle? especially the
hashes?

I don't know. I'll have to check it out.

> MSVC7  GCC    D      C#
> fibo (42)       6.597  6.762  5.910  8.051
> -------------------------------------------
> ackermann (12)  3.005  2.929  6.064  9.017
> hash (1000000)  1.954  2.653 14.929  3.013
> hash2 (2000)    4.440  4.059 32.162 21.041
> matrix (100000) 7.039  7.051 16.293 10.782
> ------------------------------------------
> ary3 (1000000)  9.567 10.209  9.255  9.097
>
> It also looks strange: D is quite good on fibo, but bad on ackermann; again good at array, but bad on matrix.
>
> Walter, has you got time to look at these issues?
>
>
>