From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Subject: bug#36547: expect an earlier/clearer error when trying to splice(?) a function into a gexp Date: Thu, 11 Jul 2019 18:06:52 +0200 Message-ID: <87ims8sggz.fsf@gnu.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:36672) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hlbb6-0006k2-0Z for bug-guix@gnu.org; Thu, 11 Jul 2019 12:07:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hlbb4-00023a-DE for bug-guix@gnu.org; Thu, 11 Jul 2019 12:07:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:57886) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hlbb4-00021G-4X for bug-guix@gnu.org; Thu, 11 Jul 2019 12:07:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hlbb3-0000rq-Qj for bug-guix@gnu.org; Thu, 11 Jul 2019 12:07:01 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: (Robert Vollmert's message of "Mon, 8 Jul 2019 14:33:36 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Robert Vollmert Cc: 36547@debbugs.gnu.org Robert Vollmert skribis: > I tried to use a function in a gexp along the lines of > > (define* (f x) =E2=80=A6) > > #~(begin > (#$f x) > =E2=80=A6) > > This resulted in the following error: > > ERROR: In procedure primitive-load: > In procedure scm_lreadr: /gnu/store/wcw0fii855axkiqfz05283rwl7nlrb3i-puzz= ledb-blogs-job-builder:1:254: Unknown # object: #\< > > where the referenced builder file contains > > =E2=80=A6 (let ((backend (# "tools.token"))= ) =E2=80=A6 > > It seems to me that whatever code writes the builder file should already = complain at the point > where it substitutes # =E2=80=94 is that po= ssible? I think =E2=80=98gexp->sexp=E2=80=99 should simply error out whenever an ob= ject that lacks a read syntax (like a procedure) is inserted in a gexp. Ludo=E2=80=99.