-(defmacro deref-byte-array (array position)
- #+cmu `(alien:deref ,array ,position)
- #+lispworks `(fli:dereference ,array :index ,position)
- #+allegro `(ff:fslot-value-typed '(:array :byte) :c ,array ,position)
-)
-|#
+
+(defmacro with-foreign-objects (bindings &rest body)
+ (if bindings
+ `(with-foreign-object ,(car bindings)
+ (with-foreign-objects ,(cdr bindings)
+ ,@body))
+ `(progn ,@body)))
+
+
+