Index: trunk/pois/NOTES
===================================================================
--- trunk/pois/NOTES	(revision 3792)
+++ trunk/pois/NOTES	(revision 3813)
@@ -103,2 +103,51 @@
 
 The file src/libpois.a has to exist
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+psArray* psArrayAlloc(psU32 nalloc)
+
+fails to initialise the array to NULLs (not specified in the SDRS)
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+"bool psListAdd(psList *list, int location, void *data);
+
+the first function, psListAdd, adds an entry to the list and returns a
+boolean giving the success or failure of the operation."
+
+(SDRS).  It'd be better to define
+
+psList *psListAdd(psList *list, int location, void *data);
+and to make
+    psListAdd(NULL, location, data);
+equivalent to
+    psListAlloc(data);
+
+That makes the code to append to a list simpler; instead of
+
+     list = NULL;
+     while(foo) {
+        ...
+	foo = psFooAlloc();
+	if(list == NULL) {
+	   list = psListAlloc(foo);
+	} else {
+	   bool ok = psListAdd(list, PS_LIST_TAIL, foo);
+	   assert(ok);
+	}
+	psFree(foo);
+     }
+
+I can simply write:
+
+     list = NULL;
+     while(foo) {
+        ...
+	foo = psFooAlloc();
+        psListAdd(list, PS_LIST_TAIL, foo);
+	psFree(foo);
+     }
+
+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
