From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stephen Leake Newsgroups: gmane.emacs.devel Subject: Re: Dynamic loading progress Date: Fri, 13 Feb 2015 15:48:07 -0600 Message-ID: <85twypiiug.fsf@stephe-leake.org> References: <85oapy5kt6.fsf@stephe-leake.org> <83y4oiiw81.fsf@gnu.org> <838ugdf251.fsf@gnu.org> <54D80098.3020209@cs.ucla.edu> <54D85304.1030600@cs.ucla.edu> <54D9AC29.2020603@cs.ucla.edu> <54DA8539.1020905@cs.ucla.edu> <87zj8ktq8f.fsf@lifelogs.com> <54DD6413.1000403@cs.ucla.edu> <83wq3m436s.fsf@gnu.org> <54DDEB4D.5040300@dancol> <83egpt4zz6.fsf@gnu.org> <54DE12E9.5040606@dancol.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1423864121 4349 80.91.229.3 (13 Feb 2015 21:48:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 13 Feb 2015 21:48:41 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Feb 13 22:48:31 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1YMO6A-00052G-9c for ged-emacs-devel@m.gmane.org; Fri, 13 Feb 2015 22:48:30 +0100 Original-Received: from localhost ([::1]:57571 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YMO69-0005Tp-Km for ged-emacs-devel@m.gmane.org; Fri, 13 Feb 2015 16:48:29 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51973) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YMO66-0005Tj-AS for emacs-devel@gnu.org; Fri, 13 Feb 2015 16:48:27 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YMO62-00053s-9D for emacs-devel@gnu.org; Fri, 13 Feb 2015 16:48:26 -0500 Original-Received: from gproxy2-pub.mail.unifiedlayer.com ([69.89.18.3]:51337) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1YMO62-00053Y-21 for emacs-devel@gnu.org; Fri, 13 Feb 2015 16:48:22 -0500 Original-Received: (qmail 9827 invoked by uid 0); 13 Feb 2015 21:48:18 -0000 Original-Received: from unknown (HELO cmgw2) (10.0.90.83) by gproxy2.mail.unifiedlayer.com with SMTP; 13 Feb 2015 21:48:18 -0000 Original-Received: from host114.hostmonster.com ([74.220.207.114]) by cmgw2 with id rxoE1p00p2UdiVW01xoHQf; Fri, 13 Feb 2015 14:48:18 -0700 X-Authority-Analysis: v=2.1 cv=NPZGpSKg c=1 sm=1 tr=0 a=CQdxDb2CKd3SRg4I0/XZPQ==:117 a=CQdxDb2CKd3SRg4I0/XZPQ==:17 a=DsvgjBjRAAAA:8 a=f5113yIGAAAA:8 a=TeMFXEv2S7AA:10 a=9i_RQKNPAAAA:8 a=hEr_IkYJT6EA:10 a=jrwKn-8xaegA:10 a=0HtSIViG9nkA:10 a=KxCsr730AAAA:8 a=mDV3o1hIAAAA:8 a=ESv0IbsQvLrigs0OCDsA:9 Original-Received: from [70.94.38.149] (port=50960 helo=takver) by host114.hostmonster.com with esmtpsa (TLSv1.2:AES128-GCM-SHA256:128) (Exim 4.82) (envelope-from ) id 1YMO5u-0007Cv-Nd for emacs-devel@gnu.org; Fri, 13 Feb 2015 14:48:14 -0700 In-Reply-To: <54DE12E9.5040606@dancol.org> (Daniel Colascione's message of "Fri, 13 Feb 2015 07:06:17 -0800") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (windows-nt) X-Identified-User: {2442:host114.hostmonster.com:stephele:stephe-leake.org} {sentby:smtp auth 70.94.38.149 authed with stephen_leake@stephe-leake.org} X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 69.89.18.3 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:183031 Archived-At: Daniel Colascione writes: > On 02/13/2015 07:01 AM, Eli Zaretskii wrote: >>> Date: Fri, 13 Feb 2015 04:17:17 -0800 >>> From: Daniel Colascione >>> CC: emacs-devel@gnu.org >>> >>> That's why this whole module effort is misguided and dangerous. With a >>> CFFI-style approach to loading code dynamically, shared modules don't >>> need to know anything about Emacs internal structure, so there are no >>> ABI or source compatibility issues. >>> >>> I still think a CFFI port would be less work than trying to extract a >>> stable Emacs internals API that modules can include. >> >> I don't understand how CFFI would solve the problem, at least not all >> of it. We'd still need to write code to allow modules create Lisp >> objects, right? That code would still be Emacs version dependent, >> right? What am I missing? > > In a CFFI world, modules don't know about lisp at all. Lisp code > describes the signatures of functions in loaded modules and calls into > the automatically generated wrapper functions. The called code has no > idea it's being called from lisp. Which means (I think), that module code cannot call lisp functions. My use case requires calling lisp functions; in particular, put-text-property, but also other higher-level lisp functions in ada-mode. I need a compiled module to implement an LALR parser for the Ada language that is fast enough for very large files. -- -- Stephe