On Thu, 7 Jun 2001, Patrick Dughi wrote: > Eventually, I'll put out a patch using this functionality to - as I've > said manymanymany times before - allow you to put most important world > data into this form (mob, zone, room, obj, etc). Makes life easier > for insertion, removal, as well as being able to make an arbitrairy > number of arbitrailarly sized zones with little unnecessary overhead. Have I asked this before? What advantage does using a balanced tree have over using a hash table as pertains to CircleMUD? We have a large mostly static data set... It seems like we should be able to hash based on any number of criteria and get an efficient and easy implementation of the world. I don't think we need to be able to walk the data set in order, so I can't help but get the feeling trees are a bit overkill. Naturally, I'm not saying, "You shouldn't be doing this," or that, "There's no reason to do this." I'm just curious about why you chose a relatively complex, if well-defined, algorithm over hash tables or the tree-comparable (but sparsely documented) skip lists? > If you're wondering why I wrote it, it's because all the good > libraries are licenced in such a way as to conflict with > CircleMUD/DikuMUD license. ...if and only if you distribute them in a combined form. The patch to CircleMUD would not include any of the GPL'd code (only calls to it). The patch is not under the GPL simply because it calls functions in an LGPL library and neither is it under the CircleMUD license by virtue of its intended use or its eventual combination with CircleMUD. Therefore your code is your code, which can be licensed however you wish. Your patch is distributed separate libavl (or what have you), the appropriate version of libavl is provided on the FTP site for use with your patch, someone downloads both, installs both as necessary, and since the end-product is not being publically distributed, the GPL/LGPL never kicks in on it and we've circumvented the licensing restrictions. -- Daniel A. Koepke (dak), dkoepke@circlemud.org Caveat emptor: I say what I mean and mean what I say. Listen well. Caveat venditor: Say what you mean, mean what you say. Say it well. -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/05/01 PST