Previous Section Next Section Table of Contents Glossary Index

Chapter 15. Platform-specific notes

15.2. Unix/Posix/Darwin Features

Clozure CL has several convenience functions which allow you to make Posix (portable Unix) calls without having to use the foreign-function interface. Each of these corresponds directly to a single Posix function call, as it might be made in C. There is no attempt to make these calls correspond to Lisp idioms, such as setf. This means that their behavior is simple and predictable.

For working with environment variables, there are CCL::GETENV and CCL::SETENV.

For working with user and group IDs, there are CCL::GETUID, CCL::SETUID, and CCL::SETGID. To find the home directory of an arbitrary user, as set in the user database (/etc/passwd), there is CCL::GET-USER-HOME-DIR.

For process IDs, there is CCL::GETPID.

For the system() function, there is CCL::OS-COMMAND. Ordinarily, it is better - both more efficient and more predictable - to use the features described in Chapter 9, Running Other Programs as Subprocesses. However, sometimes you may want to specifically ask the shell to invoke a command for you.


Previous Section Next Section Table of Contents Glossary Index