From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Ricardo Wurmus Newsgroups: gmane.lisp.guile.devel Subject: Re: unhandled constant? Date: Wed, 29 Jan 2020 16:06:23 +0100 Message-ID: <87r1ziti8g.fsf@elephly.net> References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="22953"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.2.0; emacs 26.3 Cc: guile-devel@gnu.org To: Han-Wen Nienhuys Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Wed Jan 29 16:06:52 2020 Return-path: Envelope-to: guile-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1iwovb-0005uu-Lk for guile-devel@m.gmane-mx.org; Wed, 29 Jan 2020 16:06:51 +0100 Original-Received: from localhost ([::1]:47836 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iwova-0002Zj-KZ for guile-devel@m.gmane-mx.org; Wed, 29 Jan 2020 10:06:50 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37949) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iwovO-0002Zb-A5 for guile-devel@gnu.org; Wed, 29 Jan 2020 10:06:40 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iwovN-0007Gj-Cf for guile-devel@gnu.org; Wed, 29 Jan 2020 10:06:38 -0500 Original-Received: from sender4-of-o51.zoho.com ([136.143.188.51]:21162) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iwovN-00078n-07 for guile-devel@gnu.org; Wed, 29 Jan 2020 10:06:37 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1580310393; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:To:Cc:Subject:In-reply-to:Date:Message-ID:MIME-Version:Content-Type; bh=F8t7tPC5rAK0Fr0NxfYLf1AvACJSAFw7LKuADhXw/YQ=; b=A8QFxKy5n6GO5cAnbRniQd2LRIKW/iyYNT81jd3G/FD09erRWGXPpiigE7XBVqst AhC+6+YvXvua3Ufb2CNwLa7fo4Be7uLmwEh0LTgaWNYQFSPwhiCCGEOAXDf6d5ssIj1 eEScnNdBWbgAjRhm9tjJygJRbBgdnV5eLmPgUd7I= Original-Received: from localhost (p54AD4B4B.dip0.t-ipconnect.de [84.173.75.75]) by mx.zohomail.com with SMTPS id 1580310387985785.4093938475877; Wed, 29 Jan 2020 07:06:27 -0800 (PST) In-reply-to: X-URL: https://elephly.net X-PGP-Key: https://elephly.net/rekado.pubkey X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC X-ZohoMailClient: External X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 136.143.188.51 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.io gmane.lisp.guile.devel:20352 Archived-At: Han-Wen Nienhuys writes: > Some of the lilypond Scheme files do the following: > > > (define decl '()) > (define (make-var n v) (list "var" n v)) > (defmacro define-session (name value) > (define (inner n v) > (set! decl > (cons > (make-var n v) > decl)) > ) > `(,inner ',name ,value)) > (define-session foo 1) > (display decl) > (newline) > > In GUILE 2.2, this yields > > ;;; WARNING: compilation of /home/hanwen/vc/lilypond/q.scm failed: > ;;; unhandled constant # > > What does this error message mean, and what should I do to address the problem? Would it be feasible to use define-syntax-rule here? --8<---------------cut here---------------start------------->8--- (define decl '()) (define (make-var n v) (list "var" n v)) (define-syntax-rule (define-session name value) (let ((inner (lambda (n v) (set! decl (cons (make-var n v) decl))))) (inner 'name value))) (define-session foo 1) (display decl) (newline) --8<---------------cut here---------------end--------------->8--- -- Ricardo