From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Alan Manuel Gloria Newsgroups: gmane.lisp.guile.devel Subject: Re: Adding to guile curly-infix (SRFI 105), neoteric- & sweet-expressions Date: Mon, 27 Aug 2012 12:30:03 +0800 Message-ID: References: <1346033480.22469.9.camel@Renee-SUSE.suse> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: ger.gmane.org 1346043263 12347 80.91.229.3 (27 Aug 2012 04:54:23 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 27 Aug 2012 04:54:23 +0000 (UTC) Cc: guile-devel@gnu.org To: dwheeler@dwheeler.com Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon Aug 27 06:54:24 2012 Return-path: Envelope-to: guile-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 1T5rLE-0007fE-3r for guile-devel@m.gmane.org; Mon, 27 Aug 2012 06:54:24 +0200 Original-Received: from localhost ([::1]:50820 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T5rLC-0001J8-0g for guile-devel@m.gmane.org; Mon, 27 Aug 2012 00:54:22 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:40476) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T5qxm-0007YK-Ap for guile-devel@gnu.org; Mon, 27 Aug 2012 00:30:11 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1T5qxi-0001nZ-53 for guile-devel@gnu.org; Mon, 27 Aug 2012 00:30:10 -0400 Original-Received: from mail-pb0-f41.google.com ([209.85.160.41]:36454) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T5qxh-0001hc-VQ for guile-devel@gnu.org; Mon, 27 Aug 2012 00:30:06 -0400 Original-Received: by pbbro12 with SMTP id ro12so6859821pbb.0 for ; Sun, 26 Aug 2012 21:30:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=NIz46gOi54SFON40bwiqXfPgXlTTWJobXgg0KiG0dJU=; b=wNq+hHERps5Dhi87EXl1I2jmlNFe/jPVpkZRrB+/FQotIoclD/ufy5liPHUKoqLvlE LUiyha9pr3ykkjufdssjnMoMcxMwVs+yvAwoRiMGexDMf1bWgUmoLTKWWnS5Uzp1FWLq MakFHmrhzNigaizXLO8kywmmvpI2r2CAd7jEdWjLoEcX3ajqWVHksUO2gSCfGWDEshuA fT+tf8z4QG44rNo78Qk81d81w+Kk1ri0zHPV6f+Mo8k3cv5Kq4l0jpa9bJMnkiYSb0iZ FCh2KK8njeMKhDssQVPUINMUO5l8JWGtr2c+eK85xozrKL029XTldtRU4Kc1X547MPv2 p9LA== Original-Received: by 10.68.191.72 with SMTP id gw8mr31429775pbc.143.1346041804009; Sun, 26 Aug 2012 21:30:04 -0700 (PDT) Original-Received: by 10.66.163.2 with HTTP; Sun, 26 Aug 2012 21:30:03 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.160.41 X-Mailman-Approved-At: Mon, 27 Aug 2012 00:54:20 -0400 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:14823 Archived-At: On Mon, Aug 27, 2012 at 12:16 PM, David A. Wheeler wrote: > nalaginrut : >> I ever port the sweet-expression as a language module for Guile, and I >> have such an honor to say it's based on your work. >> There're still some bugs I need to face. But it works fine already. >> https://gitorious.org/nacre/guile-sweet > > Awesome! Thanks! > > We've made some tweaks recently, though nothing that would invalidate existing code using it. But now, for example, you can use f{- x} to mean (f (- x)). > >> Anyway, I'd like to see it becomes SRFIs. I've proposed it to be one of >> official language module since there's multi-language feature in >> Guile-2.x. >> And it's more convenient to do that if we make sweet-expression the SRFIs. > > Agreed. We'll see how it goes. > Heya Nala Ginrut! We noticed recently your effort in updating sweet-expressions to the latest Guile. We've also added support for some amount of attaching source locations to read-in objects, and also indepedently updated it to work on recent Guile 2.0. I did much of the updating (at that time we had been unaware of your work). We did this by replacing the binding for 'read and primitive-load on Guile, as it seemed to give the best coverage across 1.6, 1.8, and 2.0. However, it leads to an edge case in Guile 2.0 where disabling autocompilation leads to the module-loading C code path going through a direct C call to the C implementation of primitive-load, a path that only triggers if autocompilation disabled (when autocompilation is enabled, it goes through a hook in the language support for Scheme, which uses the 'read function we've rebound). I had also considered adding support for sweet-expressions in a language module for Guile, but this would require 2.0 (my own personal needs mean that I need it to work way back in 1.6) , and I couldn't figure out a way to tell Guile to start the REPL in sweet-expression language (or any language other than Scheme for that matter). Sincerely, AmkG