From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Compiling Elisp to a native code with a GCC plugin Date: Fri, 17 Sep 2010 10:13:48 +0200 Message-ID: <83vd6423er.fsf@gnu.org> References: <87bp805ecr.fsf@gmail.com> <87bp7zhu0j.fsf@lola.goethe.zz> <8739tbhsiz.fsf@lola.goethe.zz> Reply-To: Eli Zaretskii NNTP-Posting-Host: lo.gmane.org X-Trace: dough.gmane.org 1284711244 22322 80.91.229.12 (17 Sep 2010 08:14:04 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 17 Sep 2010 08:14:04 +0000 (UTC) Cc: emacs-devel@gnu.org To: Lars Magne Ingebrigtsen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Sep 17 10:14:03 2010 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 1OwW53-0003C9-Tm for ged-emacs-devel@m.gmane.org; Fri, 17 Sep 2010 10:14:02 +0200 Original-Received: from localhost ([127.0.0.1]:43441 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OwW53-00029m-6y for ged-emacs-devel@m.gmane.org; Fri, 17 Sep 2010 04:14:01 -0400 Original-Received: from [140.186.70.92] (port=32795 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OwW4s-000274-LS for emacs-devel@gnu.org; Fri, 17 Sep 2010 04:13:54 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OwW4n-0004BN-S0 for emacs-devel@gnu.org; Fri, 17 Sep 2010 04:13:50 -0400 Original-Received: from mtaout21.012.net.il ([80.179.55.169]:47245) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OwW4n-0004Ap-LS for emacs-devel@gnu.org; Fri, 17 Sep 2010 04:13:45 -0400 Original-Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0L8V00K00TD65300@a-mtaout21.012.net.il> for emacs-devel@gnu.org; Fri, 17 Sep 2010 10:13:44 +0200 (IST) Original-Received: from HOME-C4E4A596F7 ([77.126.210.149]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0L8V00K10TIU2550@a-mtaout21.012.net.il>; Fri, 17 Sep 2010 10:13:44 +0200 (IST) In-reply-to: X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) 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:130289 Archived-At: > From: Lars Magne Ingebrigtsen > Date: Fri, 17 Sep 2010 01:17:05 +0200 > > Unless I've misunderstood how buffers and strings work, which is a very > high possibility. What aspects of buffers and strings you think you might not understand? Ask here any specific questions you have. > Is there an architectural overview of the Emacs internal anywhere? See the "Object Internals" node in the ELisp manual. Buffers are described there, but strings are not. OTOH, a Lisp string is a fairly simple object, so you should be able to grasp it by looking at the definition of `struct Lisp_string' in lisp.h and how strings are allocated and handled in alloc.c. (There are subtleties about strings and buffers when Emacs allocates large chunks of memory, but I don't think those subtleties matter in the context of this discussion.)