From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: joakim@verona.se Newsgroups: gmane.emacs.devel Subject: Re: FFI Date: Mon, 19 Apr 2010 09:31:09 +0200 Message-ID: References: <87sk6tonv8.fsf@mid.deneb.enyo.de> <20100418053925.GA7294@tomas> <878w8lb2s0.fsf_-_@mail.jurta.org> <8739yt9nks.fsf@mid.deneb.enyo.de> <878w8k8q57.fsf@mid.deneb.enyo.de> <868w8kosie.fsf@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1271677776 20813 80.91.229.12 (19 Apr 2010 11:49:36 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 19 Apr 2010 11:49:36 +0000 (UTC) Cc: Juri Linkov , Florian Weimer , emacs-devel@gnu.org To: Zajcev Evgeny Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Apr 19 13:49:34 2010 connect(): No such file or directory Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1O3pTo-0000oi-Lf for ged-emacs-devel@m.gmane.org; Mon, 19 Apr 2010 13:49:32 +0200 Original-Received: from localhost ([127.0.0.1]:48900 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O3p0V-0005fM-In for ged-emacs-devel@m.gmane.org; Mon, 19 Apr 2010 07:19:15 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O3ooq-0006Yp-5B for emacs-devel@gnu.org; Mon, 19 Apr 2010 07:07:12 -0400 Original-Received: from [140.186.70.92] (port=58795 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O3oon-0006Xq-1p for emacs-devel@gnu.org; Mon, 19 Apr 2010 07:07:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O3lS5-0001BV-NM for emacs-devel@gnu.org; Mon, 19 Apr 2010 03:31:58 -0400 Original-Received: from iwfs.imcode.com ([82.115.149.64]:35407 helo=gate.verona.se) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O3lS0-00016z-Vr for emacs-devel@gnu.org; Mon, 19 Apr 2010 03:31:25 -0400 Original-Received: from localhost.localdomain (IDENT:1005@localhost [127.0.0.1]) by gate.verona.se (8.13.4/8.11.4) with ESMTP id o3J7V9JL027757; Mon, 19 Apr 2010 09:31:09 +0200 In-Reply-To: <868w8kosie.fsf@gmail.com> (Zajcev Evgeny's message of "Mon, 19 Apr 2010 10:39:37 +0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.90 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4-2.6 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:123875 Archived-At: Zajcev Evgeny writes: > Florian Weimer writes: > >> * Zajcev Evgeny: >> >>> As you can see there are only strings, and numbers (boolean type is >>> done via dinamic type/value translators implemented in ffi) >> >> Numbers are problematic because SQLite can return 64 bit signed >> integers. AFAICS, those are readily represented on SXEmacs, but not >> on Emacs. > > that won't be a problem to get it working after all, you can represent > ffi data on lisp level as you want it to, using types translators. > Types translator is lisp level thingie.. > > my interest is to have compatible FFI in GNU Emacs and (S)XEmacs (at > least on high level, read lisp level), so two communities could reuse > bindings. SXEmacs already have working and pretty tested interfaces > to: > > - Xlib > - curl > - sqlite > - Wand > - libgcrypt > > and few others. > > Wand bindings enabled us to implement pretty astonishing image > viewer/editor inside SXEmacs, it can even do red-eye reduction on > production level and mordern liquid rescale :) - to get more about, it > click on: > > http://sxemacs-en.blogspot.com/2009/12/wand-mode-image-viewer.htmland > http://sxemacs-en.blogspot.com/2009/12/wand-mode-new-features_27.html > > bindings implementations mostly does not use any SXEmacs specials, the > code is very common and I'm pretty sure it can be used in GNU Emacs > without much problems. > > We are also working on some complex, but interesting bindings to > libtelepathy in order to create tool for multiprotocol IM and > collaborative editing in SXEmacs. This is pretty time consuming task > and we surely need a help, if GNU Emacs community will have same FFI > API then we could unite our efforts to enhance Emacsen.. > > As I noticed before, I can port and maintain FFI implementation for > GNU Emacs, but i need some kind of guaranties that community will > accept it, so my work won't be a waste of time.. My understanding is that a FFI for Emacs must comply to a interface, which is not yet defined. This interface will probably be similar to the plugin api in GCC. Basically, the dll to be loaded must export a GPL compliance symbol. It ought to be possible to add this check to your FFI implementation, when running in Emacs, even if you do not use it in SXEmacs. > thanks -- Joakim Verona