SCHEDULED CHANGES * Change dereferencing of pointers to :char and :unsigned-char types. May need to have ensure-char as routine to correctly handle setf expansions. CMUCL strtol is broken because of signedness. Right now, LW prefers unsigned and CMUCL prefers signed string arrays. * Need to clean signedness of allocate-foreign-string 19 Mar 2002 * Added size parameter to allocate-foreign-object. Creates an array of dimensions size. * Got array-2d example working with a 1-d array. * Cleaned strtol example 18 Mar 2002 * Documentation fixes (Erik Winkels) * Fixed missing '.' in CMUCL type declarations (Erik Winkels) 17 Mar 2002 * Changed deref-pointer so it always returns a character when called with a :char or :unsigned-char type * Removed function ensure-char as no longer needed * Added missing :byte specifier to Lispworks * Changed default string type in Lispworks to :unsigned-char which is the native type for Lispworks foreign-strings. * Reworked strtol to handle new character pointing method 16 Mar 2002 * Fixed return value in load-foreign-library (Thanks Erik Winkels), modified routine to accept pathnames as well as strings. * Fix documention with :pointer-void (Again, Erik Winkels) * Added missing type specifiers for CMUCL (Thanks a bunch, Erik!) 15 Mar 2002 * Finished basic skeleton of documentation. 14 Mar 2002 * Changed license to more liberal Lisp Lessor GNU Public License * Fixed problem with uffi.system absent from in distribution (Thanks John DeSoi) * Fixed compiler warnings 11 Mar 2002 * Changed def-type to def-foreign-type * Created new macro def-type to generate cl:deftype forms. Removed uffi-declare and uffi-slot-type as they are no longer necessary. 10 Mar 2002 * Modified input parameters to load-foreign-library * Added to documention * Changed parameter order in get-slot-value and deref-array 9 Mar 2002 * Added to documentation * Made Allegro CL array access more efficient * Changed def-routine name to def-function * Fixed bug in def-function for Lispworks] * Fixed error in +null-c-string-pointer+ name * Fixed error in (make-null-pointer) for Lispworks * Reworked Lispwork c-strings to be (* :char) rather than the implementation default of (* (:unsigned :char)) to be consistent with CMUCL. Bumped version to 0.2.0 because of change this change. * Renamed c-string to cstring to emphasize it as a basic type * Modified getenv.cl example to avoid name collison with LW * Modified compress.cl to setup output buffer as :unsigned*char * Added test-all-examples function. All routines tested okay with ACL, LW, and CMUCL 8 Mar 2002 * Added ZIP file output with LF->CRLF translations to distribution * Modified def-enum to use uffi:def-constant rather than cl:defconstant