glib/TODO
EST 1999 Jeff Garzik ee3d2a3d4d New stack ADT implementation.
Fri Jan 22 02:06:10 EST 1999  Jeff Garzik  <jgarzik@pobox.com>

        * gstack.c:
        New stack ADT implementation.

        * glib.h:
        Add g_stack function prototypes and macros.
1999-01-22 07:08:35 +00:00

62 lines
1.6 KiB
Plaintext

TODO for GLib 1.3:
* alloca support, with replacement if native alloca not available
- check out gettext's implementation
--------------------------------------------------------------------
Ideas for GLib 1.3:
(jgarzik)
* wrap i18n routines on various platforms; wrap gettext libintl as a
fallback
* benchmark garbage-collecting malloc (not for inclusion into GLib, just
general knowledge)
* coneill's optimized MD5 checksum routine, maybe some other checksums
too, encapsulated in a GChecksum. Allow choice between a few built-in
checksum functions, MD5, CRC, ?, or a user-specified checksum
function pointer.
* New ADTs: trie, skip list, red-black tree, queue (below), stack (below)
* decent random numbers (really a portability thing)
* 'make check' tests one per module, plus bug report regression tests
and such
* primitive memory leak checking by g_malloc, g_free
* alloca-based convenience macros, counterparts to:
g_new, g_new0, g_strdup, g_strndup, g_strconcat, ???
* GStack, opaque ADT with interface:
stack = g_stack_new ();
count = g_stack_size (stack);
g_stack_push (stack, data);
data = g_stack_pop (stack);
slist = g_stack_get_list (stack);
* GQueue, opaque ADT with interface:
q = g_queue_new ();
count = g_queue_size (q);
q_queue_push_front (q, data);
q_queue_push_back (q, data);
data = q_queue_pop_front (q);
data = q_queue_pop_back (q);
#define q_queue_push q_queue_push_back
#define q_queue_pop q_queue_pop_front
list = g_queue_get_list (q);
#define g_queue_get_front g_queue_get_list
list_end = g_queue_get_back (q);