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: Abraham Lee
Subject: Re: LilyPond boolean syntax? \true and \false
Date: Tue, 5 Jan 2016 10:06:36 -0700

On Tuesday, January 5, 2016, Paul Morris <address@hidden> wrote:

> 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?
> -Paul
>
> P.S. Guile 2.0 introduces #true and #false as alternatives to #t and #f
> per R7RS, presumably for better readability:
> https://www.gnu.org/software/guile/manual/html_node/Booleans.html
>

+1

I love this idea. I remember my own confusion with this when I was getting
my feet wet. Seems like a logical (pun intended) addition.

- Abraham


reply via email to

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