Scieneer Common Lisp 1.3.9 online documentation

alien:with-alien bindings &body body[Macro]

Establish some local alien variables. Each binding is of the form:

var type [ allocation ] [ initial-value | external-name ]

allocation should be one of:

:local (the default)
The alien is allocated on the stack, and has dynamic extent.
:static
The alien is allocated on the heap, and has infinate extent. The alien is allocated at load time, so the same piece of memory is used each time this form executes.
:extern
No alien is allocated, but var is established as a local name for the external alien given by external-name.