What makes DGD different?

DGD differs firstly in that it wasn't derived from a version of Lars Pensjö's original LPC driver. It is a complete rewrite of the driver by Dworkin from the ground up. In this way it has managed to get rid of a lot of baggage and legacy code which other LPC drivers still possess to some degree.

Another important difference is that DGD's default set up is to be disk based rather than memory based, unlike other LPC drivers. This means you can load a huge number of LPC objects without DGD taking up a lot of memory.

DGD also possesses (at driver level) the ability to perform a state dump, that is, to dump the state of all loaded objects to a file and restart the driver with them exactly as they were (with the exception of active TCP connections being closed during this process).

Finally, DGD allows changes in object LPC code to be realised in already existing objects by recompiling in situ, rather than having to destruct, recompile and then recreate the object. In this functionality DGD moves away from traditional LPC driver practice towards persistent database backed drivers such as Cold and MOO.