Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(5468)

Issue 5333051: Patch series (available at branch dev/syntax) for more argument list power. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 5 months ago by dak
Modified:
12 years, 5 months ago
Reviewers:
pkx166h, Reinhold, carl.d.sorensen
CC:
lilypond-devel_gnu.org
Visibility:
Public.

Description

Patch series (available at branch dev/syntax) for more argument list power. Consists of the following patches in reverse order: programming-interface.itely: Explain new optional argument semantics and \default parser.yy et al: make \mark a musicfunction. parser.yy et al: make \time and \times musicfunctions. Replace \key with music function input/regression/optional-args-backup.ly: Test backing up of optional argument parts. Use the new fraction? predicate where appropriate. Implement fraction? predicate checking for pair of unsigned integers parser.yy: Allow numbers, fractions and \default as arguments. Common parts of function_arglist and function_arglist_closed are also factored out in order to avoid premature parser decisions. In closed music expressions (mostly in the context of optional arguments), numbers with units (3\cm) and "wide" fractions (3 / 4) are not recognized, but if the respective number is backed up because of a false predicate, they can still be used in that manner in a mandatory argument. As a consequence of moving most of the optional argument checking into predicates, the operator priority system could be vastly simplified. \default can be used to force the rest of an optional argument block to get skipped. It is the only way to skip optional arguments if they are not followed by a mandatory argument, since otherwise a skipped value could not be interpreted anywhere else in the argument list. parser.yy et al: make UNSIGNED a Scheme value token Move priority of \addlyrics and composite music below function arguments. Needed in order to make closed_music a subset of music recognizable without lookahead.

Patch Set 1 #

Patch Set 2 : Reupload of changes allowing more accurate arglist parsing. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+489 lines, -235 lines) Patch
M Documentation/extending/programming-interface.itely View 1 1 chunk +18 lines, -13 lines 0 comments Download
A input/regression/optional-args-backup.ly View 1 1 chunk +31 lines, -0 lines 0 comments Download
M lily/lexer.ll View 4 chunks +6 lines, -6 lines 0 comments Download
M lily/lily-lexer.cc View 2 chunks +0 lines, -4 lines 0 comments Download
M lily/parser.yy View 1 29 chunks +375 lines, -189 lines 0 comments Download
M ly/music-functions-init.ly View 4 chunks +48 lines, -1 line 0 comments Download
M scm/c++.scm View 1 chunk +5 lines, -0 lines 0 comments Download
M scm/define-context-properties.scm View 1 chunk +1 line, -1 line 0 comments Download
M scm/define-grob-properties.scm View 1 1 chunk +1 line, -1 line 0 comments Download
M scm/lily.scm View 1 chunk +1 line, -0 lines 0 comments Download
M scm/ly-syntax-constructors.scm View 1 3 chunks +3 lines, -20 lines 0 comments Download

Messages

Total messages: 11
pkx166h
Passes make and make check, No reg test diffs. James
12 years, 5 months ago (2011-11-03 22:59:52 UTC) #1
Reinhold
On 2011/11/03 22:59:52, J_lowe wrote: > Passes make and make check, No reg test diffs. ...
12 years, 5 months ago (2011-11-04 23:43:04 UTC) #2
dak
On 2011/11/04 23:43:04, Reinhold wrote: > On 2011/11/03 22:59:52, J_lowe wrote: > > Passes make ...
12 years, 5 months ago (2011-11-05 06:15:49 UTC) #3
dak
On 2011/11/05 06:15:49, dak wrote: > On 2011/11/04 23:43:04, Reinhold wrote: > > On 2011/11/03 ...
12 years, 5 months ago (2011-11-05 06:32:26 UTC) #4
dak
On 2011/11/05 06:32:26, dak wrote: > On 2011/11/05 06:15:49, dak wrote: > > On 2011/11/04 ...
12 years, 5 months ago (2011-11-05 06:36:41 UTC) #5
pkx166h
Patch fails to apply against current master --snip-- jlowe@jlowe-lilybuntu2:~/lilypond-git$ patch -p1 < ../Desktop/issue5333051_6001.diff patching file ...
12 years, 5 months ago (2011-11-05 11:56:13 UTC) #6
dak
On 2011/11/05 11:56:13, J_lowe wrote: > Patch fails to apply against current master Probably Rietveld ...
12 years, 5 months ago (2011-11-05 22:42:54 UTC) #7
Carl
On 2011/11/05 22:42:54, dak wrote: > On 2011/11/05 11:56:13, J_lowe wrote: > > Patch fails ...
12 years, 5 months ago (2011-11-06 04:22:06 UTC) #8
Carl
I'd be lying if I said I understood all this in detail, but I like ...
12 years, 5 months ago (2011-11-06 04:31:23 UTC) #9
dak
On 2011/11/06 04:31:23, Carl wrote: > One question -- as you move from parser tokens ...
12 years, 5 months ago (2011-11-06 07:06:39 UTC) #10
pkx166h
12 years, 5 months ago (2011-11-06 09:11:41 UTC) #11
Passes make and no reg test diffs showing.

James
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b