This is a list of projects for CVS.  In general, unlike the things in
the TODO file, these need more analysis to determine if and how
worthwhile each task is.

I haven't gone through TODO, but it's likely that it has entries that
are actually more appropriate for this list.

0. Improved Efficency

* CVS uses a single doubly linked list/hash table data structure for
  all of its lists.  Since the back links are only used for deleting
  list nodes it might be beneficial to use singly linked lists or a
  tree structure.  Most likely, a single list implementation will not
  be appropriate for all uses.

  One easy change would be to remove the "type" field out of the list
  and node structures.  I have found it to be of very little use when
  debugging, and each instance eats up a word of memory.  This can add
  up and be a problem on memory-starved machines.

  Profiles have shown that on fast machines like the Alpha, fsortcmp()
  is one of the hot spots.

* Dynamically allocated character strings are created, copied, and
  destroyed thts for CVS.  In general, unlike the things in
the TODO file, these need more analysis to determine if and how
worthwhile each task is.

I haven't gone through TODO, but it's likely that it has entries that
are actually more appropriate for this list.

0. Improved Efficency

* CVS uses a single doubly linked list/hash table data structure for
  all of its lists.  Since the back links are only used for deleting
  list nodes it might be beneficial to use singly linked lists or a
  tree structure.  Most likely, a single list implementation will not
  be appropriate for all uses.

  One easy change would be to remove the "type" field out of the list
  and node structures.  I have found it to be of very little use when
  debugging, and each instance eats up a word of memory.  This can add
  up and be a problem on memory-starved machines.

  Profiles have shown that on fast machines like the Alpha, fsortcmp()
  is one of the hot spots.

* Dynamically allocated character strings are created, copied, and
  destroyed thts for CVS.  In general, unlike the things in
the TODO file, these need more analysis to determine if and how
worthwhile each task is.

I haven't gone through TODO, but it's likely that it has entries that
are actually more appropriate for this list.

0. Improved Efficency

* CVS uses a single doubly linked list/hash table data structure for
  all of its lists.  Since the back links are only used for deleting
  list nodes it might be beneficial to use singly linked lists or a
  tree structure.  Most likely, a single list implementation will not
  be appropriate for all uses.

  One easy change would be to remove the "type" field out of the list
  and node 