From ... From: Erik Naggum Subject: Re: Why no standard foreign language interface? Date: 2000/02/14 Message-ID: <3159561340687049@naggum.no>#1/1 X-Deja-AN: 585944974 References: <38A1C047.148D6466@raytheon.com> <3159120499145849@naggum.no> <38A1F68E.F218AB44@raytheon.com> <3159133748798780@naggum.no> <38A2A10B.50E08863@iname.com> <3159296652595081@naggum.no> <38A57F2A.F204753D@iname.com> <3159472938302521@naggum.no> <38A7EEC6.4207797D@pindar.com> mail-copies-to: never Content-Type: text/plain; charset=us-ascii X-Complaints-To: newsmaster@eunet.no X-Trace: oslo-nntp.eunet.no 950578544 15525 195.0.192.66 (15 Feb 2000 01:35:44 GMT) Organization: Naggum Software; +47 8800 8879 or +1 510 435 8604; fax: +47 2210 9077; http://www.naggum.no User-Agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.5 Mime-Version: 1.0 NNTP-Posting-Date: 15 Feb 2000 01:35:44 GMT Newsgroups: comp.lang.lisp * William Deakin | Ouch. For two reasons really. First the inherent evil in c++ library | naming. It needs 'putting to the sword.' I'm operating under the assumption that the name mangling thing is known to the compiler, and that `extern "C"' means the functions can refer to internal functions with mangled names, but export un-mangled names, that mere mortals can predict. the wrapper functions around "native" C++ functions can also do away with the braindamaged passing of pointers to structuresd classes, and use real argument lists. at least half of the problem with interfacing to C++ is having to deal with the incredible propensity of C++ programmers to make function calls "efficient" by using pointers and references and whatnot in a very chaotic way. such is what happens to people when they don't have lambda lists and multiple return values, but there's no reason to try to map such pain into the Common Lisp world. #:Erik