help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: Too fine design granularity leads to numerous macro/function/command


From: Arthur Miller
Subject: Re: Too fine design granularity leads to numerous macro/function/command existed in Emacs.
Date: Fri, 13 Aug 2021 19:09:14 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Arthur Miller <arthur.miller@live.com>
>> Cc: help-gnu-emacs@gnu.org
>> Date: Fri, 13 Aug 2021 16:42:20 +0200
>> 
>> Eli Zaretskii <eliz@gnu.org> writes:
>> 
>> >> From: Arthur Miller <arthur.miller@live.com>
>> >> Date: Fri, 13 Aug 2021 11:26:39 +0200
>> >> Cc: help-gnu-emacs <help-gnu-emacs@gnu.org>
>> >> 
>> >> Hongyi Zhao <hongyi.zhao@gmail.com> writes:
>> >> 
>> >> >  It's well known that Emacs has already implemented numerous
>> >> > macro/function/command in its current version. But it seems that this
>> >> > is caused by, to a certain degree, the too fine granularity, i.e.,
>> >> > there are many functionally similar macro/function/command are
>> >> > designed separately, for example, `directory-files' and
>> >> > `directory-files-recursively'. The traditional Unix tool, `find', can
>> >> I wouldn't say that these are "very" similar. Sure they both list files,
>> >> but a recursive lister vs. plain lister is a big difference.
>> >
>> > The comparison of 'find' with the two Emacs APIs is basically invalid:
>> > 'find' is an _application_, whereas the 2 APIs are just that: APIs
>> > that could be used to build such an application.  See find-lisp.el for
>> > what the application would look like.
>> 
>> In a *shell world* one could logically think of cli utlities
>> as "apis" and options as function arguments, and I guess pipe would be
>> functional composition.
>
> But there were no pipes in the original comparison.  It just compared
> these Lisp APIs with 'find' the command.

True, they were introduced later on, I was regressing there.



reply via email to

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