1.0.19.16: derive the type of (AREF (THE STRING X) Y) as CHARACTER
[sbcl.git] / contrib / sb-posix / TODO
1 1) optional arguments (e.g. OPEN)
2
3 3) partial list of section 2 manpages from Debian Linux box: functions
4 we may want to consider interfaces for.  Some of the obviously
5 unnecessary/dangerous functions have been deleted from this list, as
6 have the ones we've already got bindings for, but even so, inclusion
7 in this list does _not_ imply we've definitely decided something needs
8 adding.
9
10 FD_CLR FD_ISSET FD_SET FD_ZERO accept acct adjtime adjtimex bdflush
11 bind break brk cacheflush capget capset clone connect
12 create_module delete_module execve exit flock
13 fstatfs ftime getcontext getdents getdomainname
14 getdtablesize getgroups gethostid gethostname getitimer 
15 getpeername getpriority getrlimit getrusage getsockname getsockopt
16 gettimeofday gtty idle init_module ioctl_list ioperm iopl listen
17 llseek lock madvise mincore mknod mlock
18 modify_ldt mount mprotect mpx mremap msgctl msgget msgop msgrcv msgsnd
19 munlock nanosleep nice pause poll
20 prctl pread prof profil pselect ptrace pwrite query_module quotactl
21 read readv reboot recv recvfrom recvmsg
22 sbrk sched_get_priority_max sched_get_priority_min sched_getparam
23 sched_getscheduler sched_rr_get_interval sched_setparam
24 sched_setscheduler sched_yield select semctl semget semop send
25 sendfile sendmsg sendto setcontext setdomainname setgroups sethostid
26 sethostname setitimer setpriority setrlimit setsockopt
27 settimeofday sgetmask shmat shmctl shmdt shmget shmop shutdown
28 sigaction sigaltstack sigblock siggetmask sigmask signal sigpause
29 sigpending sigprocmask sigreturn sigsetmask sigsuspend sigvec socket
30 socketcall socketpair ssetmask statfs stime stty swapoff swapon
31 syscalls sysctl sysfs sysinfo times
32 ulimit umount uname ustat vfork vhangup wait3
33 wait4 write writev
34
35 4) In the spec but not implemented: 
36
37 - buffers
38
39 5) fill out TODO/TBD stuff in the spec
40
41 6) sort out exports.  All interface functions, all constants, all
42   type coercion functions
43
44 7) variable-length functions > like execvp()? Do they take a list, or
45 vector or either? "Either" sounds good. Which is to say, a sequence.
46
47 8) In some cases, errno is used for "normal" exit, not just for
48 exceptional exit. For example, EINTR, EAGAIN, reading or writing big
49 buffers, etc... It may be more efficient to just compare two integers
50 than going thru an exception mechanism that will be invoked everytime.
51
52 9) proper alien definitions of structures [ possibly an sb-grovel
53 problem, but the way we define calls exposes the problem -- see
54 readdir() ] [ isn't this done? ]
55
56 10) some functions (e.g. fdatasync, putenv) have a return value which
57 is purely an error indicator.  Currently we're returning the 0 on
58 success, but maybe it would make more sense for them to return
59 (values).