[CM] cmn and guile

Anders Vinjar anders.vinjar@notam02.no
23 Jan 2004 14:42:06 +0100


--=-=-=

>>> "MG" == Maarten Grachten <maarten@iiia.csic.es> writes:

    MG> I am interested in the guile port of CMN. Does it exist?

Much of this port was done in august 2003, but was stopped by
missing ratio-support in Guile.  Bill Schottstaedt and others
have since built ratio-support for Guile, but I havent had a
chance to do the missing parts of cmn-guile myself.

My intention is to peep into this again and finish it once i get
some time, but i have no idea when that might be.  So if anyone
is interested in bringing this to an ending from where it was
left, they can download a snapshot from august 7th here (with the
standard disclaimers):

ftp://notam02.uio.no/pub/Lisp/guile-cmn-v3.tar.bz2

When you open the tarball it leaves the normal cmn-directory (but
here its called "transformert3/*.scm") together with a file
"scratch.scm", and a directory "utils/*.scm" with various Guile
things needed for doing the things we want.  Look in
"scratch.scm" on how to load things and get going, its like a
temporary substitute for cmn-all.scm

To work with the new ratios and Guile you will need to checkout
the latest CVS-versions of guile and a gratio.tar.gz from CCRMA i
think.  (Ask Bill to get the correct procedure to these steps,
last time i tried to checkout a development-version of Guile from
CVS it timed-out the whole afternoon.)

The cmn-guile snapshot from august is currently capable of doing
things like this here:


--=-=-=
Content-Type: application/postscript
Content-Disposition: attachment; filename=aaa.eps
Content-Description: cmn-score

%!PS-Adobe-2.0 EPSF-2.0
%%CreationDate: Thu 31-Jun-03 at 18:44
%%BoundingBox:(atend)
%%EndComments
%%EndProlog
%%Page: 1 1
0.000 0.000 0.000  setrgbcolor 0 setlinewidth
 gsave [ 1 0 0 1 0 0 ] concat
 gsave [ 1.000 0 0 1.000 66.000 157.203 ] concat
 0.00 0.00 moveto
 /Times-Roman findfont 12 scalefont setfont
 (D) show
 grestore
/draw1 { 
% sharp
 5.04 2.94 moveto
 5.04 -1.50 lineto
 6.30 -0.96 lineto
 6.30 -4.08 lineto
 5.04 -4.62 lineto
 5.04 -10.14 lineto
 4.20 -10.14 lineto
 4.20 -4.98 lineto
 2.16 -5.82 lineto
 2.16 -11.40 lineto
 1.32 -11.40 lineto
 1.32 -6.18 lineto
 0.00 -6.66 lineto
 0.00 -3.48 lineto
 1.32 -3.00 lineto
 1.32 1.44 lineto
 0.00 0.96 lineto
 0.00 4.14 lineto
 1.32 4.62 lineto
 1.32 10.14 lineto
 2.16 10.14 lineto
 2.16 4.98 lineto
 4.20 5.76 lineto
 4.20 11.40 lineto
 5.04 11.40 lineto
 5.04 6.12 lineto
 6.30 6.66 lineto
 6.30 3.48 lineto
 5.04 2.94 lineto
 4.20 2.64 moveto
 2.16 1.80 lineto
 2.16 -2.64 lineto
 4.20 -1.80 lineto
 4.20 2.64 lineto
  fill
} def 
 gsave [ 0.400 0.000 0.000 0.400 74.400 162.003 ] concat
draw1
 grestore
 gsave [ 1.000 0 0 1.000 76.800 157.203 ] concat
 0.00 0.00 moveto
 /Times-Roman findfont 12 scalefont setfont
 ( - ukulele) show
 grestore
% staff lines
 0.600 setlinewidth
 176.10 147.00 moveto
 576.00 147.00 lineto
 176.10 154.56 moveto
 576.00 154.56 lineto
 176.10 162.12 moveto
 576.00 162.12 lineto
 176.10 169.68 moveto
 576.00 169.68 lineto
 176.10 177.24 moveto
 576.00 177.24 lineto
 stroke
 0 setlinewidth
/draw2 { 
% treble clef
 14.70 -7.74 moveto
 15.48 -12.90 16.38 -20.16 8.94 -17.70 curveto
 12.12 -17.40 12.96 -13.08 9.60 -11.94 curveto
 6.30 -11.94 5.40 -15.54 7.68 -18.00 curveto
 8.70 -18.66 9.30 -18.90 10.14 -19.14 curveto
 17.28 -20.04 16.62 -12.06 15.66 -7.56 curveto
 26.76 -3.78 22.38 9.42 13.26 7.08 curveto
 13.08 8.58 12.30 11.64 12.60 13.20 curveto
 12.90 14.70 14.52 16.74 15.30 18.18 curveto
 18.72 24.42 18.48 30.00 14.88 33.24 curveto
 12.30 33.54 10.44 26.64 10.44 22.32 curveto
 10.44 20.88 10.92 18.54 10.44 17.28 curveto
 9.96 15.90 8.70 14.46 7.92 13.20 curveto
 4.56 7.80 1.62 2.46 5.46 -3.60 curveto
 7.68 -7.14 10.74 -7.74 14.70 -7.74 curveto
 11.82 18.66 moveto
 11.22 20.88 11.10 29.34 15.36 29.88 curveto
 19.98 28.44 13.62 20.04 11.82 18.66 curveto
 11.46 11.94 moveto
 12.30 6.72 lineto
 7.56 3.78 7.56 -1.86 10.74 -3.18 curveto
 11.16 -2.64 lineto
 8.52 0.12 10.38 3.96 12.72 4.08 curveto
 14.46 -6.66 lineto
 11.46 -6.60 9.18 -6.66 7.08 -4.02 curveto
 2.88 1.14 8.34 7.26 11.52 12.18 curveto
 15.48 -6.60 moveto
 13.74 4.38 lineto
 20.34 5.28 22.32 -4.38 15.48 -6.60 curveto
  fill
} def 
 gsave [ 1.000 0 0 1.000 179.100 154.503 ] concat
draw2
 grestore
 gsave [ 1.000 0 0 1.000 220.953 139.443 ] concat
 0.00 0.00 moveto
 gsave [ 1.000 0.000 0.000 1.000 -9.675 0 ] concat
draw1
 grestore
/draw3 { 
% quarter note
 0.42 -2.64 moveto
 -0.42 -0.90 0.78 1.68 2.70 2.88 curveto
 4.32 3.84 6.90 4.26 8.10 2.76 curveto
 9.48 0.72 7.74 -1.80 5.70 -3.00 curveto
 3.90 -3.78 1.98 -4.08 0.42 -2.64 curveto
  fill
} def 
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 0.750 setlinewidth
 229.16 139.44 moveto
 229.16 166.44 lineto
 stroke
 0 setlinewidth
/draw4 { 
% 8th flag up
 0.00 8.88 moveto
 0.57 8.88 lineto
 0.66 7.17 0.93 4.38 3.03 2.76 curveto
 7.38 -1.59 8.25 -3.63 8.04 -7.80 curveto
 7.80 -12.33 6.39 -14.46 5.46 -16.20 curveto
 5.25 -16.05 lineto
 6.63 -13.59 7.41 -10.74 7.32 -7.71 curveto
 7.29 -3.57 3.54 0.00 0.63 0.00 curveto
 0.63 -0.72 lineto
 0.00 -0.72 lineto
 0.00 8.88 lineto
  fill
} def 
 gsave [ 1.000 0 0 1.000 228.783 157.443 ] concat
draw4
 grestore
/draw5 { 
% extend flag up
 0.00 8.88 moveto
 0.63 8.88 lineto
 0.75 5.88 1.95 4.74 3.66 2.82 curveto
 6.39 -0.33 12.00 -4.80 7.92 -15.36 curveto
 7.86 -14.82 lineto
 9.57 -9.75 8.70 -5.55 7.20 -3.54 curveto
 5.82 -1.53 1.95 2.28 0.78 0.99 curveto
 0.78 -0.75 lineto
 0.00 -0.75 lineto
 0.00 8.88 lineto
  fill
} def 
 gsave [ 1.000 0 0 1.000 228.783 163.443 ] concat
draw5
 grestore
 1.200 setlinewidth
 217.95 139.44 moveto
 232.53 139.44 lineto
 stroke
 0 setlinewidth
 0.750 setlinewidth
 273.47 157.56 moveto
 273.47 168.60 lineto
 361.97 139.44 moveto
 361.97 171.71 lineto
 406.22 147.00 moveto
 406.22 173.27 lineto
 450.47 155.77 moveto
 450.47 174.83 lineto
 stroke
 0 setlinewidth
 273.47 164.36 moveto
 273.47 168.61 lineto
 450.47 174.85 lineto
 450.47 170.59 lineto
 273.47 164.36 lineto
  fill
 361.97 159.44 moveto
 361.97 163.70 lineto
 450.47 166.81 lineto
 450.47 162.56 lineto
 361.97 159.44 lineto
  fill
/draw6 { 
% 8th rest
 4.92 3.93 moveto
 5.13 6.66 1.38 7.08 0.84 4.08 curveto
 0.96 0.90 4.77 0.99 6.72 2.58 curveto
 4.20 -7.68 lineto
 5.22 -7.68 lineto
 8.58 6.00 lineto
 7.77 6.00 lineto
 7.47 4.20 5.64 2.22 4.26 2.37 curveto
 4.62 2.88 4.98 3.42 4.92 3.93 curveto
  fill
} def 
 gsave [ 1.000 0 0 1.000 265.202 139.473 ] concat
draw6
 grestore
/draw7 { 
 0.000 0.000 1.500 0 360 newpath arc fill
} def 
 gsave [ 1.000 0 0 1.000 357.992 131.943 ] concat
draw7
 grestore
 gsave [ 1.000 0 0 1.000 353.702 139.443 ] concat
 0.00 0.00 moveto
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 1.200 setlinewidth
 350.70 139.44 moveto
 365.28 139.44 lineto
 stroke
 0 setlinewidth
/draw8 { 
% accent
 0.00 0.00 moveto
 12.00 3.72 lineto
 0.00 7.44 lineto
 0.00 6.48 lineto
 9.00 3.72 lineto
 0.00 0.96 lineto
 0.00 0.00 lineto
  fill
} def 
 gsave [ 1.000 0 0 1.000 396.242 184.803 ] concat
draw8
 grestore
 gsave [ 1.000 0 0 1.000 397.952 147.003 ] concat
 0.00 0.00 moveto
/draw9 { 
% flat
 0.81 2.58 moveto
 0.81 14.49 lineto
 0.00 14.49 lineto
 0.00 -5.79 lineto
 0.36 -5.58 2.10 -4.17 2.91 -3.57 curveto
 4.23 -2.58 7.32 -0.72 6.45 2.46 curveto
 4.95 6.12 0.81 2.61 0.81 2.58 curveto
 0.81 1.11 moveto
 0.81 -4.11 lineto
 0.96 -4.20 6.18 0.87 3.60 2.70 curveto
 3.36 2.79 2.55 3.15 0.81 1.11 curveto
  eofill
} def 
 gsave [ 1.000 0.000 0.000 1.000 -8.535 0 ] concat
draw9
 grestore
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 226.74 132.69 moveto
 206.12 35.19 387.93 159.69 400.74 140.25 curveto
 387.93 158.79 206.12 34.29 226.74 132.69 curveto
  fill
/draw10 { 
% 16th rest
 3.06 -5.10 moveto
 3.84 -4.56 4.23 -3.84 4.08 -3.39 curveto
 4.32 -0.96 0.51 -0.60 0.00 -3.39 curveto
 0.00 -6.72 4.38 -6.72 6.24 -4.89 curveto
 3.54 -15.09 lineto
 4.50 -15.09 lineto
 10.02 6.00 lineto
 9.06 6.00 lineto
 8.76 4.23 6.63 1.95 5.04 2.31 curveto
 5.01 2.37 4.86 2.43 4.92 2.46 curveto
 5.58 2.88 5.88 3.57 5.82 4.08 curveto
 5.91 6.63 2.10 7.02 1.68 4.08 curveto
 1.74 0.87 6.15 0.54 8.28 3.00 curveto
 6.96 -2.04 lineto
 6.63 -3.78 4.95 -5.43 3.18 -5.13 curveto
  fill
} def 
 gsave [ 1.000 0 0 1.000 441.481 146.973 ] concat
draw10
 grestore
/draw11 { 
% fermata
 0.00 0.00 moveto
 -0.69 5.91 4.20 11.40 10.14 11.40 curveto
 16.05 11.40 20.94 5.91 20.25 0.00 curveto
 -0.30 0.00 rlineto
 19.56 5.19 15.39 8.88 10.14 8.88 curveto
 4.89 8.88 0.69 5.19 0.30 0.00 curveto
 0.00 0.00 lineto
  fill
 10.140 2.775 1.500 0 360 newpath arc fill
} def 
 gsave [ 1.000 0 0 1.000 480.571 184.743 ] concat
draw11
 grestore
 gsave [ 1.000 0 0 1.000 486.451 165.903 ] concat
 0.00 0.00 moveto
/draw12 { 
% double flat
% flat
 0.81 2.58 moveto
 0.81 14.49 lineto
 0.00 14.49 lineto
 0.00 -5.79 lineto
 0.36 -5.58 2.10 -4.17 2.91 -3.57 curveto
 4.23 -2.58 7.32 -0.72 6.45 2.46 curveto
 4.95 6.12 0.81 2.61 0.81 2.58 curveto
 0.81 1.11 moveto
 0.81 -4.11 lineto
 0.96 -4.20 6.18 0.87 3.60 2.70 curveto
 3.36 2.79 2.55 3.15 0.81 1.11 curveto
  eofill
 gsave [ 1 0 0 1 6.000 0 ] concat
% flat
 0.81 2.58 moveto
 0.81 14.49 lineto
 0.00 14.49 lineto
 0.00 -5.79 lineto
 0.36 -5.58 2.10 -4.17 2.91 -3.57 curveto
 4.23 -2.58 7.32 -0.72 6.45 2.46 curveto
 4.95 6.12 0.81 2.61 0.81 2.58 curveto
 0.81 1.11 moveto
 0.81 -4.11 lineto
 0.96 -4.20 6.18 0.87 3.60 2.70 curveto
 3.36 2.79 2.55 3.15 0.81 1.11 curveto
  eofill
 grestore
} def 
 gsave [ 1.000 0.000 0.000 1.000 -15.135 0 ] concat
draw12
 grestore
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 0.750 setlinewidth
 486.83 165.90 moveto
 486.83 141.90 lineto
 stroke
 0 setlinewidth
 231.45 173.19 moveto
 357.99 188.19 402.24 187.65 489.24 172.65 curveto
 402.24 186.75 357.99 187.29 231.45 173.19 curveto
  fill
 gsave [ 1.115 0.000 0.000 1.115 163.584 124.502 ] concat
 -1.05 0.00 moveto
 16.50 15.84 -5.16 24.00 7.11 47.16 curveto
 -8.85 22.50 12.45 10.80 -1.05 0.00 curveto
  fill
 -1.05 0.00 moveto
 16.50 -15.84 -5.16 -24.00 7.11 -47.16 curveto
 -8.85 -22.50 12.45 -10.80 -1.05 0.00 curveto
  fill
 grestore
 176.10 72.00 moveto
 0.600 setlinewidth
 176.10 177.00 lineto
 stroke
 gsave [ 1.000 0 0 1.000 36.000 82.203 ] concat
 0.00 0.00 moveto
 /Times-Roman findfont 12 scalefont setfont
 (B) show
 grestore
 gsave [ 0.400 0.000 0.000 0.400 43.800 83.703 ] concat
draw9
 grestore
 gsave [ 1.000 0 0 1.000 45.600 82.203 ] concat
 0.00 0.00 moveto
 /Times-Roman findfont 12 scalefont setfont
 ( -``thunder'') show
 grestore
% staff lines
 0.600 setlinewidth
 176.10 72.00 moveto
 576.00 72.00 lineto
 176.10 79.56 moveto
 576.00 79.56 lineto
 176.10 87.12 moveto
 576.00 87.12 lineto
 176.10 94.68 moveto
 576.00 94.68 lineto
 176.10 102.24 moveto
 576.00 102.24 lineto
 stroke
 0 setlinewidth
/draw13 { 
% bass clef
 1.74 2.25 moveto
 3.45 1.59 3.24 4.35 6.69 2.94 curveto
 8.76 1.56 8.34 -1.71 5.19 -2.16 curveto
 2.55 -2.40 0.09 -0.54 0.21 2.94 curveto
 1.35 7.86 7.14 8.64 10.29 7.50 curveto
 14.76 5.76 15.96 2.01 15.51 -1.41 curveto
 14.91 -8.76 2.16 -15.66 0.51 -16.05 curveto
 0.21 -15.36 lineto
 3.81 -13.56 9.06 -10.26 11.01 -4.56 curveto
 13.11 1.35 11.31 5.61 8.25 6.81 curveto
 3.84 8.01 0.36 4.95 1.86 2.25 curveto
  fill
 18.000 3.000 1.575 0 360 newpath arc fill
 18.000 -3.000 1.575 0 360 newpath arc fill
} def 
 gsave [ 1.000 0 0 1.000 180.300 94.503 ] concat
draw13
 grestore
 gsave [ 0.800 0.000 0.000 2.400 184.611 41.763 ] concat
 gsave [ 1 0 0 1 0.000 0.000 ] concat
% m
 5.64 0.00 moveto
 8.13 6.78 lineto
 8.61 8.10 7.56 9.09 6.21 6.75 curveto
 3.60 0.00 lineto
 1.56 0.00 lineto
 4.71 7.83 lineto
 4.80 9.12 2.16 7.98 1.35 5.52 curveto
 0.81 5.52 lineto
 1.68 7.35 3.00 9.03 4.77 8.76 curveto
 5.64 8.58 6.00 7.86 6.00 7.29 curveto
 6.84 9.09 9.81 9.36 9.99 7.29 curveto
 11.19 9.51 14.64 9.09 14.04 7.08 curveto
 11.88 1.14 lineto
 11.58 0.03 13.05 0.72 13.80 2.22 curveto
 14.16 2.13 lineto
 12.87 -0.78 9.30 -1.95 10.05 0.57 curveto
 12.09 6.66 lineto
 12.72 8.19 11.25 8.73 10.38 6.84 curveto
 7.92 0.00 lineto
 5.58 0.00 lineto
  fill
 grestore
 gsave [ 1 0 0 1 11.160 0 ] concat
% f
 12.60 7.14 moveto
 9.90 7.14 lineto
 9.90 6.90 10.02 10.44 12.54 11.58 curveto
 13.32 11.94 14.88 12.00 14.70 11.22 curveto
 14.64 10.86 13.86 11.10 13.56 10.80 curveto
 12.87 10.26 12.78 9.24 13.44 8.76 curveto
 14.34 8.28 15.63 8.76 15.42 10.32 curveto
 15.42 12.00 13.68 12.96 11.58 12.42 curveto
 7.74 11.40 6.96 7.20 7.02 7.14 curveto
 4.74 7.14 lineto
 4.74 6.30 lineto
 6.84 6.30 lineto
 6.84 6.24 5.16 -1.38 3.66 -3.51 curveto
 3.42 -3.99 2.88 -4.74 2.34 -4.74 curveto
 1.68 -4.86 1.38 -4.26 1.80 -4.17 curveto
 2.97 -4.14 3.39 -2.22 1.68 -1.77 curveto
 0.66 -1.56 -0.54 -3.06 0.21 -4.38 curveto
 0.78 -5.28 2.64 -5.64 4.02 -4.86 curveto
 7.32 -3.00 8.61 1.38 9.72 6.30 curveto
 12.60 6.30 lineto
 12.60 7.14 lineto
  fill
 grestore
 grestore
 gsave [ 1.000 0 0 1.000 220.743 49.383 ] concat
% tenuto
 1.500 setlinewidth
 0.00 0.00 moveto
 9.00 0.00 rlineto
 stroke
 0 setlinewidth
 grestore
 gsave [ 1.000 0 0 1.000 220.953 56.883 ] concat
 0.00 0.00 moveto
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 0.750 setlinewidth
 229.16 56.88 moveto
 229.16 87.27 lineto
 stroke
 0 setlinewidth
 gsave [ 1.000 0 0 1.000 228.783 84.273 ] concat
draw4
 grestore
 1.200 setlinewidth
 217.95 56.88 moveto
 232.53 56.88 lineto
 217.95 64.44 moveto
 232.53 64.44 lineto
 stroke
 0 setlinewidth
 gsave [ 1.000 0 0 1.000 307.742 102.303 ] concat
draw8
 grestore
 gsave [ 1.326 0.447 -0.895 0.663 274.754 45.543 ] concat
 gsave [ 1 0 0 1 0.000 0.000 ] concat
% s
 4.44 1.98 moveto
 4.83 0.84 3.90 0.06 2.49 0.27 curveto
 0.96 1.14 3.21 1.35 2.31 2.64 curveto
 1.65 3.39 0.54 3.03 0.42 2.04 curveto
 0.57 -1.29 6.48 -1.23 6.24 2.28 curveto
 6.00 4.23 3.39 5.01 2.73 6.33 curveto
 2.16 7.65 4.02 8.91 5.16 8.04 curveto
 6.36 7.11 4.35 6.75 5.64 5.64 curveto
 6.69 5.37 7.26 5.97 7.08 6.72 curveto
 6.27 9.81 0.84 9.18 0.96 6.36 curveto
 1.11 4.47 4.26 3.48 4.44 1.98 curveto
  fill
 grestore
 gsave [ 1 0 0 1 2.580 0 ] concat
% f
 12.60 7.14 moveto
 9.90 7.14 lineto
 9.90 6.90 10.02 10.44 12.54 11.58 curveto
 13.32 11.94 14.88 12.00 14.70 11.22 curveto
 14.64 10.86 13.86 11.10 13.56 10.80 curveto
 12.87 10.26 12.78 9.24 13.44 8.76 curveto
 14.34 8.28 15.63 8.76 15.42 10.32 curveto
 15.42 12.00 13.68 12.96 11.58 12.42 curveto
 7.74 11.40 6.96 7.20 7.02 7.14 curveto
 4.74 7.14 lineto
 4.74 6.30 lineto
 6.84 6.30 lineto
 6.84 6.24 5.16 -1.38 3.66 -3.51 curveto
 3.42 -3.99 2.88 -4.74 2.34 -4.74 curveto
 1.68 -4.86 1.38 -4.26 1.80 -4.17 curveto
 2.97 -4.14 3.39 -2.22 1.68 -1.77 curveto
 0.66 -1.56 -0.54 -3.06 0.21 -4.38 curveto
 0.78 -5.28 2.64 -5.64 4.02 -4.86 curveto
 7.32 -3.00 8.61 1.38 9.72 6.30 curveto
 12.60 6.30 lineto
 12.60 7.14 lineto
  fill
 grestore
 gsave [ 1 0 0 1 13.500 -1.500 ] concat
% z
 2.46 8.61 moveto
 1.56 6.66 lineto
 2.07 6.66 lineto
 2.67 7.20 lineto
 7.14 7.20 lineto
 -0.09 0.18 lineto
 1.02 0.18 lineto
 2.16 1.29 4.68 0.84 5.73 0.09 curveto
 8.22 -0.63 9.06 1.38 7.95 3.03 curveto
 7.53 3.51 6.57 3.54 6.15 2.79 curveto
 6.18 1.50 7.47 2.25 7.38 1.23 curveto
 6.18 0.00 5.88 3.39 2.76 1.83 curveto
 8.97 7.83 lineto
 8.97 8.61 lineto
 2.46 8.61 lineto
  fill
 grestore
 grestore
 gsave [ 0.800 0.000 0.000 0.800 313.742 45.543 ] concat
 gsave [ 1 0 0 1 0.000 0.000 ] concat
% s
 4.44 1.98 moveto
 4.83 0.84 3.90 0.06 2.49 0.27 curveto
 0.96 1.14 3.21 1.35 2.31 2.64 curveto
 1.65 3.39 0.54 3.03 0.42 2.04 curveto
 0.57 -1.29 6.48 -1.23 6.24 2.28 curveto
 6.00 4.23 3.39 5.01 2.73 6.33 curveto
 2.16 7.65 4.02 8.91 5.16 8.04 curveto
 6.36 7.11 4.35 6.75 5.64 5.64 curveto
 6.69 5.37 7.26 5.97 7.08 6.72 curveto
 6.27 9.81 0.84 9.18 0.96 6.36 curveto
 1.11 4.47 4.26 3.48 4.44 1.98 curveto
  fill
 grestore
 gsave [ 1 0 0 1 4.080 0 ] concat
% f
 12.60 7.14 moveto
 9.90 7.14 lineto
 9.90 6.90 10.02 10.44 12.54 11.58 curveto
 13.32 11.94 14.88 12.00 14.70 11.22 curveto
 14.64 10.86 13.86 11.10 13.56 10.80 curveto
 12.87 10.26 12.78 9.24 13.44 8.76 curveto
 14.34 8.28 15.63 8.76 15.42 10.32 curveto
 15.42 12.00 13.68 12.96 11.58 12.42 curveto
 7.74 11.40 6.96 7.20 7.02 7.14 curveto
 4.74 7.14 lineto
 4.74 6.30 lineto
 6.84 6.30 lineto
 6.84 6.24 5.16 -1.38 3.66 -3.51 curveto
 3.42 -3.99 2.88 -4.74 2.34 -4.74 curveto
 1.68 -4.86 1.38 -4.26 1.80 -4.17 curveto
 2.97 -4.14 3.39 -2.22 1.68 -1.77 curveto
 0.66 -1.56 -0.54 -3.06 0.21 -4.38 curveto
 0.78 -5.28 2.64 -5.64 4.02 -4.86 curveto
 7.32 -3.00 8.61 1.38 9.72 6.30 curveto
 12.60 6.30 lineto
 12.60 7.14 lineto
  fill
 grestore
 gsave [ 1 0 0 1 13.500 0 ] concat
% z
 2.46 8.61 moveto
 1.56 6.66 lineto
 2.07 6.66 lineto
 2.67 7.20 lineto
 7.14 7.20 lineto
 -0.09 0.18 lineto
 1.02 0.18 lineto
 2.16 1.29 4.68 0.84 5.73 0.09 curveto
 8.22 -0.63 9.06 1.38 7.95 3.03 curveto
 7.53 3.51 6.57 3.54 6.15 2.79 curveto
 6.18 1.50 7.47 2.25 7.38 1.23 curveto
 6.18 0.00 5.88 3.39 2.76 1.83 curveto
 8.97 7.83 lineto
 8.97 8.61 lineto
 2.46 8.61 lineto
  fill
 grestore
 gsave [ 1 0 0 1 19.470 0 ] concat
% p
 5.52 1.41 moveto
 6.09 0.48 6.54 0.18 7.44 0.12 curveto
 11.37 0.06 13.92 6.90 10.08 8.70 curveto
 8.40 9.30 6.84 7.86 6.33 7.38 curveto
 6.30 9.99 3.78 9.36 2.04 4.59 curveto
 2.67 4.41 lineto
 4.65 9.30 6.15 8.37 5.55 6.72 curveto
 1.20 -3.60 lineto
 0.00 -3.60 lineto
 0.00 -4.38 lineto
 4.71 -4.38 lineto
 4.71 -3.60 lineto
 3.51 -3.60 lineto
 5.52 1.41 lineto
 6.66 1.41 moveto
 4.80 2.58 7.35 7.83 9.63 8.04 curveto
 11.31 6.54 9.09 0.87 6.66 1.41 curveto
  fill
 grestore
 gsave [ 1 0 0 1 28.590 0 ] concat
% I
 0.600 setlinewidth
 9.00 -6.00 moveto
 0.00 21.00 rlineto
 stroke
 0.000 setlinewidth
 grestore
 gsave [ 1 0 0 1 40.590 0 ] concat
% m
 5.64 0.00 moveto
 8.13 6.78 lineto
 8.61 8.10 7.56 9.09 6.21 6.75 curveto
 3.60 0.00 lineto
 1.56 0.00 lineto
 4.71 7.83 lineto
 4.80 9.12 2.16 7.98 1.35 5.52 curveto
 0.81 5.52 lineto
 1.68 7.35 3.00 9.03 4.77 8.76 curveto
 5.64 8.58 6.00 7.86 6.00 7.29 curveto
 6.84 9.09 9.81 9.36 9.99 7.29 curveto
 11.19 9.51 14.64 9.09 14.04 7.08 curveto
 11.88 1.14 lineto
 11.58 0.03 13.05 0.72 13.80 2.22 curveto
 14.16 2.13 lineto
 12.87 -0.78 9.30 -1.95 10.05 0.57 curveto
 12.09 6.66 lineto
 12.72 8.19 11.25 8.73 10.38 6.84 curveto
 7.92 0.00 lineto
 5.58 0.00 lineto
  fill
 grestore
 gsave [ 1 0 0 1 53.250 0 ] concat
% f
 12.60 7.14 moveto
 9.90 7.14 lineto
 9.90 6.90 10.02 10.44 12.54 11.58 curveto
 13.32 11.94 14.88 12.00 14.70 11.22 curveto
 14.64 10.86 13.86 11.10 13.56 10.80 curveto
 12.87 10.26 12.78 9.24 13.44 8.76 curveto
 14.34 8.28 15.63 8.76 15.42 10.32 curveto
 15.42 12.00 13.68 12.96 11.58 12.42 curveto
 7.74 11.40 6.96 7.20 7.02 7.14 curveto
 4.74 7.14 lineto
 4.74 6.30 lineto
 6.84 6.30 lineto
 6.84 6.24 5.16 -1.38 3.66 -3.51 curveto
 3.42 -3.99 2.88 -4.74 2.34 -4.74 curveto
 1.68 -4.86 1.38 -4.26 1.80 -4.17 curveto
 2.97 -4.14 3.39 -2.22 1.68 -1.77 curveto
 0.66 -1.56 -0.54 -3.06 0.21 -4.38 curveto
 0.78 -5.28 2.64 -5.64 4.02 -4.86 curveto
 7.32 -3.00 8.61 1.38 9.72 6.30 curveto
 12.60 6.30 lineto
 12.60 7.14 lineto
  fill
 grestore
 gsave [ 1 0 0 1 62.670 0 ] concat
% r
 6.30 0.30 moveto
 7.29 5.52 7.86 6.57 8.85 7.38 curveto
 10.50 7.83 9.33 6.39 10.47 5.94 curveto
 11.94 5.43 12.93 7.56 11.04 8.73 curveto
 9.81 9.24 8.34 8.04 7.68 7.05 curveto
 9.09 10.08 5.16 10.35 2.16 5.94 curveto
 2.55 5.58 lineto
 3.69 7.44 6.18 9.36 5.55 7.17 curveto
 3.87 0.30 lineto
 6.30 0.30 lineto
  fill
 grestore
 gsave [ 1 0 0 1 71.550 0.900 ] concat
% z
 2.46 8.61 moveto
 1.56 6.66 lineto
 2.07 6.66 lineto
 2.67 7.20 lineto
 7.14 7.20 lineto
 -0.09 0.18 lineto
 1.02 0.18 lineto
 2.16 1.29 4.68 0.84 5.73 0.09 curveto
 8.22 -0.63 9.06 1.38 7.95 3.03 curveto
 7.53 3.51 6.57 3.54 6.15 2.79 curveto
 6.18 1.50 7.47 2.25 7.38 1.23 curveto
 6.18 0.00 5.88 3.39 2.76 1.83 curveto
 8.97 7.83 lineto
 8.97 8.61 lineto
 2.46 8.61 lineto
  fill
 grestore
 grestore
 gsave [ 1.000 0 0 1.000 309.452 60.663 ] concat
 0.00 0.00 moveto
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 0.750 setlinewidth
 317.66 60.66 moveto
 317.66 87.27 lineto
 stroke
 0 setlinewidth
 gsave [ 1.000 0 0 1.000 317.282 84.273 ] concat
draw4
 grestore
 1.200 setlinewidth
 307.35 64.44 moveto
 321.03 64.44 lineto
 stroke
 0 setlinewidth
 404.57 69.78 moveto
 412.07 66.03 507.79 66.03 515.29 69.78 curveto
 507.79 64.83 412.07 64.83 404.57 69.78 curveto
  fill
 gsave [ 1.000 0 0 1.000 397.952 75.783 ] concat
 0.00 0.00 moveto
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw3
 grestore
 grestore
 0.750 setlinewidth
 406.16 75.78 moveto
 406.16 99.78 lineto
 stroke
 0 setlinewidth
 gsave [ 1.000 0 0 1.000 519.494 68.283 ] concat
draw7
 grestore
 gsave [ 1.000 0 0 1.000 515.129 75.783 ] concat
 0.00 0.00 moveto
/draw14 { 
% half note
 0.42 -3.03 moveto
 -2.07 1.11 5.37 5.91 7.86 3.21 curveto
 11.19 -0.30 3.93 -5.79 0.45 -3.03 curveto
 1.11 -2.46 moveto
 0.27 -0.21 6.03 3.75 6.99 2.61 curveto
 8.55 0.81 2.73 -4.17 1.11 -2.46 curveto
  eofill
} def 
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw14
 grestore
 grestore
 0.750 setlinewidth
 523.48 76.38 moveto
 523.48 99.78 lineto
 stroke
 0 setlinewidth
 gsave [ 0.800 0.000 0.000 0.800 538.492 41.763 ] concat
 gsave [ 1 0 0 1 0.000 0.000 ] concat
% p
 5.52 1.41 moveto
 6.09 0.48 6.54 0.18 7.44 0.12 curveto
 11.37 0.06 13.92 6.90 10.08 8.70 curveto
 8.40 9.30 6.84 7.86 6.33 7.38 curveto
 6.30 9.99 3.78 9.36 2.04 4.59 curveto
 2.67 4.41 lineto
 4.65 9.30 6.15 8.37 5.55 6.72 curveto
 1.20 -3.60 lineto
 0.00 -3.60 lineto
 0.00 -4.38 lineto
 4.71 -4.38 lineto
 4.71 -3.60 lineto
 3.51 -3.60 lineto
 5.52 1.41 lineto
 6.66 1.41 moveto
 4.80 2.58 7.35 7.83 9.63 8.04 curveto
 11.31 6.54 9.09 0.87 6.66 1.41 curveto
  fill
 grestore
 gsave [ 1 0 0 1 9.120 0 ] concat
% p
 5.52 1.41 moveto
 6.09 0.48 6.54 0.18 7.44 0.12 curveto
 11.37 0.06 13.92 6.90 10.08 8.70 curveto
 8.40 9.30 6.84 7.86 6.33 7.38 curveto
 6.30 9.99 3.78 9.36 2.04 4.59 curveto
 2.67 4.41 lineto
 4.65 9.30 6.15 8.37 5.55 6.72 curveto
 1.20 -3.60 lineto
 0.00 -3.60 lineto
 0.00 -4.38 lineto
 4.71 -4.38 lineto
 4.71 -3.60 lineto
 3.51 -3.60 lineto
 5.52 1.41 lineto
 6.66 1.41 moveto
 4.80 2.58 7.35 7.83 9.63 8.04 curveto
 11.31 6.54 9.09 0.87 6.66 1.41 curveto
  fill
 grestore
 gsave [ 1 0 0 1 18.240 0 ] concat
% p
 5.52 1.41 moveto
 6.09 0.48 6.54 0.18 7.44 0.12 curveto
 11.37 0.06 13.92 6.90 10.08 8.70 curveto
 8.40 9.30 6.84 7.86 6.33 7.38 curveto
 6.30 9.99 3.78 9.36 2.04 4.59 curveto
 2.67 4.41 lineto
 4.65 9.30 6.15 8.37 5.55 6.72 curveto
 1.20 -3.60 lineto
 0.00 -3.60 lineto
 0.00 -4.38 lineto
 4.71 -4.38 lineto
 4.71 -3.60 lineto
 3.51 -3.60 lineto
 5.52 1.41 lineto
 6.66 1.41 moveto
 4.80 2.58 7.35 7.83 9.63 8.04 curveto
 11.31 6.54 9.09 0.87 6.66 1.41 curveto
  fill
 grestore
 grestore
 gsave [ 1.000 0 0 1.000 544.417 56.883 ] concat
 0.00 0.00 moveto
/draw15 { 
% whole note
 5.94 3.81 moveto
 8.79 3.81 12.06 2.61 12.15 0.00 curveto
 12.24 -2.85 8.79 -3.84 5.94 -3.81 curveto
 3.21 -3.75 0.00 -2.61 0.00 0.00 curveto
 0.06 2.73 3.12 3.81 5.94 3.81 curveto
 4.89 3.24 moveto
 6.75 3.72 8.10 1.95 8.43 0.03 curveto
 8.67 -1.50 8.61 -2.73 7.26 -3.24 curveto
 5.58 -3.75 4.41 -2.25 3.90 -0.69 curveto
 3.42 1.17 3.36 2.67 4.89 3.24 curveto
  eofill
} def 
 gsave [ 1.000 0.000 0.000 1.000 0 0 ] concat
draw15
 grestore
 grestore
 1.200 setlinewidth
 541.42 56.88 moveto
 559.57 56.88 lineto
 541.42 64.44 moveto
 559.57 64.44 lineto
 stroke
 0 setlinewidth
 grestore
 showpage
%%Trailer
%%BoundingBox: -8 -46 577 261

--=-=-=


from the following score:

(let ((loc-slur-1 #f)
      (loc-slur-2 #f))
  (cmn (size 30)
       (full-last-line #t)
       (system Brace 
	       (staff (staff-name "D-sharp - ukulele" (dx 1.0))
		      (treble)
		      (cs4 s
			   (begin (set! loc-slur-1
					(begin-slur (slur-direction :down)
                                                    (dx1 -2.0) (dy1 -3.0) (dy2 1.0)))
				  loc-slur-1)
			   (begin
			    (set! loc-slur-2
				  (begin-slur (slur-direction :up) ))
			    loc-slur-2))
		      (eighth-rest (begin-beam))
		      (c4 s (staccato) )
		      (ef4 s Accent (end-slur loc-slur-1))
		      (sixteenth-rest (end-beam))
		      (c5 q (double-flat) Fermata   (end-slur loc-slur-2)))
	       (staff (staff-name "B-flat -``thunder''")
		      Bass
		      (c2 e (mf (dx -1) (scale 1.0 3.0)) Tenuto)
		      (d2 e (accent (justification :above) (dy -0.25))
			  (sfz (dx -1.0) 
			       (scale 2.0 1) (rotate 34))
			  (dynamic "sfzpImfrz"))
		      (a2 q (begin-tie))
		      (a2 h (end-tie) Staccato)
		      (c2 w Ppp)))))

--=-=-=--