From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 18 12:05:16 2021 Received: (at submit) by debbugs.gnu.org; 18 Apr 2021 16:05:16 +0000 Received: from localhost ([127.0.0.1]:47527 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lY9vA-0004Wx-DJ for submit@debbugs.gnu.org; Sun, 18 Apr 2021 12:05:16 -0400 Received: from lists.gnu.org ([209.51.188.17]:34550) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lY9v8-0004Wp-Iz for submit@debbugs.gnu.org; Sun, 18 Apr 2021 12:05:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39524) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lY9v8-0002Es-9G for bug-guile@gnu.org; Sun, 18 Apr 2021 12:05:14 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:52563) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lY9v5-00025M-7L for bug-guile@gnu.org; Sun, 18 Apr 2021 12:05:13 -0400 Received: from nijino.local (194-96-9-9.adsl.highway.telekom.at [194.96.9.9]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4FNZXb5Mqpz1LLyL for ; Sun, 18 Apr 2021 18:05:03 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mailrelay.tugraz.at 4FNZXb5Mqpz1LLyL DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1618761903; bh=m84cwL2b9KlFPzot7f3z7yZkCuE+JCHf5+mkH/SWWb4=; h=Subject:From:To:Date:From; b=mPnBoM1gvV1Zy86xQPGAtkVnETMYJgotv/xJ51lYWGJfUOpjQmlchu/4uB3mX5eso YucsH+XquaCEWdtB2lNIhA/Ga+QNBi5drFYohFnRki+0vk0VdLOd7ZGodWrzCeScGp AySBibGh6c+skEMUQ43nOXyvowCrswF2Jthax4wg= Message-ID: Subject: Elisp reader doesn't handle keywords From: Leo Prikler To: bug-guile@gnu.org Date: Sun, 18 Apr 2021 18:05:02 +0200 Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-TUG-Backscatter-control: bt4lQm5Tva3SBgCuw0EnZw X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 Received-SPF: pass client-ip=129.27.2.202; envelope-from=leo.prikler@student.tugraz.at; helo=mailrelay.tugraz.at X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Hi Guilers, Using Guile 3.0.5, the elisp reader does not seem to support keywords written in Elisp's preferred prefix-style notation (:keyword). scheme@(guile-user)> ,L elisp Happy hacking with Emacs Lisp! To switch back, type `,L scheme'. elisp@(guile-user)> :keyword ice-9/boot-9.scm:1669:16: In procedure raise-exception: Unbound variable: :keyword Entering a new prompt. Type `,bt' for a backtrace or `,q' to continue. elisp@(guile-user) [1]> ,q elisp@(guile-user)> (funcall (@ (guile) symbol->keyword) 'keyword) $1 = #:keyword Meanwhile in Emacs M-: :keyword yields :keyword. Using Scheme-style keywords also does not work: elisp@(guile-user)> #:keyword While compiling expression: uninterned symbol cannot be saved to object file # I think Guile should produce keyword objects for the former, so that we don't need to talk about the latter. Regards, Leo From debbugs-submit-bounces@debbugs.gnu.org Thu May 13 18:44:10 2021 Received: (at 47875) by debbugs.gnu.org; 13 May 2021 22:44:10 +0000 Received: from localhost ([127.0.0.1]:44516 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lhK3u-0002fo-4a for submit@debbugs.gnu.org; Thu, 13 May 2021 18:44:10 -0400 Received: from mail-ed1-f51.google.com ([209.85.208.51]:41826) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lhK3q-0002fA-9K for 47875@debbugs.gnu.org; Thu, 13 May 2021 18:44:08 -0400 Received: by mail-ed1-f51.google.com with SMTP id v5so21591109edc.8 for <47875@debbugs.gnu.org>; Thu, 13 May 2021 15:44:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:subject:message-id:date:user-agent:mime-version :content-language:content-transfer-encoding; bh=rIOETMmepuM31rk3PtdeMthUljEIQzFVdgpiLukPvRk=; b=g6j4BVuWL4Pee19wN+m53+G5u2xQ3rMtlEqoXsXQ9B0LgdeTYfwP/OXsE6OpIEgYvh Ul2AVsOTtggLpaD9iLDRy5RjmKgb02q6ZBXSnKiuW/APv4evtOUwW6pCSQAt0TuucSGY vH+tKeCRszRVNmebPB4CoznbkyQoqR2HxpKMYLDCJATvVtBhPTtOeLIsNk5MIFay3MCH 7S3ENb+nVvsvqvUQO2twtX7j/fGyO8az9xIiUO7lZ/zO0EVE1Q66ZpdjBmnUGKQ537Cm 5IoZ3pQ0c9JSjB+AxXxCoYva13tBYcey5iJVb6mUf0666ylUqbVDlHHwPW2pBE+G2oe0 uNrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:message-id:date:user-agent :mime-version:content-language:content-transfer-encoding; bh=rIOETMmepuM31rk3PtdeMthUljEIQzFVdgpiLukPvRk=; b=P1SSMDKoCAeCYfW6wCtrHjASGL+yZK4B77HbcYWWiQdrk6kZjPM+0NKsoR5qisHwCy 75W/vUJX+2dBQGN86DpeyQ53aP1bhMck+6LawzZfxhJWCfdvk7Y/fAc0Q4y8pPPgCwzL 3to/A/2CgAvpG7VHYOye7qZf/ygFB6DsRqiwfoJymIZbelMI1FKP0pQyZclq9r/RtFt+ 1yq9YEcP6ZaFQyyGtDcQZYJIPhPGYYC1GLdea4zlxTV+m/c3YZghV8wzUynhbt921Stm lOhzaXXdNXkerv26q6U0ZnkqAKWFmqSLb3VcjjL2mooi7ekM9Z+ellk+LrK8od5jU2uT kxeg== X-Gm-Message-State: AOAM530C9XtRX7HJH0G0QK4+VWMJ2o8xmLUrkvT2FQ/CAGBZorYS/h/q pb2bzYOdGWU9JDov5uDbiEE= X-Google-Smtp-Source: ABdhPJzwWRqPP96pWhL6PpNRgdhpTi/Q44KebM4Qsv76kW0AFHncGcHjn2KRp0glz8CeTNYHPH4BUg== X-Received: by 2002:a05:6402:5111:: with SMTP id m17mr53193473edd.343.1620945840437; Thu, 13 May 2021 15:44:00 -0700 (PDT) Received: from [192.168.178.20] (b2b-109-90-125-150.unitymedia.biz. [109.90.125.150]) by smtp.gmail.com with ESMTPSA id bv17sm387856ejb.37.2021.05.13.15.43.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 13 May 2021 15:44:00 -0700 (PDT) To: 47875@debbugs.gnu.org, Leo Prikler From: Taylan Kammer Subject: Elisp reader doesn't handle keywords Message-ID: <5ca7278b-83fd-2c90-83ab-647c7abeac12@gmail.com> Date: Fri, 14 May 2021 00:43:58 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 47875 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This seems to have been fixed in the wip-elisp branch. Note that the branch is a couple years old. There's a version of the branch by Ricardo Wurmus (rekado) that's been rebased on a newer version of Guile, though still not on 3.0: https://git.elephly.net/?p=software/guile.git;a=shortlog;h=refs/heads/wip-elisp - Taylan From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 04 08:13:45 2021 Received: (at submit) by debbugs.gnu.org; 4 Jun 2021 12:13:45 +0000 Received: from localhost ([127.0.0.1]:45707 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lp8ht-00069Q-B0 for submit@debbugs.gnu.org; Fri, 04 Jun 2021 08:13:45 -0400 Received: from lists.gnu.org ([209.51.188.17]:51932) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lp8hs-00069J-7q for submit@debbugs.gnu.org; Fri, 04 Jun 2021 08:13:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46130) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lp8hr-0004f2-QY for bug-guile@gnu.org; Fri, 04 Jun 2021 08:13:44 -0400 Received: from forward104o.mail.yandex.net ([2a02:6b8:0:1a2d::607]:58373) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lp8hn-0002uW-KE for bug-guile@gnu.org; Fri, 04 Jun 2021 08:13:43 -0400 Received: from sas1-912050a65b23.qloud-c.yandex.net (sas1-912050a65b23.qloud-c.yandex.net [IPv6:2a02:6b8:c14:3983:0:640:9120:50a6]) by forward104o.mail.yandex.net (Yandex) with ESMTP id 7A77F941BE9 for ; Fri, 4 Jun 2021 15:13:31 +0300 (MSK) Received: from sas1-f4dc5f2fc86f.qloud-c.yandex.net (sas1-f4dc5f2fc86f.qloud-c.yandex.net [2a02:6b8:c08:cb28:0:640:f4dc:5f2f]) by sas1-912050a65b23.qloud-c.yandex.net (mxback/Yandex) with ESMTP id ckH6CO3STw-DVLi4o6C; Fri, 04 Jun 2021 15:13:31 +0300 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ya.ru; s=mail; t=1622808811; bh=3pNnur3AJdywmCCmGmdm5DLE3RCXvk0X9fgsAMgzPh8=; h=In-Reply-To:Subject:Date:References:To:From:Message-ID; b=uS6fLvGCxuL7lQT+lnptgB6JbSXnmVcEs8YPoFgg8Li145xDS3GVYO3a7stv83m8T H44XypoCcgxm5AkiZhemoFMHPJ/I9hxxLB8kQ5T6fh0v4l+4XtaK5ADo8NYdV/KO9d o00/gCiQ4JrIxzdZJss+7azlJeqa0nTPhs5dWsmM= Authentication-Results: sas1-912050a65b23.qloud-c.yandex.net; dkim=pass header.i=@ya.ru Received: by sas1-f4dc5f2fc86f.qloud-c.yandex.net (smtp/Yandex) with ESMTPSA id HViVgVJKXy-DUL8vfX5; Fri, 04 Jun 2021 15:13:30 +0300 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (Client certificate not present) From: Ivan Sokolov To: bug-guile@gnu.org Subject: Re: bug#47875: Elisp reader doesn't handle keywords References: Date: Fri, 04 Jun 2021 15:13:29 +0300 In-Reply-To: (Leo Prikler's message of "Sun, 18 Apr 2021 18:05:02 +0200") Message-ID: <87sg1xomja.fsf@ya.ru> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2a02:6b8:0:1a2d::607; envelope-from=ivan-p-sokolov@ya.ru; helo=forward104o.mail.yandex.net X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) Leo Prikler writes: > Using Guile 3.0.5, the elisp reader does not seem to support keywords > written in Elisp's preferred prefix-style notation (:keyword). > > Meanwhile in Emacs M-: :keyword yields :keyword. Using Scheme-style > keywords also does not work: > > I think Guile should produce keyword objects for the former, so that we > don't need to talk about the latter. In Scheme keywords and symbols are separate entities, but in Elisp keywords are just self-quoted symbols. I think your solution will cause problems with Elisp algorithms that expect keywords to be symbolp. From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 05 17:14:32 2021 Received: (at 47875) by debbugs.gnu.org; 5 Jun 2021 21:14:32 +0000 Received: from localhost ([127.0.0.1]:50190 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lpdcm-0004ok-54 for submit@debbugs.gnu.org; Sat, 05 Jun 2021 17:14:32 -0400 Received: from mailrelay.tugraz.at ([129.27.2.202]:10138) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lpdck-0004oa-68 for 47875@debbugs.gnu.org; Sat, 05 Jun 2021 17:14:31 -0400 Received: from nijino.local (62-116-34-49.adsl.highway.telekom.at [62.116.34.49]) by mailrelay.tugraz.at (Postfix) with ESMTPSA id 4FyC7Q6CGlz3wGW; Sat, 5 Jun 2021 23:14:26 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tugraz.at; s=mailrelay; t=1622927667; bh=kPdbXqaDq9TadI6Qgtu0OhDMnPq4I91olTPMtvopoqk=; h=Subject:From:To:Cc:Date:In-Reply-To:References; b=fMYEbf4dsZhXZZj4uLVH1cTlne4SyT/mMs39PylBwzFGsPt7q427WrX3Gc+zHZXGW tZRJCEmVMzLdFLuqXmezonWACAp0ZHLy0N4uRbgWQrgvWYweDHTJfatNEIWkXXkLnQ 2CjweTLe/1t60rVx+wjrjSgKuzyf82KGEZrgBcmY= Message-ID: <479aeb7313571f434ef146f5aa3e5b120a1593ad.camel@student.tugraz.at> Subject: Re: bug#47875: Elisp reader doesn't handle keywords From: Leo Prikler To: Ivan Sokolov Date: Sat, 05 Jun 2021 23:14:25 +0200 In-Reply-To: <87lf7onwcp.fsf@ya.ru> References: <87lf7onwcp.fsf@ya.ru> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-TUG-Backscatter-control: bt4lQm5Tva3SBgCuw0EnZw X-Spam-Scanner: SpamAssassin 3.003001 X-Spam-Score-relay: -1.9 X-Scanned-By: MIMEDefang 2.74 on 129.27.10.117 X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 47875 Cc: 47875@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Am Samstag, den 05.06.2021, 18:51 +0300 schrieb Ivan Sokolov: > In Scheme keywords and symbols are separate entities, but in Elisp > keywords are just self-quoted symbols. I think your solution will > cause problems with Elisp algorithms that expect keywords to be > symbolp. You could define Elisp symbolp as (lambda (thing) (or (funcall (@ (guile) symbol?) thing) (funcall (@ (guile) keyword?) thing))) but perhaps there's an even faster way to check this property. The other way round – using Emacs keywords as Scheme symbols – will not perform well if you think about Emacs code calling a Scheme function that expects keywords. Regards, Leo From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 06 14:21:52 2021 Received: (at 47875) by debbugs.gnu.org; 6 Jun 2021 18:21:52 +0000 Received: from localhost ([127.0.0.1]:53872 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lpxPE-000290-Fl for submit@debbugs.gnu.org; Sun, 06 Jun 2021 14:21:52 -0400 Received: from forward101o.mail.yandex.net ([37.140.190.181]:34680) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lpxPA-00028i-Q2 for 47875@debbugs.gnu.org; Sun, 06 Jun 2021 14:21:51 -0400 Received: from forward102q.mail.yandex.net (forward102q.mail.yandex.net [IPv6:2a02:6b8:c0e:1ba:0:640:516:4e7d]) by forward101o.mail.yandex.net (Yandex) with ESMTP id 8C7FD3C01073; Sun, 6 Jun 2021 21:21:41 +0300 (MSK) Received: from vla3-ceb7ce11bd61.qloud-c.yandex.net (vla3-ceb7ce11bd61.qloud-c.yandex.net [IPv6:2a02:6b8:c15:341d:0:640:ceb7:ce11]) by forward102q.mail.yandex.net (Yandex) with ESMTP id 874753A20002; Sun, 6 Jun 2021 21:21:41 +0300 (MSK) Received: from vla1-62318bfe5573.qloud-c.yandex.net (vla1-62318bfe5573.qloud-c.yandex.net [2a02:6b8:c0d:3819:0:640:6231:8bfe]) by vla3-ceb7ce11bd61.qloud-c.yandex.net (mxback/Yandex) with ESMTP id qZNvFVtGWL-LfKmVD3a; Sun, 06 Jun 2021 21:21:41 +0300 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ya.ru; s=mail; t=1623003701; bh=WyOKJUUX6bSOIzdaDQVh2mLEBF5jxo8TeG3IjC59O70=; h=In-Reply-To:Subject:To:From:Message-ID:Cc:Date:References; b=A39JL7dQQ/zUFychxughJLW3dVnJq0+JD0e3EwVFF8c7FmvOl62P6nqr9S9saiTuJ uPT5als7z6xk1ZAKYFlbaJB4xUqhYFvvmDf31/0/iPFRswTBosVKfRVgbOINtXz/Yt eh0HUTzmIGI+Tlx/AG05fJlfREHGrMWO6oyz7GGU= Authentication-Results: vla3-ceb7ce11bd61.qloud-c.yandex.net; dkim=pass header.i=@ya.ru Received: by vla1-62318bfe5573.qloud-c.yandex.net (smtp/Yandex) with ESMTPSA id eTnvBBK9ac-LeMaMllt; Sun, 06 Jun 2021 21:21:40 +0300 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (Client certificate not present) From: Ivan Sokolov To: Leo Prikler Subject: Re: bug#47875: Elisp reader doesn't handle keywords References: <87lf7onwcp.fsf@ya.ru> <479aeb7313571f434ef146f5aa3e5b120a1593ad.camel@student.tugraz.at> Date: Sun, 06 Jun 2021 21:21:39 +0300 In-Reply-To: <479aeb7313571f434ef146f5aa3e5b120a1593ad.camel@student.tugraz.at> (Leo Prikler's message of "Sat, 05 Jun 2021 23:14:25 +0200") Message-ID: <875yyqonv0.fsf@ya.ru> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 47875 Cc: 47875@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Leo Prikler writes: > You could define Elisp symbolp as > (lambda (thing) > (or (funcall (@ (guile) symbol?) thing) > (funcall (@ (guile) keyword?) thing))) You are right, I haven't thought about changing the implementaion of symbolp. > but perhaps there's an even faster way to check this property. Use guile-primitive instead of guile-ref? Both symbol? and keyword? are primitives.