[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ANN] guile-file-names 0.2

From: Mark H Weaver
Subject: Re: [ANN] guile-file-names 0.2
Date: Thu, 16 May 2019 16:01:26 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Hi Brandon,

Brandon Invergo <address@hidden> writes:

> I'm happy to announce the release of guile-file-names 0.2.
> The (file-names) module provides methods for manipulating file names.
> Its design distinguishes between the human-friendly string format of
> filenames ("/usr/bin/guile") and a more Scheme-friendly representation
> to take out all the little nuisances of working with file names.
> This release sees bugs fixed, under-the-hood improvements, and new
> features added.  See below for an excerpt from the NEWS file.

I see that you are using 'set!' to mutate several core bindings in the
(guile) module to much slower GOOPS generic functions.  For example, you
'set!' the core 'append' procedure to a GOOPS generic function that adds
support for appending together your <file-name> objects.

If you must override core procedures, then please use #:export and
#:replace in the 'define-module' form, and simply 'define' the new
binding in your module instead of using 'set!'.  That way, the bindings
in (guile) will be left unchanged, and your new bindings will only be
used in modules that import your module.

I can understand your decision to overload Guile's primitives that
accept file names.  However, I disagree with your decision to overload
'append' and 'append!'.  Those are not intended to be generic functions
in Scheme.  If they were, we wouldn't have 'string-append' and


reply via email to

[Prev in Thread] Current Thread [Next in Thread]