Re: foreign strings and Unicode?

Kevin Rosenberg <kevin-HJRc7zDS/[email protected]> Thu, 11 Apr 2002 14:01:22 -0600 (MDT)
Newsgroups gmane.lisp.uffi.general
Message-ID <[email protected]>
> I'd like to share ideas on how to deal with Unicode in foreign strings.

I don't have any significant experience with Unicode, but I can try to
work with you or others to add it to UFFI.

> Lispworks does it, CMUCL doesn't have Unicode - others?

ACL has it.

> What could a function declaration look like, which accepts (what format
> of) unicode strings?

Sorry, I don't have enough practical experience to venture an opinion.

> UFFI has http://uffi.med-info.com/manual/r1286.htm
>  convert-from-foreign-string foreign-string &key length null-terminated-p => string
> but that's not enough to deal with various unicode formats.

Agreed, I haven't made any attempts yet to support it.

> BTW, http://uffi.med-info.com/manual/r1520.htm
> find-foreign-library names directories & drive-letters types => path
>    probably missing / bad conversion: ^^^ &key
> DRIVE-LETTERS doesn't look portable at all.

Yes, it should be &key -- thanks!

Drive-letters is portable in the sense that it is ignored on non-Win32
platforms. So, you can safely use it and have it ignored on non-Win32
systems. Different Lisp implementations using drive letters in different
pathname fields (LW==host, ACL/CLISP==device). Adding this key allows that
difference to be hidden from the UFFI users. For example, my CLSQL library
uses FIND-FOREIGN-LIBRARY with a number of search paths that will find
the foreign libraries on both Unix and Win32 systems.

I've traveling now, but I'll look more at Unicode when I return home at
the end of the month. 

Kevin