From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: nalaginrut Newsgroups: gmane.lisp.guile.devel Subject: Re: New feature proposal: Support C-code inline? Date: Mon, 25 Apr 2011 09:33:04 +0800 Organization: HFG Message-ID: <1303695184.2684.15.camel@Renee-desktop> References: <1303293013.2749.41.camel@Renee-desktop> <1303532648.3575.8.camel@Renee-desktop> Reply-To: NalaGinrut@gmail.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1303695210 26370 80.91.229.12 (25 Apr 2011 01:33:30 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 25 Apr 2011 01:33:30 +0000 (UTC) Cc: guile-devel@gnu.org To: CRLF0710 Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon Apr 25 03:33:26 2011 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QEAfz-0004fY-SF for guile-devel@m.gmane.org; Mon, 25 Apr 2011 03:33:24 +0200 Original-Received: from localhost ([::1]:55966 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEAfy-0003KR-UU for guile-devel@m.gmane.org; Sun, 24 Apr 2011 21:33:22 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:45418) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEAft-0003KK-Rh for guile-devel@gnu.org; Sun, 24 Apr 2011 21:33:20 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QEAfq-0002k7-1X for guile-devel@gnu.org; Sun, 24 Apr 2011 21:33:17 -0400 Original-Received: from mail-pz0-f41.google.com ([209.85.210.41]:63004) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEAfp-0002k3-LO for guile-devel@gnu.org; Sun, 24 Apr 2011 21:33:14 -0400 Original-Received: by pzk32 with SMTP id 32so1636956pzk.0 for ; Sun, 24 Apr 2011 18:33:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:subject:from:reply-to:to:cc:in-reply-to :references:content-type:organization:date:message-id:mime-version :x-mailer:content-transfer-encoding; bh=2m+HeHmw+h4k/ZsOEcYzEY+ySvPqVGvC8RAd9+Za86c=; b=d6GcD+8RRRydqA8hRUovDX1ASNvs3RzuusnNME0U2ms8p4pKZpDIrxl55NuCfNN2x6 AA1iqo5KDyRXlGuhou+xi5HAbsj/Py9ZE4hZOZFzT8wetZ/CxgG0vMO6M0VQwdBy+dTP mdQ/39z6EdRJqsQpmAIFFDU8ZYYfKUScZmw1M= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=subject:from:reply-to:to:cc:in-reply-to:references:content-type :organization:date:message-id:mime-version:x-mailer :content-transfer-encoding; b=Cy++TFCpBMa5mFSVtE1iN0wksPhHm7Ca6Hv6OcNNkiT5pPuOh5U1r7RYT2VywqgIwy QinESXpl7uxkkqr59dsxzq78uv/1m3+LAGLqKkh1aqQVp3cH/EsoWygVTPKFPu1Ysf2l tAThGy3t52nSo1tC00sxhVStL6YdVdRz9k4DM= Original-Received: by 10.68.68.237 with SMTP id z13mr2893249pbt.326.1303695192562; Sun, 24 Apr 2011 18:33:12 -0700 (PDT) Original-Received: from [192.168.100.100] ([183.15.157.74]) by mx.google.com with ESMTPS id t9sm3561821pbo.3.2011.04.24.18.33.08 (version=SSLv3 cipher=OTHER); Sun, 24 Apr 2011 18:33:11 -0700 (PDT) In-Reply-To: X-Mailer: Evolution 2.28.3 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.210.41 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:12336 Archived-At: > Well, is the code a piece of string ? Does that mean we'll have code > generation on-the-fly facilities? ^_^ > yes. you don't need to convert var's type, this module does it automatic for you. > By the way, do you like the idea of some kind of inline C-code > "segments" embed in scm files? (Just like preprocessor blocks in C) I think there're many new ideas worth trying, and your "C-code segment embedded" is good for designing some bigger hybrid programming with C&guile(this C-code inline is better for small code embedded). We may add more convenient feature, for a instance, typedef/include/C macro. But as I said, this simple solution is a temporary substitute before AOT compiler came out. Embedded big C-code into guile program is not a good idea. If we really want to do that, the better way is to write an extension just like Guile always does. -- GNU Powered it GPL Protected it GOD Blessed it HFG - NalaGinrut --hacker key-- v4sw7CUSMhw6ln6pr8OSFck4ma9u8MLSOFw3WDXGm7g/l8Li6e7t4TNGSb8AGORTDLMen6g6RASZOGCHPa28s1MIr4p-x hackerkey.com ---end key---