From attila.lendvai at gmail.com Thu Oct 25 12:15:59 2007 From: attila.lendvai at gmail.com (Attila Lendvai) Date: Thu, 25 Oct 2007 14:15:59 +0200 Subject: [fetter-devel] Re: [cffi-devel] Re: The results of your email commands In-Reply-To: <20071025110014.GC29340@colinux> References: <20071025110014.GC29340@colinux> Message-ID: > So the Verrazano project has been resurrected? Does it handle methods that recently i needed a few bindings and worked on it for a while. the core deserves a rewrite to use a non-sxml parser, preferably a parser that emits clos objects and use method dispatch to emit stuff. i'd even use contextl for hyper-customizability. it's long towards the end of my todo list... i'd grab a better xml parser (most probably cxml, also see http://lichteblau.blogspot.com/2007/08/new-data-structure-for-xml.html ) and rewrite the internals of verrazano. it's not a big work, but needs time and better understanding of c/c++ then i have offhand. i'll write up a TODO in the repo. but in spite of that, take a look at these example bindings, especially the oracle one and the opengl one: http://common-lisp.net/cgi-bin/darcsweb/darcsweb.cgi?r=fetter-verrazano;a=tree;f=/bindings > are both overloaded and overridden? Is it possible to subclass a C++ class as i've seen there was some minimal work on overloaded methods, but it's bitrotted since then. as i understand it, a proper ABI abstraction layer is completely missing from verrazano-runtime. > in Lisp via Verrazano? I started to develop support for both these features in > Swig; maybe I should switch to Verrazano. i really think you should. verrazano is superior in two aspects: 1) it's based on gcc-xml, and 2) it's written in lisp... :) sorry for the cross-post, -- attila From morrison at mak.com Fri Oct 26 15:35:34 2007 From: morrison at mak.com (John Morrison) Date: Fri, 26 Oct 2007 11:35:34 -0400 Subject: [fetter-devel] use of :device "/" causes issues in testsuite in SBCL+Linux? Message-ID: <200710261135.35123.morrison@mak.com> Hi All; I seem to be running into pathname issues for the temp files. Use of :device "/" seems to cause a "you do not have permission" error. If I elide that directive but leave :absolute "/tmp" then things seem to work. Google indicates I am not alone in seeing this problem. Briefly, it seems SBCL is not happy with the "/" as a device, although it has no heartburn with #P"//tmp/vzntemp.cpp" I am unfamiliar enough with pathname dogma to be afraid to point the finger at either Verrazano or SBCL. I am happy to do more exploration/experimentation in order to help generate either any fixes, workarounds, etc. Please advise. Particulars follow: --- cut here --- [jm at jmorrison ~]$ uname -a Linux jmorrison 2.6.9-55.0.6.EL #1 Tue Sep 4 21:10:58 EDT 2007 i686 athlon i386 GNU/Linux [jm at jmorrison ~]$ sbcl This is SBCL 1.0.4.109, an implementation of ANSI Common Lisp. More information about SBCL is available at . SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * --- cut here --- The Verrazano version is current as of today (via CVS rather than darcs - not sure if CVS & darcs are synched). Linux kernel is supposed to be vintage RHEL 4, and SBCL is not TOO obsolete. -jm -- ==== John Morrison ==== MAK Technologies Inc. ==== 68 Moulton Street, Cambridge, MA 02138 ==== http://www.mak.com/ ==== vox:617-876-8085 x115 ==== fax:617-876-9208 ==== jm at mak.com From nlamirault at gmail.com Thu Oct 25 14:41:21 2007 From: nlamirault at gmail.com (nicolas lamirault) Date: Thu, 25 Oct 2007 14:41:21 -0000 Subject: [fetter-devel] Re: [cffi-devel] Re: The results of your email commands In-Reply-To: References: <20071025110014.GC29340@colinux> Message-ID: thanks for your answer. i try Verrazano (from darcs repository), but i've got a problem with it too i make a past to resume this : http://paste.lisp.org/display/49805 2007/10/25, Attila Lendvai : > > So the Verrazano project has been resurrected? Does it handle methods that > > > recently i needed a few bindings and worked on it for a while. the > core deserves a rewrite to use a non-sxml parser, preferably a parser > that emits clos objects and use method dispatch to emit stuff. i'd > even use contextl for hyper-customizability. > > it's long towards the end of my todo list... i'd grab a better xml > parser (most probably cxml, also see > http://lichteblau.blogspot.com/2007/08/new-data-structure-for-xml.html > ) and rewrite the internals of verrazano. it's not a big work, but > needs time and better understanding of c/c++ then i have offhand. > > i'll write up a TODO in the repo. > > but in spite of that, take a look at these example bindings, > especially the oracle one and the opengl one: > > http://common-lisp.net/cgi-bin/darcsweb/darcsweb.cgi?r=fetter-verrazano;a=tree;f=/bindings > > > > are both overloaded and overridden? Is it possible to subclass a C++ class > > > as i've seen there was some minimal work on overloaded methods, but > it's bitrotted since then. as i understand it, a proper ABI > abstraction layer is completely missing from verrazano-runtime. > > > > in Lisp via Verrazano? I started to develop support for both these features in > > Swig; maybe I should switch to Verrazano. > > > i really think you should. verrazano is superior in two aspects: 1) > it's based on > gcc-xml, and 2) it's written in lisp... :) > > > sorry for the cross-post, > > -- > attila > _______________________________________________ > cffi-devel mailing list > cffi-devel at common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel > From jm at mak.com Fri Oct 26 15:11:51 2007 From: jm at mak.com (John Morrison) Date: Fri, 26 Oct 2007 15:11:51 -0000 Subject: [fetter-devel] use of :device "/" causes issues in testsuite in SBCL+Linux? Message-ID: <200710261111.33005.jm@mak.com> Hi All; I seem to be running into pathname issues for the temp files. Use of :device "/" seems to cause a "you do not have permission" error. If I elide that directive but leave :absolute "/tmp" then things seem to work. Google indicates I am not alone in seeing this problem. Briefly, it seems SBCL is not happy with the "/" as a device, although it has no heartburn with #P"//tmp/vzntemp.cpp" I am unfamiliar enough with pathname dogma to be afraid to point the finger at either Verrazano or SBCL. I am happy to do more exploration/experimentation in order to help generate either any fixes, workarounds, etc. Please advise. Particulars follow: --- cut here --- [jm at jmorrison ~]$ uname -a Linux jmorrison 2.6.9-55.0.6.EL #1 Tue Sep 4 21:10:58 EDT 2007 i686 athlon i386 GNU/Linux [jm at jmorrison ~]$ sbcl This is SBCL 1.0.4.109, an implementation of ANSI Common Lisp. More information about SBCL is available at . SBCL is free software, provided as is, with absolutely no warranty. It is mostly in the public domain; some portions are provided under BSD-style licenses. See the CREDITS and COPYING files in the distribution for more information. * --- cut here --- The Verrazano version is current as of today (via CVS rather than darcs - not sure if CVS & darcs are synched). Linux kernel is supposed to be vintage RHEL 4, and SBCL is not TOO obsolete. -jm -- ==== John Morrison ==== MAK Technologies Inc. ==== 68 Moulton Street, Cambridge, MA 02138 ==== http://www.mak.com/ ==== vox:617-876-8085 x115 ==== fax:617-876-9208 ==== jm at mak.com From eebeebee at gmail.com Mon Oct 29 04:08:39 2007 From: eebeebee at gmail.com (Eric Bergstrome) Date: Mon, 29 Oct 2007 00:08:39 -0400 Subject: [fetter-devel] gccxml-config and virtual-funcall on the mac Message-ID: <192b23510710282108n73b5dfb7r476a462aefcb543e@mail.gmail.com> Hi, I've been experimenting a little with verrazano this weekend to see if I can use it to inject more lisp into my work-day. My current environment is SBCL, OS X, x86, gcc; with gccxml 0.7.0, cffi 0.9.2, and the darcs head revision of verrazano as of a couple of days ago. So far I've been able to load in a trivial c++ dylib I made from xcode specifically for verrazano testing and use the generated bindings to call functions and methods. Here are a few adjustments that were needed: 1. I had to use the --gccxml-config option of gccxml to work around a problem where the automatic configuration was malformed. I got error messages saying something like "too many filenames". I used --debug to see the configuration options it was using and removed the malformed options. Put the touched up config in a file and used --gccxml-config as described in the gccxml --help output. The malformed options were mostly related to frameworks, so I may have to come back to this if I need access to functions defined in a framework. 2. The next thing I noticed was that my test bindings would not load without errors. The problem was in the use of VIRTUAL-FUNCALL. It seems that CFFI has changed FOREIGN-FUNCALL and added FOREIGN-FUNCALL-POINTER. After a little reading of the CFFI source, I came up with the following -- which seems to work but is by no means well-tested or well-understood: (defmacro virtual-funcall (pobj indx coff &body body) `(foreign-funcall-pointer (vtable-lookup ,pobj ,indx ,coff) nil , at body)) In particular, I don't understand the purpose of the options-argument of FOREIGN-FUNCALL-POINTER so I just pass nil. FOREIGN-FUNCALL effectively does the same when you only pass a function name rather than (name . options). With some more luck, I'll be building on hundreds of thousands of lines of c++ code, from the REPL, at work, during the day. Awesome! At a minimum, there's still name conversion, lisp wrappers, templates, and finalization to figure out. So I'll post more as I go. By the way, I don't see myself checking in lisp code at work any time soon. I'll be using it for prototyping, debugging, and various other odd jobs. Eric -------------- next part -------------- An HTML attachment was scrubbed... URL: