Lisp names for C names - SBCL 1.0.31 User Manual
Description: SBCL 1.0.31 User Manual

Next: Types, Up: sb-posix

#### 16.3.1 Lisp names for C names

All symbols are in the `SB-POSIX` package. This package contains a Lisp function for each supported Unix system call or function, a variable or constant for each supported Unix constant, an object type for each supported Unix structure type, and a slot name for each supported Unix structure member. A symbol name is derived from the C binding's name, by (a) uppercasing, then (b) removing leading underscores (`#\_`) then replacing remaining underscore characters with the hyphen (`#\-`). The requirement to uppercase is so that in a standard upcasing reader the user may write `sb-posix:creat` instead of `sb-posix:|creat|` as would otherise be required.

No other changes to “Lispify” symbol names are made, so `creat()` becomes `CREAT`, not `CREATE`.

The user is encouraged not to `(USE-PACKAGE :SB-POSIX)` but instead to use the `SB-POSIX:` prefix on all references, as some of the symbols symbols contained in the SB-POSIX package have the same name as CL symbols (`OPEN`, `CLOSE`, `SIGNAL` etc).