Open issues in development:
++ (unspecified): A GODI package would be nice to promote community adoption.
+ (Cf_gadget): Write some documentation about polymorphic variants as channel
+ (Cf_poll): Alan Post writes:
- When converting [Cf_poll] to use kqueue, I noticed that even after
+ When converting [Cf_poll] to use kqueue, I noticed that even after
this conversion, the operations don't always scale that well:
In the same vein, cf_poll currently allows only one callback per fd;
- this seems sensible to me, but should probably be documented.
+ this seems sensible to me, but should probably be documented.
+ (Cf_rbtree): Document the complexity of the [incr_next] and [decr_next]
+ functions. The binary set functions could be improved for performance by
+ using recursive [join] and [split] functions.
+ (Cf_socket_p): No support for WIN32. SVR4 remains untested, but portability
- has been substantially improved. Suse Linux 9.0 works.
+ has been substantially improved. Suse Linux 9.0+ may still work. I don't
+ know anymore, since my Linux box died, I replaced it with Mac OS X
+ Server 10.4, and I haven't looked back.
+ (Cf_socket and cognates): Support for sendmsg() and recvmsg(), and associated
IPv4 and IPv6 protocol options that use the control plane for various
advanced features of the network protocol stack.
-+ (Cf_socket and cognates): Support for AF_
UNIX. To do this right, we need
++ (Cf_socket and cognates): Support for AF_. To do this right, we need
support for the control plane using sendmsg() and recvmsg(), so we can have
file descriptor and user credential passing-- pretty much the only good
- reasons to use AF_UNIX.
+ reasons to use AF_LOCAL other than to communicate with other programs that
+ use them instead of AF_INET on the loopback interface for no good reason.
+ (Cf_tai64_p, Cf_tai64n_p): No support for 32-bit environments where the C
compiler does not offer support for 64-bit integers with
+ 'unsigned long long'.
+ (Cf_tai64,Cf_tai64n,Cf_stdtime): The leap seconds table is currently
hard-coded into the .ml file here. What we really need is an active daemon
The rest we can probably defer to the nice people working on Camomile.
+ (Cf_nameinfo): There should be a function for acquiring an 'en-US' localized
- string corresponding to a
n unresolved _t value.
+ string corresponding to a unresolved.
+ (Cf_gadget): The scheduler might benefit from optimization for scalability.
After guard is evaluated once and found to be pending, it should be
contains it. If no wire is gated simultaneously in more than one guard,
then the guard queue will never have more than one entry in it, and the
scheduler will offer O(log N) complexity, where N is the number of
- simultaneously pending wires.
+ simultaneously pending wires.