Ruby seems to me a very promising language, from the vague knowledge I
have of it. i'd like to make some suggestions for the near future. note
that i might not be aware of the latest changes.



 * implement and use a grand unified event loop for timers, select,
sockets, xlib, gtk, database, etc. [1-2 classes/files for the base;
adapt libraries so that they use that system]

 * Take the Point class from Ruby xlib. Make it const (Points as values,
not variables; remove any kinds of assignment to x and y). Include it in
the main distribution. A more general vector class (in the linear math
sense) might or might not be appropriate, i don't know. There are many,
many applications to this, and not only in graphics. [1-3 classes]

 * Build a CPAN-like system. This includes formalizing the repository of
contributed libraries and applications, but also building a client,
maintenance tools, and building a mirror list. [potentially many
classes; compare with the cpan tool]

 * Allow for multiple roots of libraries in an environment variable. There
seems to be a RUBYLIB_PATH or something, but it doesn't seem to be
documented. This is a very important feature and the CPAN-like system must
honor those as well. [0 classes]

 * For distributed applications, and even for local applications, a remote
method invocation mechanism (known as RPC or RMI) might be desirable. this
includes serialization, virtual objects by delegation, message streams,
callback on return, and authorization (specifying what you can do, not
what you cannot). Ideal for client-server, sandboxing, and for avoiding
threads (threadophobia) where event queues are not appropriate. [3-10
classes]

 * Extend the XLib wrapper to completeness (minus the redundant
procedures). This is a more of a personal interest, actually. [many small
classes in C code]



what do you think?





Mathieu Bouchard