lilypond-devel
[Top][All Lists]
Advanced

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

Re: LilyPond boolean syntax? \true and \false


From: Simon Albrecht
Subject: Re: LilyPond boolean syntax? \true and \false
Date: Tue, 5 Jan 2016 19:58:30 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0

On 05.01.2016 18:45, David Kastrup wrote:
Paul Morris <address@hidden> writes:

Thanks to David Kastrup’s work there’s now much less need to use
scheme syntax in overrides etc. (e.g. the dot syntax instead of #' and
no longer needing # for numbers).  This has really simplified things
for users.

As another small step along these lines, would it make sense to free
booleans from the ##t and ##f syntax?  Compare:

   \override Context.Grob.property = ##t

   \override Context.Grob.property = ##f

   \override Context.Grob.property = \true

   \override Context.Grob.property = \false

Providing \true and \false would (1) allow users to stay in familiar
LilyPond syntax (avoiding the awkward double ## that’s unintuitive to
new users) and (2) improve readability by using the whole word.  (I
for one find it hard to quickly see the difference between ##f and ##t
at a glance.)

Implementation would be trivial, of course:

   true = ##t
   false = ##f

Thoughts?

I must say I also like the idea.

Don't like this since it will lead to people using "true" and "false" in
Scheme programming, making for non-portable/non-idiomatic Scheme.  Also
#f and #t are self-quoting forms while false and true are symbols.

Could \true and \false be implemented as parser keywords?

Yours, Simon



reply via email to

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