lilypond-devel
[Top][All Lists]
Advanced

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

Re: bar-line.scm


From: David Kastrup
Subject: Re: bar-line.scm
Date: Wed, 20 Feb 2013 13:20:07 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

"address@hidden" <address@hidden> writes:

> Hey all,
>
> Would it be OK to get rid of all the ly: prefixes in bar-line.scm?
> Sorry for not catching this before.  I'd prefer if all native Scheme
> functions did not have the ly: prefix - it helps to know what things
> are where.  Let me know if this seems OK - if so I'll propose a patch.

The purpose of the prefix is to avoid name clashes, mostly.  It does not
make sense in non-exported functions, and all C++ functions have to be
exported to be callable from anywhere.

For non-public functions (most Scheme functions), name clashes are not
an issue.  For public functions, it is totally unhelpful for the user to
have to remember which LilyPond functions are defined in Scheme, and
which are defined in C++.  That is an implementation detail.
Previously, there has been quite a distinctive line between which things
got implemented in C++ and which got implemented in Scheme, so it was
slightly predictable when one would to have to use ly: and when not.

I am strictly against changing the names of functions just because they
get implemented as a drop-in replacement of already existing functions
written in a different language.

Messing with the user-visible naming while we are changing internals is
not doing anybody a favor.

In other words: no.  I don't consider it OK to get rid of all the ly:
prefixes in bar-line.scm for preexisting functionality under an
established name.  There is nothing to be gained by it as far as I can
see.

-- 
David Kastrup




reply via email to

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