lilypond-devel
[Top][All Lists]
Advanced

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

LilyPond boolean syntax? \true and \false


From: Paul Morris
Subject: LilyPond boolean syntax? \true and \false
Date: Tue, 5 Jan 2016 11:48:38 -0500

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

reply via email to

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