From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Brandon Invergo Newsgroups: gmane.lisp.guile.user Subject: Re: [ANN] guile-file-names 0.2 Date: Fri, 17 May 2019 09:36:17 +0100 Message-ID: <874l5tjx4u.fsf@invergo.net> References: <87a7fmkbtv.fsf@invergo.net> <87y336b232.fsf@netris.org> <87tvdub1u8.fsf@netris.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="250838"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: mu4e 1.2.0; emacs 26.2 Cc: guile-user@gnu.org To: Mark H Weaver Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Fri May 17 10:36:58 2019 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hRYML-00135s-7Y for guile-user@m.gmane.org; Fri, 17 May 2019 10:36:57 +0200 Original-Received: from localhost ([127.0.0.1]:44465 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hRYMK-0003dR-8Q for guile-user@m.gmane.org; Fri, 17 May 2019 04:36:56 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:58313) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hRYLv-0003dB-ST for guile-user@gnu.org; Fri, 17 May 2019 04:36:32 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hRYLu-0002DH-Sw for guile-user@gnu.org; Fri, 17 May 2019 04:36:31 -0400 Original-Received: from lavender.maple.relay.mailchannels.net ([23.83.214.99]:46810) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hRYLu-0001xh-DQ for guile-user@gnu.org; Fri, 17 May 2019 04:36:30 -0400 X-Sender-Id: dreamhost|x-authsender|brandon@invergo.net Original-Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 0ECC75026BE; Fri, 17 May 2019 08:36:27 +0000 (UTC) Original-Received: from pdx1-sub0-mail-a10.g.dreamhost.com (100-96-6-41.trex.outbound.svc.cluster.local [100.96.6.41]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 5DDDA5028D0; Fri, 17 May 2019 08:36:26 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|brandon@invergo.net Original-Received: from pdx1-sub0-mail-a10.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Fri, 17 May 2019 08:36:27 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|brandon@invergo.net X-MailChannels-Auth-Id: dreamhost X-Quick-Share: 1a33ba463312184b_1558082186866_1148853047 X-MC-Loop-Signature: 1558082186866:495420983 X-MC-Ingress-Time: 1558082186866 Original-Received: from pdx1-sub0-mail-a10.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a10.g.dreamhost.com (Postfix) with ESMTP id 235F77F111; Fri, 17 May 2019 01:36:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=invergo.net; h=references :from:to:cc:subject:in-reply-to:date:message-id:mime-version :content-type; s=invergo.net; bh=FEX9NzT/isdTZ7S4VyRLfzUnYPU=; b= sL3GyO+ZXh1Ey9VyChRPGGFKGMeBA7ssxsGdjam1z7PTjFX/BJDeStqIGHWJu/Pa 6ibpJB0vE75KOaQ4n+1wt/JGvuF46WruPWaaH73WR6jgEKGDFP14tOvKiXzU79oZ E03UFgCUDdMmMIsnsfSK6mQ4Hj6kJBLPnUpGwzkgjbE= Original-Received: from localhost (unknown [144.173.111.60]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: brandon@invergo.net) by pdx1-sub0-mail-a10.g.dreamhost.com (Postfix) with ESMTPSA id 9A6577F10A; Fri, 17 May 2019 01:36:19 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a10 In-reply-to: <87tvdub1u8.fsf@netris.org> X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: 0 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduuddruddtvddgtdejucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgdpffftgfetoffjqffuvfenuceurghilhhouhhtmecufedttdenucenucfjughrpehffgfhvffujgffkfggtgesthdtredttdertdenucfhrhhomhepuehrrghnughonhcukfhnvhgvrhhgohcuoegsrhgrnhguohhnsehinhhvvghrghhordhnvghtqeenucfkphepudeggedrudejfedrudduuddriedtnecurfgrrhgrmhepmhhouggvpehsmhhtphdphhgvlhhopehlohgtrghlhhhoshhtpdhinhgvthepudeggedrudejfedrudduuddriedtpdhrvghtuhhrnhdqphgrthhhpeeurhgrnhguohhnucfknhhvvghrghhouceosghrrghnughonhesihhnvhgvrhhgohdrnhgvtheqpdhmrghilhhfrhhomhepsghrrghnughonhesihhnvhgvrhhgohdrnhgvthdpnhhrtghpthhtohepghhuihhlvgdquhhsvghrsehgnhhurdhorhhgnecuvehluhhsthgvrhfuihiivgeptd X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 23.83.214.99 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:15483 Archived-At: Hi Mark, Mark H Weaver writes: > Sorry, I meant to give an example of this. Please see srfi/srfi-45.scm > in the Guile source distribution for an example of the preferred way to > override core bindings, such that only modules that import your module > are affected. Thanks for the example. I will make that change for the next release. Actually, it's good that you mentioned it now because I want to go back and make file-name-specialized variants of the rest of the core procedures that normally take file-name strings (e.g. file ports). I'll admit this wasn't a carefully thought-out strategy. I was going by the example in the GOOPS "Generic Function and Method Examples" section of the manual (where + is specialized to handle objects). I was having trouble figuring out how to do this such that the code could be distributed as a module, and that was the only section that I found that gave any clue. I missed, however, the "#:replace" functionality of define-module. I would suggest that this section of the manual be updated to demonstrate the preferred way to do it. I also have no problem with replacing my specialized append and append! methods with file-name-append and file-name-append! (in fact, that's what they were originally, before I de-namespaced the method symbols). It's still early days, so few people, if anybody, will be affected by such a change. Thanks for the tip! -- -brandon