1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- @node POSIX interface
- @chapter POSIX interface
- @i{(This chapter was derived from work copyrighted @copyright{}
- 1993--2005 by Richard Kelsey, Jonathan Rees, and Mike Sperber.)}
- @texonlyindent
- This chapter describes Scheme48's interface to POSIX C calls. Scheme
- versions of most of the C functions in POSIX are provided. Both the
- interface and implementation are new and likely to change significantly
- in future releases. The implementation may also contain many bugs.
- The POSIX bindings are available in several structures:
- @table @code
- @stindex posix-processes
- @item posix-processes
- @code{fork}, @code{exec}, and other process manipulation procedures
- @stindex posix-process-data
- @item posix-process-data
- procedures for accessing information about processes
- @stindex posix-files
- @item posix-files
- POSIX file system access procedures
- @stindex posix-i/o
- @item posix-i/o
- pipes and various POSIX I/O controls
- @stindex posix-time
- @item posix-time
- POSIX time operations
- @stindex posix-users
- @item posix-users
- user and group manipulation procedures
- @stindex posix-regexps
- @item posix-regexps
- POSIX regular expression construction and matching
- @stindex posix
- @item posix
- all of the above
- @end table
- Scheme48's POSIX interface differs from scsh [Shivers 94; Shivers 96;
- Shivers @etal{} 04] in several ways. The interface here lacks scsh's
- high-level constructs and utilities such as the process notation,
- @code{awk} facility, and parsing utilities. Scheme48 uses disjoint
- types for some values that scsh leaves as symbols or simple integers;
- these include file types, file modes, and user & group ids. Many of
- the names and other interface details are different as well.
- @menu
- @include posix/menu.texi
- @end menu
- @include posix/process.texi
- @include posix/signal.texi
- @include posix/proc-env.texi
- @include posix/user-grp.texi
- @include posix/host-ident.texi
- @include posix/fs.texi
- @include posix/time.texi
- @include posix/io.texi
- @include posix/regexp.texi
- @include posix/c-to-scm.texi
|