LilyPond-Ruby 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1109) hide show
  1. checksums.yaml +4 -4
  2. data/etc/fonts/conf.d/10-hinting-slight.conf +15 -0
  3. data/etc/fonts/conf.d/10-scale-bitmap-fonts.conf +83 -0
  4. data/etc/fonts/conf.d/11-lcdfilter-default.conf +17 -0
  5. data/etc/fonts/conf.d/20-unhint-small-vera.conf +49 -0
  6. data/etc/fonts/conf.d/30-metric-aliases.conf +637 -0
  7. data/etc/fonts/conf.d/40-nonlatin.conf +332 -0
  8. data/etc/fonts/conf.d/45-generic.conf +136 -0
  9. data/etc/fonts/conf.d/45-latin.conf +301 -0
  10. data/etc/fonts/conf.d/48-spacing.conf +16 -0
  11. data/etc/fonts/conf.d/49-sansserif.conf +22 -0
  12. data/etc/fonts/conf.d/50-user.conf +16 -0
  13. data/etc/fonts/conf.d/51-local.conf +7 -0
  14. data/etc/fonts/conf.d/60-generic.conf +64 -0
  15. data/etc/fonts/conf.d/60-latin.conf +88 -0
  16. data/etc/fonts/conf.d/65-fonts-persian.conf +418 -0
  17. data/etc/fonts/conf.d/65-nonlatin.conf +228 -0
  18. data/etc/fonts/conf.d/69-unifont.conf +28 -0
  19. data/etc/fonts/conf.d/80-delicious.conf +19 -0
  20. data/etc/fonts/conf.d/90-synthetic.conf +64 -0
  21. data/etc/fonts/conf.d/README +23 -0
  22. data/etc/fonts/fonts.conf +101 -0
  23. data/etc/relocate/fontconfig.reloc +2 -0
  24. data/etc/relocate/guile.reloc +2 -0
  25. data/etc/relocate/libexec.reloc +1 -0
  26. data/lib/guile/2.2/ccache/ice-9/and-let-star.go +0 -0
  27. data/lib/guile/2.2/ccache/ice-9/arrays.go +0 -0
  28. data/lib/guile/2.2/ccache/ice-9/atomic.go +0 -0
  29. data/lib/guile/2.2/ccache/ice-9/binary-ports.go +0 -0
  30. data/lib/guile/2.2/ccache/ice-9/boot-9.go +0 -0
  31. data/lib/guile/2.2/ccache/ice-9/buffered-input.go +0 -0
  32. data/lib/guile/2.2/ccache/ice-9/calling.go +0 -0
  33. data/lib/guile/2.2/ccache/ice-9/channel.go +0 -0
  34. data/lib/guile/2.2/ccache/ice-9/command-line.go +0 -0
  35. data/lib/guile/2.2/ccache/ice-9/common-list.go +0 -0
  36. data/lib/guile/2.2/ccache/ice-9/control.go +0 -0
  37. data/lib/guile/2.2/ccache/ice-9/curried-definitions.go +0 -0
  38. data/lib/guile/2.2/ccache/ice-9/debug.go +0 -0
  39. data/lib/guile/2.2/ccache/ice-9/deprecated.go +0 -0
  40. data/lib/guile/2.2/ccache/ice-9/documentation.go +0 -0
  41. data/lib/guile/2.2/ccache/ice-9/eval-string.go +0 -0
  42. data/lib/guile/2.2/ccache/ice-9/eval.go +0 -0
  43. data/lib/guile/2.2/ccache/ice-9/expect.go +0 -0
  44. data/lib/guile/2.2/ccache/ice-9/fdes-finalizers.go +0 -0
  45. data/lib/guile/2.2/ccache/ice-9/format.go +0 -0
  46. data/lib/guile/2.2/ccache/ice-9/ftw.go +0 -0
  47. data/lib/guile/2.2/ccache/ice-9/futures.go +0 -0
  48. data/lib/guile/2.2/ccache/ice-9/gap-buffer.go +0 -0
  49. data/lib/guile/2.2/ccache/ice-9/getopt-long.go +0 -0
  50. data/lib/guile/2.2/ccache/ice-9/hash-table.go +0 -0
  51. data/lib/guile/2.2/ccache/ice-9/hcons.go +0 -0
  52. data/lib/guile/2.2/ccache/ice-9/history.go +0 -0
  53. data/lib/guile/2.2/ccache/ice-9/i18n.go +0 -0
  54. data/lib/guile/2.2/ccache/ice-9/iconv.go +0 -0
  55. data/lib/guile/2.2/ccache/ice-9/lineio.go +0 -0
  56. data/lib/guile/2.2/ccache/ice-9/list.go +0 -0
  57. data/lib/guile/2.2/ccache/ice-9/local-eval.go +0 -0
  58. data/lib/guile/2.2/ccache/ice-9/ls.go +0 -0
  59. data/lib/guile/2.2/ccache/ice-9/mapping.go +0 -0
  60. data/lib/guile/2.2/ccache/ice-9/match.go +0 -0
  61. data/lib/guile/2.2/ccache/ice-9/networking.go +0 -0
  62. data/lib/guile/2.2/ccache/ice-9/null.go +0 -0
  63. data/lib/guile/2.2/ccache/ice-9/occam-channel.go +0 -0
  64. data/lib/guile/2.2/ccache/ice-9/optargs.go +0 -0
  65. data/lib/guile/2.2/ccache/ice-9/peg/cache.go +0 -0
  66. data/lib/guile/2.2/ccache/ice-9/peg/codegen.go +0 -0
  67. data/lib/guile/2.2/ccache/ice-9/peg/simplify-tree.go +0 -0
  68. data/lib/guile/2.2/ccache/ice-9/peg/string-peg.go +0 -0
  69. data/lib/guile/2.2/ccache/ice-9/peg/using-parsers.go +0 -0
  70. data/lib/guile/2.2/ccache/ice-9/peg.go +0 -0
  71. data/lib/guile/2.2/ccache/ice-9/poe.go +0 -0
  72. data/lib/guile/2.2/ccache/ice-9/poll.go +0 -0
  73. data/lib/guile/2.2/ccache/ice-9/popen.go +0 -0
  74. data/lib/guile/2.2/ccache/ice-9/ports.go +0 -0
  75. data/lib/guile/2.2/ccache/ice-9/posix.go +0 -0
  76. data/lib/guile/2.2/ccache/ice-9/pretty-print.go +0 -0
  77. data/lib/guile/2.2/ccache/ice-9/psyntax-pp.go +0 -0
  78. data/lib/guile/2.2/ccache/ice-9/q.go +0 -0
  79. data/lib/guile/2.2/ccache/ice-9/r5rs.go +0 -0
  80. data/lib/guile/2.2/ccache/ice-9/rdelim.go +0 -0
  81. data/lib/guile/2.2/ccache/ice-9/receive.go +0 -0
  82. data/lib/guile/2.2/ccache/ice-9/regex.go +0 -0
  83. data/lib/guile/2.2/ccache/ice-9/runq.go +0 -0
  84. data/lib/guile/2.2/ccache/ice-9/rw.go +0 -0
  85. data/lib/guile/2.2/ccache/ice-9/safe-r5rs.go +0 -0
  86. data/lib/guile/2.2/ccache/ice-9/safe.go +0 -0
  87. data/lib/guile/2.2/ccache/ice-9/sandbox.go +0 -0
  88. data/lib/guile/2.2/ccache/ice-9/save-stack.go +0 -0
  89. data/lib/guile/2.2/ccache/ice-9/scm-style-repl.go +0 -0
  90. data/lib/guile/2.2/ccache/ice-9/serialize.go +0 -0
  91. data/lib/guile/2.2/ccache/ice-9/session.go +0 -0
  92. data/lib/guile/2.2/ccache/ice-9/slib.go +0 -0
  93. data/lib/guile/2.2/ccache/ice-9/stack-catch.go +0 -0
  94. data/lib/guile/2.2/ccache/ice-9/streams.go +0 -0
  95. data/lib/guile/2.2/ccache/ice-9/string-fun.go +0 -0
  96. data/lib/guile/2.2/ccache/ice-9/suspendable-ports.go +0 -0
  97. data/lib/guile/2.2/ccache/ice-9/syncase.go +0 -0
  98. data/lib/guile/2.2/ccache/ice-9/textual-ports.go +0 -0
  99. data/lib/guile/2.2/ccache/ice-9/threads.go +0 -0
  100. data/lib/guile/2.2/ccache/ice-9/time.go +0 -0
  101. data/lib/guile/2.2/ccache/ice-9/top-repl.go +0 -0
  102. data/lib/guile/2.2/ccache/ice-9/unicode.go +0 -0
  103. data/lib/guile/2.2/ccache/ice-9/vlist.go +0 -0
  104. data/lib/guile/2.2/ccache/ice-9/weak-vector.go +0 -0
  105. data/lib/guile/2.2/ccache/language/brainfuck/compile-scheme.go +0 -0
  106. data/lib/guile/2.2/ccache/language/brainfuck/compile-tree-il.go +0 -0
  107. data/lib/guile/2.2/ccache/language/brainfuck/parse.go +0 -0
  108. data/lib/guile/2.2/ccache/language/brainfuck/spec.go +0 -0
  109. data/lib/guile/2.2/ccache/language/bytecode/spec.go +0 -0
  110. data/lib/guile/2.2/ccache/language/bytecode.go +0 -0
  111. data/lib/guile/2.2/ccache/language/cps/closure-conversion.go +0 -0
  112. data/lib/guile/2.2/ccache/language/cps/compile-bytecode.go +0 -0
  113. data/lib/guile/2.2/ccache/language/cps/constructors.go +0 -0
  114. data/lib/guile/2.2/ccache/language/cps/contification.go +0 -0
  115. data/lib/guile/2.2/ccache/language/cps/cse.go +0 -0
  116. data/lib/guile/2.2/ccache/language/cps/dce.go +0 -0
  117. data/lib/guile/2.2/ccache/language/cps/effects-analysis.go +0 -0
  118. data/lib/guile/2.2/ccache/language/cps/elide-values.go +0 -0
  119. data/lib/guile/2.2/ccache/language/cps/handle-interrupts.go +0 -0
  120. data/lib/guile/2.2/ccache/language/cps/intmap.go +0 -0
  121. data/lib/guile/2.2/ccache/language/cps/intset.go +0 -0
  122. data/lib/guile/2.2/ccache/language/cps/licm.go +0 -0
  123. data/lib/guile/2.2/ccache/language/cps/optimize.go +0 -0
  124. data/lib/guile/2.2/ccache/language/cps/peel-loops.go +0 -0
  125. data/lib/guile/2.2/ccache/language/cps/primitives.go +0 -0
  126. data/lib/guile/2.2/ccache/language/cps/prune-bailouts.go +0 -0
  127. data/lib/guile/2.2/ccache/language/cps/prune-top-level-scopes.go +0 -0
  128. data/lib/guile/2.2/ccache/language/cps/reify-primitives.go +0 -0
  129. data/lib/guile/2.2/ccache/language/cps/renumber.go +0 -0
  130. data/lib/guile/2.2/ccache/language/cps/rotate-loops.go +0 -0
  131. data/lib/guile/2.2/ccache/language/cps/self-references.go +0 -0
  132. data/lib/guile/2.2/ccache/language/cps/simplify.go +0 -0
  133. data/lib/guile/2.2/ccache/language/cps/slot-allocation.go +0 -0
  134. data/lib/guile/2.2/ccache/language/cps/spec.go +0 -0
  135. data/lib/guile/2.2/ccache/language/cps/specialize-numbers.go +0 -0
  136. data/lib/guile/2.2/ccache/language/cps/specialize-primcalls.go +0 -0
  137. data/lib/guile/2.2/ccache/language/cps/split-rec.go +0 -0
  138. data/lib/guile/2.2/ccache/language/cps/type-checks.go +0 -0
  139. data/lib/guile/2.2/ccache/language/cps/type-fold.go +0 -0
  140. data/lib/guile/2.2/ccache/language/cps/types.go +0 -0
  141. data/lib/guile/2.2/ccache/language/cps/utils.go +0 -0
  142. data/lib/guile/2.2/ccache/language/cps/verify.go +0 -0
  143. data/lib/guile/2.2/ccache/language/cps/with-cps.go +0 -0
  144. data/lib/guile/2.2/ccache/language/cps.go +0 -0
  145. data/lib/guile/2.2/ccache/language/ecmascript/array.go +0 -0
  146. data/lib/guile/2.2/ccache/language/ecmascript/base.go +0 -0
  147. data/lib/guile/2.2/ccache/language/ecmascript/compile-tree-il.go +0 -0
  148. data/lib/guile/2.2/ccache/language/ecmascript/function.go +0 -0
  149. data/lib/guile/2.2/ccache/language/ecmascript/impl.go +0 -0
  150. data/lib/guile/2.2/ccache/language/ecmascript/parse.go +0 -0
  151. data/lib/guile/2.2/ccache/language/ecmascript/spec.go +0 -0
  152. data/lib/guile/2.2/ccache/language/ecmascript/tokenize.go +0 -0
  153. data/lib/guile/2.2/ccache/language/elisp/bindings.go +0 -0
  154. data/lib/guile/2.2/ccache/language/elisp/boot.go +0 -0
  155. data/lib/guile/2.2/ccache/language/elisp/compile-tree-il.go +0 -0
  156. data/lib/guile/2.2/ccache/language/elisp/falias.go +0 -0
  157. data/lib/guile/2.2/ccache/language/elisp/lexer.go +0 -0
  158. data/lib/guile/2.2/ccache/language/elisp/parser.go +0 -0
  159. data/lib/guile/2.2/ccache/language/elisp/runtime/function-slot.go +0 -0
  160. data/lib/guile/2.2/ccache/language/elisp/runtime/value-slot.go +0 -0
  161. data/lib/guile/2.2/ccache/language/elisp/runtime.go +0 -0
  162. data/lib/guile/2.2/ccache/language/elisp/spec.go +0 -0
  163. data/lib/guile/2.2/ccache/language/scheme/compile-tree-il.go +0 -0
  164. data/lib/guile/2.2/ccache/language/scheme/decompile-tree-il.go +0 -0
  165. data/lib/guile/2.2/ccache/language/scheme/spec.go +0 -0
  166. data/lib/guile/2.2/ccache/language/tree-il/analyze.go +0 -0
  167. data/lib/guile/2.2/ccache/language/tree-il/canonicalize.go +0 -0
  168. data/lib/guile/2.2/ccache/language/tree-il/compile-cps.go +0 -0
  169. data/lib/guile/2.2/ccache/language/tree-il/debug.go +0 -0
  170. data/lib/guile/2.2/ccache/language/tree-il/effects.go +0 -0
  171. data/lib/guile/2.2/ccache/language/tree-il/fix-letrec.go +0 -0
  172. data/lib/guile/2.2/ccache/language/tree-il/optimize.go +0 -0
  173. data/lib/guile/2.2/ccache/language/tree-il/peval.go +0 -0
  174. data/lib/guile/2.2/ccache/language/tree-il/primitives.go +0 -0
  175. data/lib/guile/2.2/ccache/language/tree-il/spec.go +0 -0
  176. data/lib/guile/2.2/ccache/language/tree-il.go +0 -0
  177. data/lib/guile/2.2/ccache/language/value/spec.go +0 -0
  178. data/lib/guile/2.2/ccache/oop/goops/accessors.go +0 -0
  179. data/lib/guile/2.2/ccache/oop/goops/active-slot.go +0 -0
  180. data/lib/guile/2.2/ccache/oop/goops/composite-slot.go +0 -0
  181. data/lib/guile/2.2/ccache/oop/goops/describe.go +0 -0
  182. data/lib/guile/2.2/ccache/oop/goops/internal.go +0 -0
  183. data/lib/guile/2.2/ccache/oop/goops/save.go +0 -0
  184. data/lib/guile/2.2/ccache/oop/goops/simple.go +0 -0
  185. data/lib/guile/2.2/ccache/oop/goops/stklos.go +0 -0
  186. data/lib/guile/2.2/ccache/oop/goops.go +0 -0
  187. data/lib/guile/2.2/ccache/rnrs/arithmetic/bitwise.go +0 -0
  188. data/lib/guile/2.2/ccache/rnrs/arithmetic/fixnums.go +0 -0
  189. data/lib/guile/2.2/ccache/rnrs/arithmetic/flonums.go +0 -0
  190. data/lib/guile/2.2/ccache/rnrs/base.go +0 -0
  191. data/lib/guile/2.2/ccache/rnrs/bytevectors.go +0 -0
  192. data/lib/guile/2.2/ccache/rnrs/conditions.go +0 -0
  193. data/lib/guile/2.2/ccache/rnrs/control.go +0 -0
  194. data/lib/guile/2.2/ccache/rnrs/enums.go +0 -0
  195. data/lib/guile/2.2/ccache/rnrs/eval.go +0 -0
  196. data/lib/guile/2.2/ccache/rnrs/exceptions.go +0 -0
  197. data/lib/guile/2.2/ccache/rnrs/files.go +0 -0
  198. data/lib/guile/2.2/ccache/rnrs/hashtables.go +0 -0
  199. data/lib/guile/2.2/ccache/rnrs/io/ports.go +0 -0
  200. data/lib/guile/2.2/ccache/rnrs/io/simple.go +0 -0
  201. data/lib/guile/2.2/ccache/rnrs/lists.go +0 -0
  202. data/lib/guile/2.2/ccache/rnrs/mutable-pairs.go +0 -0
  203. data/lib/guile/2.2/ccache/rnrs/mutable-strings.go +0 -0
  204. data/lib/guile/2.2/ccache/rnrs/programs.go +0 -0
  205. data/lib/guile/2.2/ccache/rnrs/r5rs.go +0 -0
  206. data/lib/guile/2.2/ccache/rnrs/records/inspection.go +0 -0
  207. data/lib/guile/2.2/ccache/rnrs/records/procedural.go +0 -0
  208. data/lib/guile/2.2/ccache/rnrs/records/syntactic.go +0 -0
  209. data/lib/guile/2.2/ccache/rnrs/sorting.go +0 -0
  210. data/lib/guile/2.2/ccache/rnrs/syntax-case.go +0 -0
  211. data/lib/guile/2.2/ccache/rnrs/unicode.go +0 -0
  212. data/lib/guile/2.2/ccache/rnrs.go +0 -0
  213. data/lib/guile/2.2/ccache/scripts/api-diff.go +0 -0
  214. data/lib/guile/2.2/ccache/scripts/autofrisk.go +0 -0
  215. data/lib/guile/2.2/ccache/scripts/compile.go +0 -0
  216. data/lib/guile/2.2/ccache/scripts/disassemble.go +0 -0
  217. data/lib/guile/2.2/ccache/scripts/display-commentary.go +0 -0
  218. data/lib/guile/2.2/ccache/scripts/doc-snarf.go +0 -0
  219. data/lib/guile/2.2/ccache/scripts/frisk.go +0 -0
  220. data/lib/guile/2.2/ccache/scripts/generate-autoload.go +0 -0
  221. data/lib/guile/2.2/ccache/scripts/help.go +0 -0
  222. data/lib/guile/2.2/ccache/scripts/lint.go +0 -0
  223. data/lib/guile/2.2/ccache/scripts/list.go +0 -0
  224. data/lib/guile/2.2/ccache/scripts/punify.go +0 -0
  225. data/lib/guile/2.2/ccache/scripts/read-rfc822.go +0 -0
  226. data/lib/guile/2.2/ccache/scripts/read-scheme-source.go +0 -0
  227. data/lib/guile/2.2/ccache/scripts/read-text-outline.go +0 -0
  228. data/lib/guile/2.2/ccache/scripts/scan-api.go +0 -0
  229. data/lib/guile/2.2/ccache/scripts/snarf-check-and-output-texi.go +0 -0
  230. data/lib/guile/2.2/ccache/scripts/snarf-guile-m4-docs.go +0 -0
  231. data/lib/guile/2.2/ccache/scripts/summarize-guile-TODO.go +0 -0
  232. data/lib/guile/2.2/ccache/scripts/use2dot.go +0 -0
  233. data/lib/guile/2.2/ccache/srfi/srfi-1.go +0 -0
  234. data/lib/guile/2.2/ccache/srfi/srfi-10.go +0 -0
  235. data/lib/guile/2.2/ccache/srfi/srfi-11.go +0 -0
  236. data/lib/guile/2.2/ccache/srfi/srfi-111.go +0 -0
  237. data/lib/guile/2.2/ccache/srfi/srfi-13.go +0 -0
  238. data/lib/guile/2.2/ccache/srfi/srfi-14.go +0 -0
  239. data/lib/guile/2.2/ccache/srfi/srfi-16.go +0 -0
  240. data/lib/guile/2.2/ccache/srfi/srfi-17.go +0 -0
  241. data/lib/guile/2.2/ccache/srfi/srfi-18.go +0 -0
  242. data/lib/guile/2.2/ccache/srfi/srfi-19.go +0 -0
  243. data/lib/guile/2.2/ccache/srfi/srfi-2.go +0 -0
  244. data/lib/guile/2.2/ccache/srfi/srfi-26.go +0 -0
  245. data/lib/guile/2.2/ccache/srfi/srfi-27.go +0 -0
  246. data/lib/guile/2.2/ccache/srfi/srfi-28.go +0 -0
  247. data/lib/guile/2.2/ccache/srfi/srfi-31.go +0 -0
  248. data/lib/guile/2.2/ccache/srfi/srfi-34.go +0 -0
  249. data/lib/guile/2.2/ccache/srfi/srfi-35.go +0 -0
  250. data/lib/guile/2.2/ccache/srfi/srfi-37.go +0 -0
  251. data/lib/guile/2.2/ccache/srfi/srfi-38.go +0 -0
  252. data/lib/guile/2.2/ccache/srfi/srfi-39.go +0 -0
  253. data/lib/guile/2.2/ccache/srfi/srfi-4/gnu.go +0 -0
  254. data/lib/guile/2.2/ccache/srfi/srfi-4.go +0 -0
  255. data/lib/guile/2.2/ccache/srfi/srfi-41.go +0 -0
  256. data/lib/guile/2.2/ccache/srfi/srfi-42.go +0 -0
  257. data/lib/guile/2.2/ccache/srfi/srfi-43.go +0 -0
  258. data/lib/guile/2.2/ccache/srfi/srfi-45.go +0 -0
  259. data/lib/guile/2.2/ccache/srfi/srfi-6.go +0 -0
  260. data/lib/guile/2.2/ccache/srfi/srfi-60.go +0 -0
  261. data/lib/guile/2.2/ccache/srfi/srfi-64.go +0 -0
  262. data/lib/guile/2.2/ccache/srfi/srfi-67.go +0 -0
  263. data/lib/guile/2.2/ccache/srfi/srfi-69.go +0 -0
  264. data/lib/guile/2.2/ccache/srfi/srfi-71.go +0 -0
  265. data/lib/guile/2.2/ccache/srfi/srfi-8.go +0 -0
  266. data/lib/guile/2.2/ccache/srfi/srfi-88.go +0 -0
  267. data/lib/guile/2.2/ccache/srfi/srfi-9/gnu.go +0 -0
  268. data/lib/guile/2.2/ccache/srfi/srfi-9.go +0 -0
  269. data/lib/guile/2.2/ccache/srfi/srfi-98.go +0 -0
  270. data/lib/guile/2.2/ccache/statprof.go +0 -0
  271. data/lib/guile/2.2/ccache/sxml/apply-templates.go +0 -0
  272. data/lib/guile/2.2/ccache/sxml/fold.go +0 -0
  273. data/lib/guile/2.2/ccache/sxml/match.go +0 -0
  274. data/lib/guile/2.2/ccache/sxml/simple.go +0 -0
  275. data/lib/guile/2.2/ccache/sxml/ssax/input-parse.go +0 -0
  276. data/lib/guile/2.2/ccache/sxml/ssax.go +0 -0
  277. data/lib/guile/2.2/ccache/sxml/transform.go +0 -0
  278. data/lib/guile/2.2/ccache/sxml/xpath.go +0 -0
  279. data/lib/guile/2.2/ccache/system/base/ck.go +0 -0
  280. data/lib/guile/2.2/ccache/system/base/compile.go +0 -0
  281. data/lib/guile/2.2/ccache/system/base/lalr.go +0 -0
  282. data/lib/guile/2.2/ccache/system/base/language.go +0 -0
  283. data/lib/guile/2.2/ccache/system/base/message.go +0 -0
  284. data/lib/guile/2.2/ccache/system/base/pmatch.go +0 -0
  285. data/lib/guile/2.2/ccache/system/base/syntax.go +0 -0
  286. data/lib/guile/2.2/ccache/system/base/target.go +0 -0
  287. data/lib/guile/2.2/ccache/system/base/types.go +0 -0
  288. data/lib/guile/2.2/ccache/system/foreign-object.go +0 -0
  289. data/lib/guile/2.2/ccache/system/foreign.go +0 -0
  290. data/lib/guile/2.2/ccache/system/repl/command.go +0 -0
  291. data/lib/guile/2.2/ccache/system/repl/common.go +0 -0
  292. data/lib/guile/2.2/ccache/system/repl/coop-server.go +0 -0
  293. data/lib/guile/2.2/ccache/system/repl/debug.go +0 -0
  294. data/lib/guile/2.2/ccache/system/repl/error-handling.go +0 -0
  295. data/lib/guile/2.2/ccache/system/repl/repl.go +0 -0
  296. data/lib/guile/2.2/ccache/system/repl/server.go +0 -0
  297. data/lib/guile/2.2/ccache/system/syntax.go +0 -0
  298. data/lib/guile/2.2/ccache/system/vm/assembler.go +0 -0
  299. data/lib/guile/2.2/ccache/system/vm/coverage.go +0 -0
  300. data/lib/guile/2.2/ccache/system/vm/debug.go +0 -0
  301. data/lib/guile/2.2/ccache/system/vm/disassembler.go +0 -0
  302. data/lib/guile/2.2/ccache/system/vm/dwarf.go +0 -0
  303. data/lib/guile/2.2/ccache/system/vm/elf.go +0 -0
  304. data/lib/guile/2.2/ccache/system/vm/frame.go +0 -0
  305. data/lib/guile/2.2/ccache/system/vm/inspect.go +0 -0
  306. data/lib/guile/2.2/ccache/system/vm/linker.go +0 -0
  307. data/lib/guile/2.2/ccache/system/vm/loader.go +0 -0
  308. data/lib/guile/2.2/ccache/system/vm/program.go +0 -0
  309. data/lib/guile/2.2/ccache/system/vm/trace.go +0 -0
  310. data/lib/guile/2.2/ccache/system/vm/trap-state.go +0 -0
  311. data/lib/guile/2.2/ccache/system/vm/traps.go +0 -0
  312. data/lib/guile/2.2/ccache/system/vm/vm.go +0 -0
  313. data/lib/guile/2.2/ccache/system/xref.go +0 -0
  314. data/lib/guile/2.2/ccache/texinfo/docbook.go +0 -0
  315. data/lib/guile/2.2/ccache/texinfo/html.go +0 -0
  316. data/lib/guile/2.2/ccache/texinfo/indexing.go +0 -0
  317. data/lib/guile/2.2/ccache/texinfo/plain-text.go +0 -0
  318. data/lib/guile/2.2/ccache/texinfo/reflection.go +0 -0
  319. data/lib/guile/2.2/ccache/texinfo/serialize.go +0 -0
  320. data/lib/guile/2.2/ccache/texinfo/string-utils.go +0 -0
  321. data/lib/guile/2.2/ccache/texinfo.go +0 -0
  322. data/lib/guile/2.2/ccache/web/client.go +0 -0
  323. data/lib/guile/2.2/ccache/web/http.go +0 -0
  324. data/lib/guile/2.2/ccache/web/request.go +0 -0
  325. data/lib/guile/2.2/ccache/web/response.go +0 -0
  326. data/lib/guile/2.2/ccache/web/server/http.go +0 -0
  327. data/lib/guile/2.2/ccache/web/server.go +0 -0
  328. data/lib/guile/2.2/ccache/web/uri.go +0 -0
  329. data/lib/lilypond/2.24.1/ccache/lily/accreg.go +0 -0
  330. data/lib/lilypond/2.24.1/ccache/lily/auto-beam.go +0 -0
  331. data/lib/lilypond/2.24.1/ccache/lily/autochange.go +0 -0
  332. data/lib/lilypond/2.24.1/ccache/lily/backend-library.go +0 -0
  333. data/lib/lilypond/2.24.1/ccache/lily/bar-line.go +0 -0
  334. data/lib/lilypond/2.24.1/ccache/lily/breath.go +0 -0
  335. data/lib/lilypond/2.24.1/ccache/lily/c++.go +0 -0
  336. data/lib/lilypond/2.24.1/ccache/lily/chord-entry.go +0 -0
  337. data/lib/lilypond/2.24.1/ccache/lily/chord-ignatzek-names.go +0 -0
  338. data/lib/lilypond/2.24.1/ccache/lily/chord-name.go +0 -0
  339. data/lib/lilypond/2.24.1/ccache/lily/clip-region.go +0 -0
  340. data/lib/lilypond/2.24.1/ccache/lily/color.go +0 -0
  341. data/lib/lilypond/2.24.1/ccache/lily/curried-definitions.go +0 -0
  342. data/lib/lilypond/2.24.1/ccache/lily/define-context-properties.go +0 -0
  343. data/lib/lilypond/2.24.1/ccache/lily/define-event-classes.go +0 -0
  344. data/lib/lilypond/2.24.1/ccache/lily/define-grob-interfaces.go +0 -0
  345. data/lib/lilypond/2.24.1/ccache/lily/define-grob-properties.go +0 -0
  346. data/lib/lilypond/2.24.1/ccache/lily/define-grobs.go +0 -0
  347. data/lib/lilypond/2.24.1/ccache/lily/define-markup-commands.go +0 -0
  348. data/lib/lilypond/2.24.1/ccache/lily/define-music-callbacks.go +0 -0
  349. data/lib/lilypond/2.24.1/ccache/lily/define-music-display-methods.go +0 -0
  350. data/lib/lilypond/2.24.1/ccache/lily/define-music-properties.go +0 -0
  351. data/lib/lilypond/2.24.1/ccache/lily/define-music-types.go +0 -0
  352. data/lib/lilypond/2.24.1/ccache/lily/define-note-names.go +0 -0
  353. data/lib/lilypond/2.24.1/ccache/lily/define-stencil-commands.go +0 -0
  354. data/lib/lilypond/2.24.1/ccache/lily/define-woodwind-diagrams.go +0 -0
  355. data/lib/lilypond/2.24.1/ccache/lily/display-lily.go +0 -0
  356. data/lib/lilypond/2.24.1/ccache/lily/display-woodwind-diagrams.go +0 -0
  357. data/lib/lilypond/2.24.1/ccache/lily/file-cache.go +0 -0
  358. data/lib/lilypond/2.24.1/ccache/lily/flag-styles.go +0 -0
  359. data/lib/lilypond/2.24.1/ccache/lily/font-encodings.go +0 -0
  360. data/lib/lilypond/2.24.1/ccache/lily/font.go +0 -0
  361. data/lib/lilypond/2.24.1/ccache/lily/framework-cairo.go +0 -0
  362. data/lib/lilypond/2.24.1/ccache/lily/framework-ps.go +0 -0
  363. data/lib/lilypond/2.24.1/ccache/lily/framework-svg.go +0 -0
  364. data/lib/lilypond/2.24.1/ccache/lily/fret-diagrams.go +0 -0
  365. data/lib/lilypond/2.24.1/ccache/lily/graphviz.go +0 -0
  366. data/lib/lilypond/2.24.1/ccache/lily/harp-pedals.go +0 -0
  367. data/lib/lilypond/2.24.1/ccache/lily/layout-beam.go +0 -0
  368. data/lib/lilypond/2.24.1/ccache/lily/layout-slur.go +0 -0
  369. data/lib/lilypond/2.24.1/ccache/lily/lily-library.go +0 -0
  370. data/lib/lilypond/2.24.1/ccache/lily/lily.go +0 -0
  371. data/lib/lilypond/2.24.1/ccache/lily/ly-syntax-constructors.go +0 -0
  372. data/lib/lilypond/2.24.1/ccache/lily/markup-macros.go +0 -0
  373. data/lib/lilypond/2.24.1/ccache/lily/markup.go +0 -0
  374. data/lib/lilypond/2.24.1/ccache/lily/midi.go +0 -0
  375. data/lib/lilypond/2.24.1/ccache/lily/modal-transforms.go +0 -0
  376. data/lib/lilypond/2.24.1/ccache/lily/music-functions.go +0 -0
  377. data/lib/lilypond/2.24.1/ccache/lily/output-lib.go +0 -0
  378. data/lib/lilypond/2.24.1/ccache/lily/output-ps.go +0 -0
  379. data/lib/lilypond/2.24.1/ccache/lily/output-svg.go +0 -0
  380. data/lib/lilypond/2.24.1/ccache/lily/page.go +0 -0
  381. data/lib/lilypond/2.24.1/ccache/lily/paper-system.go +0 -0
  382. data/lib/lilypond/2.24.1/ccache/lily/paper.go +0 -0
  383. data/lib/lilypond/2.24.1/ccache/lily/parser-clef.go +0 -0
  384. data/lib/lilypond/2.24.1/ccache/lily/parser-ly-from-scheme.go +0 -0
  385. data/lib/lilypond/2.24.1/ccache/lily/part-combiner.go +0 -0
  386. data/lib/lilypond/2.24.1/ccache/lily/predefined-fretboards.go +0 -0
  387. data/lib/lilypond/2.24.1/ccache/lily/ps-to-png.go +0 -0
  388. data/lib/lilypond/2.24.1/ccache/lily/scheme-engravers.go +0 -0
  389. data/lib/lilypond/2.24.1/ccache/lily/scheme-performers.go +0 -0
  390. data/lib/lilypond/2.24.1/ccache/lily/script.go +0 -0
  391. data/lib/lilypond/2.24.1/ccache/lily/skyline.go +0 -0
  392. data/lib/lilypond/2.24.1/ccache/lily/song-util.go +0 -0
  393. data/lib/lilypond/2.24.1/ccache/lily/song.go +0 -0
  394. data/lib/lilypond/2.24.1/ccache/lily/stencil.go +0 -0
  395. data/lib/lilypond/2.24.1/ccache/lily/tablature.go +0 -0
  396. data/lib/lilypond/2.24.1/ccache/lily/time-signature-settings.go +0 -0
  397. data/lib/lilypond/2.24.1/ccache/lily/time-signature.go +0 -0
  398. data/lib/lilypond/2.24.1/ccache/lily/titling.go +0 -0
  399. data/lib/lilypond/2.24.1/ccache/lily/to-xml.go +0 -0
  400. data/lib/lilypond/2.24.1/ccache/lily/translation-functions.go +0 -0
  401. data/share/emacs/site-lisp/lilypond-font-lock.el +208 -0
  402. data/share/emacs/site-lisp/lilypond-indent.el +605 -0
  403. data/share/emacs/site-lisp/lilypond-init.el +21 -0
  404. data/share/emacs/site-lisp/lilypond-mode.el +1204 -0
  405. data/share/emacs/site-lisp/lilypond-song.el +556 -0
  406. data/share/emacs/site-lisp/lilypond-what-beat.el +279 -0
  407. data/share/emacs/site-lisp/lilypond-words.el +1428 -0
  408. data/share/guile/2.2/guile-procedures.txt +8860 -0
  409. data/share/guile/2.2/ice-9/and-let-star.scm +73 -0
  410. data/share/guile/2.2/ice-9/arrays.scm +70 -0
  411. data/share/guile/2.2/ice-9/atomic.scm +38 -0
  412. data/share/guile/2.2/ice-9/binary-ports.scm +53 -0
  413. data/share/guile/2.2/ice-9/boot-9.scm +4131 -0
  414. data/share/guile/2.2/ice-9/buffered-input.scm +109 -0
  415. data/share/guile/2.2/ice-9/calling.scm +326 -0
  416. data/share/guile/2.2/ice-9/channel.scm +170 -0
  417. data/share/guile/2.2/ice-9/command-line.scm +477 -0
  418. data/share/guile/2.2/ice-9/common-list.scm +278 -0
  419. data/share/guile/2.2/ice-9/control.scm +110 -0
  420. data/share/guile/2.2/ice-9/curried-definitions.scm +57 -0
  421. data/share/guile/2.2/ice-9/debug.scm +25 -0
  422. data/share/guile/2.2/ice-9/deprecated.scm +93 -0
  423. data/share/guile/2.2/ice-9/documentation.scm +203 -0
  424. data/share/guile/2.2/ice-9/eval-string.scm +90 -0
  425. data/share/guile/2.2/ice-9/eval.scm +723 -0
  426. data/share/guile/2.2/ice-9/expect.scm +171 -0
  427. data/share/guile/2.2/ice-9/fdes-finalizers.scm +25 -0
  428. data/share/guile/2.2/ice-9/format.scm +1626 -0
  429. data/share/guile/2.2/ice-9/ftw.scm +564 -0
  430. data/share/guile/2.2/ice-9/futures.scm +308 -0
  431. data/share/guile/2.2/ice-9/gap-buffer.scm +283 -0
  432. data/share/guile/2.2/ice-9/getopt-long.scm +371 -0
  433. data/share/guile/2.2/ice-9/hash-table.scm +45 -0
  434. data/share/guile/2.2/ice-9/hcons.scm +80 -0
  435. data/share/guile/2.2/ice-9/history.scm +65 -0
  436. data/share/guile/2.2/ice-9/i18n.scm +531 -0
  437. data/share/guile/2.2/ice-9/iconv.scm +95 -0
  438. data/share/guile/2.2/ice-9/lineio.scm +115 -0
  439. data/share/guile/2.2/ice-9/list.scm +36 -0
  440. data/share/guile/2.2/ice-9/local-eval.scm +261 -0
  441. data/share/guile/2.2/ice-9/ls.scm +94 -0
  442. data/share/guile/2.2/ice-9/mapping.scm +118 -0
  443. data/share/guile/2.2/ice-9/match.scm +59 -0
  444. data/share/guile/2.2/ice-9/match.upstream.scm +917 -0
  445. data/share/guile/2.2/ice-9/networking.scm +94 -0
  446. data/share/guile/2.2/ice-9/null.scm +34 -0
  447. data/share/guile/2.2/ice-9/occam-channel.scm +261 -0
  448. data/share/guile/2.2/ice-9/optargs.scm +381 -0
  449. data/share/guile/2.2/ice-9/peg/cache.scm +45 -0
  450. data/share/guile/2.2/ice-9/peg/codegen.scm +359 -0
  451. data/share/guile/2.2/ice-9/peg/simplify-tree.scm +97 -0
  452. data/share/guile/2.2/ice-9/peg/string-peg.scm +273 -0
  453. data/share/guile/2.2/ice-9/peg/using-parsers.scm +116 -0
  454. data/share/guile/2.2/ice-9/peg.scm +42 -0
  455. data/share/guile/2.2/ice-9/poe.scm +116 -0
  456. data/share/guile/2.2/ice-9/poll.scm +172 -0
  457. data/share/guile/2.2/ice-9/popen.scm +178 -0
  458. data/share/guile/2.2/ice-9/ports.scm +566 -0
  459. data/share/guile/2.2/ice-9/posix.scm +75 -0
  460. data/share/guile/2.2/ice-9/pretty-print.scm +483 -0
  461. data/share/guile/2.2/ice-9/psyntax-pp.scm +3542 -0
  462. data/share/guile/2.2/ice-9/psyntax.scm +3326 -0
  463. data/share/guile/2.2/ice-9/q.scm +153 -0
  464. data/share/guile/2.2/ice-9/quasisyntax.scm +136 -0
  465. data/share/guile/2.2/ice-9/r5rs.scm +45 -0
  466. data/share/guile/2.2/ice-9/r6rs-libraries.scm +242 -0
  467. data/share/guile/2.2/ice-9/rdelim.scm +208 -0
  468. data/share/guile/2.2/ice-9/receive.scm +26 -0
  469. data/share/guile/2.2/ice-9/regex.scm +229 -0
  470. data/share/guile/2.2/ice-9/runq.scm +241 -0
  471. data/share/guile/2.2/ice-9/rw.scm +27 -0
  472. data/share/guile/2.2/ice-9/safe-r5rs.scm +145 -0
  473. data/share/guile/2.2/ice-9/safe.scm +34 -0
  474. data/share/guile/2.2/ice-9/sandbox.scm +1399 -0
  475. data/share/guile/2.2/ice-9/save-stack.scm +58 -0
  476. data/share/guile/2.2/ice-9/scm-style-repl.scm +279 -0
  477. data/share/guile/2.2/ice-9/serialize.scm +114 -0
  478. data/share/guile/2.2/ice-9/session.scm +530 -0
  479. data/share/guile/2.2/ice-9/slib.scm +33 -0
  480. data/share/guile/2.2/ice-9/stack-catch.scm +47 -0
  481. data/share/guile/2.2/ice-9/streams.scm +168 -0
  482. data/share/guile/2.2/ice-9/string-fun.scm +280 -0
  483. data/share/guile/2.2/ice-9/suspendable-ports.scm +788 -0
  484. data/share/guile/2.2/ice-9/syncase.scm +37 -0
  485. data/share/guile/2.2/ice-9/textual-ports.scm +70 -0
  486. data/share/guile/2.2/ice-9/threads.scm +392 -0
  487. data/share/guile/2.2/ice-9/time.scm +58 -0
  488. data/share/guile/2.2/ice-9/top-repl.scm +78 -0
  489. data/share/guile/2.2/ice-9/unicode.scm +26 -0
  490. data/share/guile/2.2/ice-9/vlist.scm +595 -0
  491. data/share/guile/2.2/ice-9/weak-vector.scm +31 -0
  492. data/share/guile/2.2/language/brainfuck/compile-scheme.scm +123 -0
  493. data/share/guile/2.2/language/brainfuck/compile-tree-il.scm +184 -0
  494. data/share/guile/2.2/language/brainfuck/parse.scm +95 -0
  495. data/share/guile/2.2/language/brainfuck/spec.scm +43 -0
  496. data/share/guile/2.2/language/bytecode/spec.scm +42 -0
  497. data/share/guile/2.2/language/bytecode.scm +104 -0
  498. data/share/guile/2.2/language/cps/closure-conversion.scm +848 -0
  499. data/share/guile/2.2/language/cps/compile-bytecode.scm +610 -0
  500. data/share/guile/2.2/language/cps/constructors.scm +106 -0
  501. data/share/guile/2.2/language/cps/contification.scm +448 -0
  502. data/share/guile/2.2/language/cps/cse.scm +414 -0
  503. data/share/guile/2.2/language/cps/dce.scm +363 -0
  504. data/share/guile/2.2/language/cps/effects-analysis.scm +597 -0
  505. data/share/guile/2.2/language/cps/elide-values.scm +88 -0
  506. data/share/guile/2.2/language/cps/handle-interrupts.scm +69 -0
  507. data/share/guile/2.2/language/cps/intmap.scm +765 -0
  508. data/share/guile/2.2/language/cps/intset.scm +830 -0
  509. data/share/guile/2.2/language/cps/licm.scm +308 -0
  510. data/share/guile/2.2/language/cps/optimize.scm +135 -0
  511. data/share/guile/2.2/language/cps/peel-loops.scm +287 -0
  512. data/share/guile/2.2/language/cps/primitives.scm +141 -0
  513. data/share/guile/2.2/language/cps/prune-bailouts.scm +86 -0
  514. data/share/guile/2.2/language/cps/prune-top-level-scopes.scm +63 -0
  515. data/share/guile/2.2/language/cps/reify-primitives.scm +179 -0
  516. data/share/guile/2.2/language/cps/renumber.scm +217 -0
  517. data/share/guile/2.2/language/cps/rotate-loops.scm +239 -0
  518. data/share/guile/2.2/language/cps/self-references.scm +79 -0
  519. data/share/guile/2.2/language/cps/simplify.scm +274 -0
  520. data/share/guile/2.2/language/cps/slot-allocation.scm +1058 -0
  521. data/share/guile/2.2/language/cps/spec.scm +51 -0
  522. data/share/guile/2.2/language/cps/specialize-numbers.scm +724 -0
  523. data/share/guile/2.2/language/cps/specialize-primcalls.scm +87 -0
  524. data/share/guile/2.2/language/cps/split-rec.scm +174 -0
  525. data/share/guile/2.2/language/cps/type-checks.scm +72 -0
  526. data/share/guile/2.2/language/cps/type-fold.scm +455 -0
  527. data/share/guile/2.2/language/cps/types.scm +1826 -0
  528. data/share/guile/2.2/language/cps/utils.scm +550 -0
  529. data/share/guile/2.2/language/cps/verify.scm +304 -0
  530. data/share/guile/2.2/language/cps/with-cps.scm +145 -0
  531. data/share/guile/2.2/language/cps.scm +358 -0
  532. data/share/guile/2.2/language/ecmascript/array.scm +121 -0
  533. data/share/guile/2.2/language/ecmascript/base.scm +251 -0
  534. data/share/guile/2.2/language/ecmascript/compile-tree-il.scm +576 -0
  535. data/share/guile/2.2/language/ecmascript/function.scm +78 -0
  536. data/share/guile/2.2/language/ecmascript/impl.scm +169 -0
  537. data/share/guile/2.2/language/ecmascript/parse.scm +352 -0
  538. data/share/guile/2.2/language/ecmascript/spec.scm +37 -0
  539. data/share/guile/2.2/language/ecmascript/tokenize.scm +513 -0
  540. data/share/guile/2.2/language/elisp/bindings.scm +107 -0
  541. data/share/guile/2.2/language/elisp/boot.el +617 -0
  542. data/share/guile/2.2/language/elisp/compile-tree-il.scm +812 -0
  543. data/share/guile/2.2/language/elisp/falias.scm +47 -0
  544. data/share/guile/2.2/language/elisp/lexer.scm +430 -0
  545. data/share/guile/2.2/language/elisp/parser.scm +222 -0
  546. data/share/guile/2.2/language/elisp/runtime/function-slot.scm +63 -0
  547. data/share/guile/2.2/language/elisp/runtime/value-slot.scm +24 -0
  548. data/share/guile/2.2/language/elisp/runtime.scm +153 -0
  549. data/share/guile/2.2/language/elisp/spec.scm +43 -0
  550. data/share/guile/2.2/language/scheme/compile-tree-il.scm +33 -0
  551. data/share/guile/2.2/language/scheme/decompile-tree-il.scm +796 -0
  552. data/share/guile/2.2/language/scheme/spec.scm +63 -0
  553. data/share/guile/2.2/language/tree-il/analyze.scm +1568 -0
  554. data/share/guile/2.2/language/tree-il/canonicalize.scm +82 -0
  555. data/share/guile/2.2/language/tree-il/compile-cps.scm +1149 -0
  556. data/share/guile/2.2/language/tree-il/debug.scm +246 -0
  557. data/share/guile/2.2/language/tree-il/effects.scm +591 -0
  558. data/share/guile/2.2/language/tree-il/fix-letrec.scm +314 -0
  559. data/share/guile/2.2/language/tree-il/optimize.scm +43 -0
  560. data/share/guile/2.2/language/tree-il/peval.scm +1669 -0
  561. data/share/guile/2.2/language/tree-il/primitives.scm +630 -0
  562. data/share/guile/2.2/language/tree-il/spec.scm +46 -0
  563. data/share/guile/2.2/language/tree-il.scm +630 -0
  564. data/share/guile/2.2/language/value/spec.scm +30 -0
  565. data/share/guile/2.2/oop/goops/accessors.scm +72 -0
  566. data/share/guile/2.2/oop/goops/active-slot.scm +63 -0
  567. data/share/guile/2.2/oop/goops/composite-slot.scm +83 -0
  568. data/share/guile/2.2/oop/goops/describe.scm +189 -0
  569. data/share/guile/2.2/oop/goops/internal.scm +30 -0
  570. data/share/guile/2.2/oop/goops/save.scm +874 -0
  571. data/share/guile/2.2/oop/goops/simple.scm +30 -0
  572. data/share/guile/2.2/oop/goops/stklos.scm +74 -0
  573. data/share/guile/2.2/oop/goops.scm +3176 -0
  574. data/share/guile/2.2/rnrs/arithmetic/bitwise.scm +92 -0
  575. data/share/guile/2.2/rnrs/arithmetic/fixnums.scm +291 -0
  576. data/share/guile/2.2/rnrs/arithmetic/flonums.scm +203 -0
  577. data/share/guile/2.2/rnrs/base.scm +291 -0
  578. data/share/guile/2.2/rnrs/bytevectors.scm +83 -0
  579. data/share/guile/2.2/rnrs/conditions.scm +225 -0
  580. data/share/guile/2.2/rnrs/control.scm +22 -0
  581. data/share/guile/2.2/rnrs/enums.scm +152 -0
  582. data/share/guile/2.2/rnrs/eval.scm +39 -0
  583. data/share/guile/2.2/rnrs/exceptions.scm +276 -0
  584. data/share/guile/2.2/rnrs/files.scm +96 -0
  585. data/share/guile/2.2/rnrs/hashtables.scm +190 -0
  586. data/share/guile/2.2/rnrs/io/ports.scm +554 -0
  587. data/share/guile/2.2/rnrs/io/simple.scm +167 -0
  588. data/share/guile/2.2/rnrs/lists.scm +55 -0
  589. data/share/guile/2.2/rnrs/mutable-pairs.scm +23 -0
  590. data/share/guile/2.2/rnrs/mutable-strings.scm +23 -0
  591. data/share/guile/2.2/rnrs/programs.scm +22 -0
  592. data/share/guile/2.2/rnrs/r5rs.scm +34 -0
  593. data/share/guile/2.2/rnrs/records/inspection.scm +81 -0
  594. data/share/guile/2.2/rnrs/records/procedural.scm +289 -0
  595. data/share/guile/2.2/rnrs/records/syntactic.scm +248 -0
  596. data/share/guile/2.2/rnrs/sorting.scm +27 -0
  597. data/share/guile/2.2/rnrs/syntax-case.scm +68 -0
  598. data/share/guile/2.2/rnrs/unicode.scm +104 -0
  599. data/share/guile/2.2/rnrs.scm +289 -0
  600. data/share/guile/2.2/scripts/api-diff.scm +179 -0
  601. data/share/guile/2.2/scripts/autofrisk.scm +218 -0
  602. data/share/guile/2.2/scripts/compile.scm +273 -0
  603. data/share/guile/2.2/scripts/disassemble.scm +38 -0
  604. data/share/guile/2.2/scripts/display-commentary.scm +67 -0
  605. data/share/guile/2.2/scripts/doc-snarf.scm +439 -0
  606. data/share/guile/2.2/scripts/frisk.scm +290 -0
  607. data/share/guile/2.2/scripts/generate-autoload.scm +144 -0
  608. data/share/guile/2.2/scripts/help.scm +188 -0
  609. data/share/guile/2.2/scripts/lint.scm +318 -0
  610. data/share/guile/2.2/scripts/list.scm +91 -0
  611. data/share/guile/2.2/scripts/punify.scm +87 -0
  612. data/share/guile/2.2/scripts/read-rfc822.scm +131 -0
  613. data/share/guile/2.2/scripts/read-scheme-source.scm +282 -0
  614. data/share/guile/2.2/scripts/read-text-outline.scm +253 -0
  615. data/share/guile/2.2/scripts/scan-api.scm +223 -0
  616. data/share/guile/2.2/scripts/snarf-check-and-output-texi.scm +303 -0
  617. data/share/guile/2.2/scripts/snarf-guile-m4-docs.scm +86 -0
  618. data/share/guile/2.2/scripts/summarize-guile-TODO.scm +213 -0
  619. data/share/guile/2.2/scripts/use2dot.scm +110 -0
  620. data/share/guile/2.2/srfi/srfi-1.scm +1061 -0
  621. data/share/guile/2.2/srfi/srfi-10.scm +89 -0
  622. data/share/guile/2.2/srfi/srfi-11.scm +146 -0
  623. data/share/guile/2.2/srfi/srfi-111.scm +37 -0
  624. data/share/guile/2.2/srfi/srfi-13.scm +132 -0
  625. data/share/guile/2.2/srfi/srfi-14.scm +99 -0
  626. data/share/guile/2.2/srfi/srfi-16.scm +51 -0
  627. data/share/guile/2.2/srfi/srfi-17.scm +174 -0
  628. data/share/guile/2.2/srfi/srfi-18.scm +382 -0
  629. data/share/guile/2.2/srfi/srfi-19.scm +1470 -0
  630. data/share/guile/2.2/srfi/srfi-2.scm +31 -0
  631. data/share/guile/2.2/srfi/srfi-26.scm +66 -0
  632. data/share/guile/2.2/srfi/srfi-27.scm +96 -0
  633. data/share/guile/2.2/srfi/srfi-28.scm +34 -0
  634. data/share/guile/2.2/srfi/srfi-31.scm +35 -0
  635. data/share/guile/2.2/srfi/srfi-34.scm +84 -0
  636. data/share/guile/2.2/srfi/srfi-35.scm +351 -0
  637. data/share/guile/2.2/srfi/srfi-37.scm +234 -0
  638. data/share/guile/2.2/srfi/srfi-38.scm +207 -0
  639. data/share/guile/2.2/srfi/srfi-39.scm +55 -0
  640. data/share/guile/2.2/srfi/srfi-4/gnu.scm +80 -0
  641. data/share/guile/2.2/srfi/srfi-4.scm +118 -0
  642. data/share/guile/2.2/srfi/srfi-41.scm +505 -0
  643. data/share/guile/2.2/srfi/srfi-42/ec.scm +1053 -0
  644. data/share/guile/2.2/srfi/srfi-42.scm +66 -0
  645. data/share/guile/2.2/srfi/srfi-43.scm +1077 -0
  646. data/share/guile/2.2/srfi/srfi-45.scm +93 -0
  647. data/share/guile/2.2/srfi/srfi-6.scm +29 -0
  648. data/share/guile/2.2/srfi/srfi-60.scm +73 -0
  649. data/share/guile/2.2/srfi/srfi-64/testing.scm +1040 -0
  650. data/share/guile/2.2/srfi/srfi-64.scm +55 -0
  651. data/share/guile/2.2/srfi/srfi-67/compare.scm +686 -0
  652. data/share/guile/2.2/srfi/srfi-67.scm +88 -0
  653. data/share/guile/2.2/srfi/srfi-69.scm +336 -0
  654. data/share/guile/2.2/srfi/srfi-71.scm +267 -0
  655. data/share/guile/2.2/srfi/srfi-8.scm +31 -0
  656. data/share/guile/2.2/srfi/srfi-88.scm +53 -0
  657. data/share/guile/2.2/srfi/srfi-9/gnu.scm +168 -0
  658. data/share/guile/2.2/srfi/srfi-9.scm +351 -0
  659. data/share/guile/2.2/srfi/srfi-98.scm +44 -0
  660. data/share/guile/2.2/statprof.scm +988 -0
  661. data/share/guile/2.2/sxml/apply-templates.scm +102 -0
  662. data/share/guile/2.2/sxml/fold.scm +250 -0
  663. data/share/guile/2.2/sxml/match.scm +75 -0
  664. data/share/guile/2.2/sxml/simple.scm +408 -0
  665. data/share/guile/2.2/sxml/ssax/input-parse.scm +180 -0
  666. data/share/guile/2.2/sxml/ssax.scm +265 -0
  667. data/share/guile/2.2/sxml/sxml-match.ss +1181 -0
  668. data/share/guile/2.2/sxml/transform.scm +298 -0
  669. data/share/guile/2.2/sxml/upstream/SSAX.scm +3235 -0
  670. data/share/guile/2.2/sxml/upstream/SXML-tree-trans.scm +249 -0
  671. data/share/guile/2.2/sxml/upstream/SXPath-old.scm +1216 -0
  672. data/share/guile/2.2/sxml/upstream/assert.scm +35 -0
  673. data/share/guile/2.2/sxml/upstream/input-parse.scm +326 -0
  674. data/share/guile/2.2/sxml/xpath.scm +493 -0
  675. data/share/guile/2.2/system/base/ck.scm +55 -0
  676. data/share/guile/2.2/system/base/compile.scm +282 -0
  677. data/share/guile/2.2/system/base/lalr.scm +51 -0
  678. data/share/guile/2.2/system/base/lalr.upstream.scm +2096 -0
  679. data/share/guile/2.2/system/base/language.scm +119 -0
  680. data/share/guile/2.2/system/base/message.scm +238 -0
  681. data/share/guile/2.2/system/base/pmatch.scm +68 -0
  682. data/share/guile/2.2/system/base/syntax.scm +299 -0
  683. data/share/guile/2.2/system/base/target.scm +152 -0
  684. data/share/guile/2.2/system/base/types.scm +561 -0
  685. data/share/guile/2.2/system/foreign-object.scm +91 -0
  686. data/share/guile/2.2/system/foreign.scm +200 -0
  687. data/share/guile/2.2/system/repl/command.scm +946 -0
  688. data/share/guile/2.2/system/repl/common.scm +263 -0
  689. data/share/guile/2.2/system/repl/coop-server.scm +200 -0
  690. data/share/guile/2.2/system/repl/debug.scm +210 -0
  691. data/share/guile/2.2/system/repl/describe.scm +347 -0
  692. data/share/guile/2.2/system/repl/error-handling.scm +183 -0
  693. data/share/guile/2.2/system/repl/repl.scm +233 -0
  694. data/share/guile/2.2/system/repl/server.scm +332 -0
  695. data/share/guile/2.2/system/syntax.scm +33 -0
  696. data/share/guile/2.2/system/vm/assembler.scm +2614 -0
  697. data/share/guile/2.2/system/vm/coverage.scm +351 -0
  698. data/share/guile/2.2/system/vm/debug.scm +766 -0
  699. data/share/guile/2.2/system/vm/disassembler.scm +658 -0
  700. data/share/guile/2.2/system/vm/dwarf.scm +1852 -0
  701. data/share/guile/2.2/system/vm/elf.scm +1042 -0
  702. data/share/guile/2.2/system/vm/frame.scm +485 -0
  703. data/share/guile/2.2/system/vm/inspect.scm +188 -0
  704. data/share/guile/2.2/system/vm/linker.scm +732 -0
  705. data/share/guile/2.2/system/vm/loader.scm +27 -0
  706. data/share/guile/2.2/system/vm/program.scm +312 -0
  707. data/share/guile/2.2/system/vm/trace.scm +121 -0
  708. data/share/guile/2.2/system/vm/trap-state.scm +302 -0
  709. data/share/guile/2.2/system/vm/traps.scm +608 -0
  710. data/share/guile/2.2/system/vm/vm.scm +32 -0
  711. data/share/guile/2.2/system/xref.scm +369 -0
  712. data/share/guile/2.2/texinfo/docbook.scm +240 -0
  713. data/share/guile/2.2/texinfo/html.scm +279 -0
  714. data/share/guile/2.2/texinfo/indexing.scm +75 -0
  715. data/share/guile/2.2/texinfo/plain-text.scm +322 -0
  716. data/share/guile/2.2/texinfo/reflection.scm +585 -0
  717. data/share/guile/2.2/texinfo/serialize.scm +300 -0
  718. data/share/guile/2.2/texinfo/string-utils.scm +410 -0
  719. data/share/guile/2.2/texinfo.scm +1263 -0
  720. data/share/guile/2.2/web/client.scm +513 -0
  721. data/share/guile/2.2/web/http.scm +2043 -0
  722. data/share/guile/2.2/web/request.scm +326 -0
  723. data/share/guile/2.2/web/response.scm +379 -0
  724. data/share/guile/2.2/web/server/http.scm +183 -0
  725. data/share/guile/2.2/web/server.scm +397 -0
  726. data/share/guile/2.2/web/uri.scm +552 -0
  727. data/share/lilypond/2.24.1/fontconfig/0bd3dc0958fa2205aaaa8ebb13e2872b-le64.cache-8 +0 -0
  728. data/share/lilypond/2.24.1/fontconfig/188ac73a183f12857f63bb60a4a6d603-le64.cache-8 +0 -0
  729. data/share/lilypond/2.24.1/fontconfig/32b6488e5b8292a2e95c79d947e009e8-le64.cache-8 +0 -0
  730. data/share/lilypond/2.24.1/fontconfig/3830d5c3ddfd5cd38a049b759396e72e-le64.cache-8 +0 -0
  731. data/share/lilypond/2.24.1/fontconfig/3f7329c5293ffd510edef78f73874cfd-le64.cache-8 +0 -0
  732. data/share/lilypond/2.24.1/fontconfig/4c599c202bc5c08e2d34565a40eac3b2-le64.cache-8 +0 -0
  733. data/share/lilypond/2.24.1/fontconfig/57e423e26b20ab21d0f2f29c145174c3-le64.cache-8 +0 -0
  734. data/share/lilypond/2.24.1/fontconfig/7ef2298fde41cc6eeb7af42e48b7d293-le64.cache-8 +0 -0
  735. data/share/lilypond/2.24.1/fontconfig/826f6b6ef79022e2eac8af26bf4b62f2-le64.cache-8 +0 -0
  736. data/share/lilypond/2.24.1/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-le64.cache-8 +0 -0
  737. data/share/lilypond/2.24.1/fontconfig/95530828ff6c81d309f8258d8d02a23e-le64.cache-8 +0 -0
  738. data/share/lilypond/2.24.1/fontconfig/CACHEDIR.TAG +4 -0
  739. data/share/lilypond/2.24.1/fontconfig/bf3b770c553c462765856025a94f1ce6-le64.cache-8 +0 -0
  740. data/share/lilypond/2.24.1/fontconfig/c855463f699352c367813e37f3f70ea7-le64.cache-8 +0 -0
  741. data/share/lilypond/2.24.1/fontconfig/d3e5c4ee2ceb1fc347f91d4cefc53bc0-le64.cache-8 +0 -0
  742. data/share/lilypond/2.24.1/fontconfig/d589a48862398ed80a3d6066f4f56f4c-le64.cache-8 +0 -0
  743. data/share/lilypond/2.24.1/fontconfig/d82eb4fd963d448e2fcb7d7b793b5df3-le64.cache-8 +0 -0
  744. data/share/lilypond/2.24.1/fontconfig/e13b20fdb08344e0e664864cc2ede53d-le64.cache-8 +0 -0
  745. data/share/lilypond/2.24.1/fontconfig/e52a45a1c8c8fe895fc0fc8c4e6999b8-le64.cache-8 +0 -0
  746. data/share/lilypond/2.24.1/fontconfig/f1f2465696798768e9653f19e17ccdc8-le64.cache-8 +0 -0
  747. data/share/lilypond/2.24.1/fonts/00-lilypond-fonts.conf +99 -0
  748. data/share/lilypond/2.24.1/fonts/99-lilypond-fonts.conf +28 -0
  749. data/share/lilypond/2.24.1/fonts/otf/C059-BdIta.otf +0 -0
  750. data/share/lilypond/2.24.1/fonts/otf/C059-Bold.otf +0 -0
  751. data/share/lilypond/2.24.1/fonts/otf/C059-Italic.otf +0 -0
  752. data/share/lilypond/2.24.1/fonts/otf/C059-Roman.otf +0 -0
  753. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-Bold.otf +0 -0
  754. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-BoldItalic.otf +0 -0
  755. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-Italic.otf +0 -0
  756. data/share/lilypond/2.24.1/fonts/otf/NimbusMonoPS-Regular.otf +0 -0
  757. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-Bold.otf +0 -0
  758. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-BoldItalic.otf +0 -0
  759. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-Italic.otf +0 -0
  760. data/share/lilypond/2.24.1/fonts/otf/NimbusSans-Regular.otf +0 -0
  761. data/share/lilypond/2.24.1/fonts/otf/emmentaler-11.otf +0 -0
  762. data/share/lilypond/2.24.1/fonts/otf/emmentaler-13.otf +0 -0
  763. data/share/lilypond/2.24.1/fonts/otf/emmentaler-14.otf +0 -0
  764. data/share/lilypond/2.24.1/fonts/otf/emmentaler-16.otf +0 -0
  765. data/share/lilypond/2.24.1/fonts/otf/emmentaler-18.otf +0 -0
  766. data/share/lilypond/2.24.1/fonts/otf/emmentaler-20.otf +0 -0
  767. data/share/lilypond/2.24.1/fonts/otf/emmentaler-23.otf +0 -0
  768. data/share/lilypond/2.24.1/fonts/otf/emmentaler-26.otf +0 -0
  769. data/share/lilypond/2.24.1/fonts/otf/emmentaler-brace.otf +0 -0
  770. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-bold.otf +0 -0
  771. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-bolditalic.otf +0 -0
  772. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-italic.otf +0 -0
  773. data/share/lilypond/2.24.1/fonts/otf/texgyrecursor-regular.otf +0 -0
  774. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-bold.otf +0 -0
  775. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-bolditalic.otf +0 -0
  776. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-italic.otf +0 -0
  777. data/share/lilypond/2.24.1/fonts/otf/texgyreheros-regular.otf +0 -0
  778. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-bold.otf +0 -0
  779. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-bolditalic.otf +0 -0
  780. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-italic.otf +0 -0
  781. data/share/lilypond/2.24.1/fonts/otf/texgyreschola-regular.otf +0 -0
  782. data/share/lilypond/2.24.1/fonts/source/common-modules-and-initialization.mf +26 -0
  783. data/share/lilypond/2.24.1/fonts/source/debugging-settings.mf +14 -0
  784. data/share/lilypond/2.24.1/fonts/source/declare-autometric-parameters.mf +9 -0
  785. data/share/lilypond/2.24.1/fonts/source/feta-accidentals.mf +58 -0
  786. data/share/lilypond/2.24.1/fonts/source/feta-accordion.mf +575 -0
  787. data/share/lilypond/2.24.1/fonts/source/feta-alphabet-generic.mf +16 -0
  788. data/share/lilypond/2.24.1/fonts/source/feta-alphabet11.mf +6 -0
  789. data/share/lilypond/2.24.1/fonts/source/feta-alphabet13.mf +6 -0
  790. data/share/lilypond/2.24.1/fonts/source/feta-alphabet14.mf +6 -0
  791. data/share/lilypond/2.24.1/fonts/source/feta-alphabet16.mf +6 -0
  792. data/share/lilypond/2.24.1/fonts/source/feta-alphabet18.mf +6 -0
  793. data/share/lilypond/2.24.1/fonts/source/feta-alphabet20.mf +6 -0
  794. data/share/lilypond/2.24.1/fonts/source/feta-alphabet23.mf +6 -0
  795. data/share/lilypond/2.24.1/fonts/source/feta-alphabet26.mf +6 -0
  796. data/share/lilypond/2.24.1/fonts/source/feta-arrow.mf +114 -0
  797. data/share/lilypond/2.24.1/fonts/source/feta-arrowheads.mf +171 -0
  798. data/share/lilypond/2.24.1/fonts/source/feta-autometric.mf +303 -0
  799. data/share/lilypond/2.24.1/fonts/source/feta-braces-a.mf +6 -0
  800. data/share/lilypond/2.24.1/fonts/source/feta-braces-b.mf +6 -0
  801. data/share/lilypond/2.24.1/fonts/source/feta-braces-c.mf +6 -0
  802. data/share/lilypond/2.24.1/fonts/source/feta-braces-d.mf +6 -0
  803. data/share/lilypond/2.24.1/fonts/source/feta-braces-e.mf +6 -0
  804. data/share/lilypond/2.24.1/fonts/source/feta-braces-f.mf +6 -0
  805. data/share/lilypond/2.24.1/fonts/source/feta-braces-g.mf +6 -0
  806. data/share/lilypond/2.24.1/fonts/source/feta-braces-generic.mf +47 -0
  807. data/share/lilypond/2.24.1/fonts/source/feta-braces-h.mf +6 -0
  808. data/share/lilypond/2.24.1/fonts/source/feta-braces-i.mf +6 -0
  809. data/share/lilypond/2.24.1/fonts/source/feta-braces.mf +125 -0
  810. data/share/lilypond/2.24.1/fonts/source/feta-brackettips.mf +100 -0
  811. data/share/lilypond/2.24.1/fonts/source/feta-clefs.mf +963 -0
  812. data/share/lilypond/2.24.1/fonts/source/feta-dots.mf +37 -0
  813. data/share/lilypond/2.24.1/fonts/source/feta-dynamics.mf +891 -0
  814. data/share/lilypond/2.24.1/fonts/source/feta-flags-generic.mf +17 -0
  815. data/share/lilypond/2.24.1/fonts/source/feta-flags.mf +926 -0
  816. data/share/lilypond/2.24.1/fonts/source/feta-flags11.mf +6 -0
  817. data/share/lilypond/2.24.1/fonts/source/feta-flags13.mf +6 -0
  818. data/share/lilypond/2.24.1/fonts/source/feta-flags14.mf +6 -0
  819. data/share/lilypond/2.24.1/fonts/source/feta-flags16.mf +6 -0
  820. data/share/lilypond/2.24.1/fonts/source/feta-flags18.mf +6 -0
  821. data/share/lilypond/2.24.1/fonts/source/feta-flags20.mf +6 -0
  822. data/share/lilypond/2.24.1/fonts/source/feta-flags23.mf +6 -0
  823. data/share/lilypond/2.24.1/fonts/source/feta-flags26.mf +6 -0
  824. data/share/lilypond/2.24.1/fonts/source/feta-flats.mf +668 -0
  825. data/share/lilypond/2.24.1/fonts/source/feta-macros.mf +506 -0
  826. data/share/lilypond/2.24.1/fonts/source/feta-naturals.mf +223 -0
  827. data/share/lilypond/2.24.1/fonts/source/feta-noteheads-generic.mf +17 -0
  828. data/share/lilypond/2.24.1/fonts/source/feta-noteheads.mf +2642 -0
  829. data/share/lilypond/2.24.1/fonts/source/feta-noteheads11.mf +6 -0
  830. data/share/lilypond/2.24.1/fonts/source/feta-noteheads13.mf +6 -0
  831. data/share/lilypond/2.24.1/fonts/source/feta-noteheads14.mf +6 -0
  832. data/share/lilypond/2.24.1/fonts/source/feta-noteheads16.mf +6 -0
  833. data/share/lilypond/2.24.1/fonts/source/feta-noteheads18.mf +6 -0
  834. data/share/lilypond/2.24.1/fonts/source/feta-noteheads20.mf +6 -0
  835. data/share/lilypond/2.24.1/fonts/source/feta-noteheads23.mf +6 -0
  836. data/share/lilypond/2.24.1/fonts/source/feta-noteheads26.mf +6 -0
  837. data/share/lilypond/2.24.1/fonts/source/feta-numbers.mf +1677 -0
  838. data/share/lilypond/2.24.1/fonts/source/feta-other-generic.mf +27 -0
  839. data/share/lilypond/2.24.1/fonts/source/feta-params.mf +323 -0
  840. data/share/lilypond/2.24.1/fonts/source/feta-parenthesis.mf +63 -0
  841. data/share/lilypond/2.24.1/fonts/source/feta-pedals.mf +355 -0
  842. data/share/lilypond/2.24.1/fonts/source/feta-rests.mf +890 -0
  843. data/share/lilypond/2.24.1/fonts/source/feta-scripts.mf +2206 -0
  844. data/share/lilypond/2.24.1/fonts/source/feta-sharps.mf +524 -0
  845. data/share/lilypond/2.24.1/fonts/source/feta-sori-koron.mf +325 -0
  846. data/share/lilypond/2.24.1/fonts/source/feta-ties.mf +72 -0
  847. data/share/lilypond/2.24.1/fonts/source/feta-timesignatures.mf +119 -0
  848. data/share/lilypond/2.24.1/fonts/source/feta-trills.mf +321 -0
  849. data/share/lilypond/2.24.1/fonts/source/feta11.mf +6 -0
  850. data/share/lilypond/2.24.1/fonts/source/feta13.mf +6 -0
  851. data/share/lilypond/2.24.1/fonts/source/feta14.mf +6 -0
  852. data/share/lilypond/2.24.1/fonts/source/feta16.mf +6 -0
  853. data/share/lilypond/2.24.1/fonts/source/feta18.mf +6 -0
  854. data/share/lilypond/2.24.1/fonts/source/feta20.mf +7 -0
  855. data/share/lilypond/2.24.1/fonts/source/feta23.mf +6 -0
  856. data/share/lilypond/2.24.1/fonts/source/feta26.mf +6 -0
  857. data/share/lilypond/2.24.1/fonts/source/parmesan-accidentals.mf +483 -0
  858. data/share/lilypond/2.24.1/fonts/source/parmesan-clefs.mf +1636 -0
  859. data/share/lilypond/2.24.1/fonts/source/parmesan-custodes.mf +503 -0
  860. data/share/lilypond/2.24.1/fonts/source/parmesan-dots.mf +62 -0
  861. data/share/lilypond/2.24.1/fonts/source/parmesan-flags.mf +319 -0
  862. data/share/lilypond/2.24.1/fonts/source/parmesan-macros.mf +225 -0
  863. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads-generic.mf +16 -0
  864. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads.mf +2191 -0
  865. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads11.mf +6 -0
  866. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads13.mf +6 -0
  867. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads14.mf +6 -0
  868. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads16.mf +6 -0
  869. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads18.mf +6 -0
  870. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads20.mf +6 -0
  871. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads23.mf +6 -0
  872. data/share/lilypond/2.24.1/fonts/source/parmesan-noteheads26.mf +6 -0
  873. data/share/lilypond/2.24.1/fonts/source/parmesan-other-generic.mf +24 -0
  874. data/share/lilypond/2.24.1/fonts/source/parmesan-rests.mf +428 -0
  875. data/share/lilypond/2.24.1/fonts/source/parmesan-scripts.mf +284 -0
  876. data/share/lilypond/2.24.1/fonts/source/parmesan-timesignatures.mf +402 -0
  877. data/share/lilypond/2.24.1/fonts/source/parmesan11.mf +6 -0
  878. data/share/lilypond/2.24.1/fonts/source/parmesan13.mf +6 -0
  879. data/share/lilypond/2.24.1/fonts/source/parmesan14.mf +6 -0
  880. data/share/lilypond/2.24.1/fonts/source/parmesan16.mf +6 -0
  881. data/share/lilypond/2.24.1/fonts/source/parmesan18.mf +6 -0
  882. data/share/lilypond/2.24.1/fonts/source/parmesan20.mf +6 -0
  883. data/share/lilypond/2.24.1/fonts/source/parmesan23.mf +6 -0
  884. data/share/lilypond/2.24.1/fonts/source/parmesan26.mf +6 -0
  885. data/share/lilypond/2.24.1/fonts/svg/emmentaler-11.svg +2525 -0
  886. data/share/lilypond/2.24.1/fonts/svg/emmentaler-11.woff +0 -0
  887. data/share/lilypond/2.24.1/fonts/svg/emmentaler-13.svg +2530 -0
  888. data/share/lilypond/2.24.1/fonts/svg/emmentaler-13.woff +0 -0
  889. data/share/lilypond/2.24.1/fonts/svg/emmentaler-14.svg +2526 -0
  890. data/share/lilypond/2.24.1/fonts/svg/emmentaler-14.woff +0 -0
  891. data/share/lilypond/2.24.1/fonts/svg/emmentaler-16.svg +2523 -0
  892. data/share/lilypond/2.24.1/fonts/svg/emmentaler-16.woff +0 -0
  893. data/share/lilypond/2.24.1/fonts/svg/emmentaler-18.svg +2519 -0
  894. data/share/lilypond/2.24.1/fonts/svg/emmentaler-18.woff +0 -0
  895. data/share/lilypond/2.24.1/fonts/svg/emmentaler-20.svg +2512 -0
  896. data/share/lilypond/2.24.1/fonts/svg/emmentaler-20.woff +0 -0
  897. data/share/lilypond/2.24.1/fonts/svg/emmentaler-23.svg +2506 -0
  898. data/share/lilypond/2.24.1/fonts/svg/emmentaler-23.woff +0 -0
  899. data/share/lilypond/2.24.1/fonts/svg/emmentaler-26.svg +2510 -0
  900. data/share/lilypond/2.24.1/fonts/svg/emmentaler-26.woff +0 -0
  901. data/share/lilypond/2.24.1/fonts/svg/emmentaler-brace.svg +1757 -0
  902. data/share/lilypond/2.24.1/fonts/svg/emmentaler-brace.woff +0 -0
  903. data/share/lilypond/2.24.1/ly/Welcome_to_LilyPond.ly +45 -0
  904. data/share/lilypond/2.24.1/ly/arabic.ly +185 -0
  905. data/share/lilypond/2.24.1/ly/articulate.ly +1013 -0
  906. data/share/lilypond/2.24.1/ly/bagpipe.ly +368 -0
  907. data/share/lilypond/2.24.1/ly/base-tkit.ly +135 -0
  908. data/share/lilypond/2.24.1/ly/catalan.ly +23 -0
  909. data/share/lilypond/2.24.1/ly/chord-modifiers-init.ly +63 -0
  910. data/share/lilypond/2.24.1/ly/chord-repetition-init.ly +60 -0
  911. data/share/lilypond/2.24.1/ly/context-mods-init.ly +119 -0
  912. data/share/lilypond/2.24.1/ly/declarations-init.ly +167 -0
  913. data/share/lilypond/2.24.1/ly/deutsch.ly +23 -0
  914. data/share/lilypond/2.24.1/ly/drumpitch-init.ly +366 -0
  915. data/share/lilypond/2.24.1/ly/dynamic-scripts-init.ly +54 -0
  916. data/share/lilypond/2.24.1/ly/english.ly +23 -0
  917. data/share/lilypond/2.24.1/ly/engraver-init.ly +1619 -0
  918. data/share/lilypond/2.24.1/ly/espanol.ly +23 -0
  919. data/share/lilypond/2.24.1/ly/event-listener.ly +241 -0
  920. data/share/lilypond/2.24.1/ly/festival.ly +38 -0
  921. data/share/lilypond/2.24.1/ly/generate-documentation.ly +7 -0
  922. data/share/lilypond/2.24.1/ly/grace-init.ly +56 -0
  923. data/share/lilypond/2.24.1/ly/graphviz-init.ly +174 -0
  924. data/share/lilypond/2.24.1/ly/gregorian.ly +268 -0
  925. data/share/lilypond/2.24.1/ly/guile-debugger.ly +55 -0
  926. data/share/lilypond/2.24.1/ly/hel-arabic.ly +307 -0
  927. data/share/lilypond/2.24.1/ly/init.ly +96 -0
  928. data/share/lilypond/2.24.1/ly/italiano.ly +23 -0
  929. data/share/lilypond/2.24.1/ly/lilypond-book-preamble.ly +47 -0
  930. data/share/lilypond/2.24.1/ly/lyrics-tkit.ly +68 -0
  931. data/share/lilypond/2.24.1/ly/makam.ly +166 -0
  932. data/share/lilypond/2.24.1/ly/midi-init.ly +59 -0
  933. data/share/lilypond/2.24.1/ly/music-functions-init.ly +2254 -0
  934. data/share/lilypond/2.24.1/ly/nederlands.ly +23 -0
  935. data/share/lilypond/2.24.1/ly/norsk.ly +23 -0
  936. data/share/lilypond/2.24.1/ly/paper-defaults-init.ly +188 -0
  937. data/share/lilypond/2.24.1/ly/performer-init.ly +398 -0
  938. data/share/lilypond/2.24.1/ly/persian.ly +335 -0
  939. data/share/lilypond/2.24.1/ly/piano-tkit.ly +61 -0
  940. data/share/lilypond/2.24.1/ly/portugues.ly +23 -0
  941. data/share/lilypond/2.24.1/ly/predefined-fretboards-init.ly +78 -0
  942. data/share/lilypond/2.24.1/ly/predefined-guitar-fretboards.ly +506 -0
  943. data/share/lilypond/2.24.1/ly/predefined-guitar-ninth-fretboards.ly +75 -0
  944. data/share/lilypond/2.24.1/ly/predefined-mandolin-fretboards.ly +876 -0
  945. data/share/lilypond/2.24.1/ly/predefined-ukulele-fretboards.ly +1285 -0
  946. data/share/lilypond/2.24.1/ly/property-init.ly +858 -0
  947. data/share/lilypond/2.24.1/ly/satb.ly +214 -0
  948. data/share/lilypond/2.24.1/ly/scale-definitions-init.ly +117 -0
  949. data/share/lilypond/2.24.1/ly/scheme-sandbox.ly +39 -0
  950. data/share/lilypond/2.24.1/ly/script-init.ly +94 -0
  951. data/share/lilypond/2.24.1/ly/spanners-init.ly +146 -0
  952. data/share/lilypond/2.24.1/ly/ssaattbb.ly +335 -0
  953. data/share/lilypond/2.24.1/ly/staff-tkit.ly +182 -0
  954. data/share/lilypond/2.24.1/ly/string-tunings-init.ly +94 -0
  955. data/share/lilypond/2.24.1/ly/suomi.ly +23 -0
  956. data/share/lilypond/2.24.1/ly/svenska.ly +23 -0
  957. data/share/lilypond/2.24.1/ly/swing.ly +362 -0
  958. data/share/lilypond/2.24.1/ly/text-replacements.ly +150 -0
  959. data/share/lilypond/2.24.1/ly/titling-init.ly +150 -0
  960. data/share/lilypond/2.24.1/ly/toc-init.ly +182 -0
  961. data/share/lilypond/2.24.1/ly/turkish-makam.ly +609 -0
  962. data/share/lilypond/2.24.1/ly/vlaams.ly +23 -0
  963. data/share/lilypond/2.24.1/ly/vocal-tkit.ly +103 -0
  964. data/share/lilypond/2.24.1/ly/voice-tkit.ly +34 -0
  965. data/share/lilypond/2.24.1/ps/encodingdefs.ps +2611 -0
  966. data/share/lilypond/2.24.1/ps/lilyponddefs.ps +49 -0
  967. data/share/lilypond/2.24.1/ps/music-drawing-routines.ps +329 -0
  968. data/share/lilypond/2.24.1/python/__pycache__/book_base.cpython-310.pyc +0 -0
  969. data/share/lilypond/2.24.1/python/__pycache__/book_docbook.cpython-310.pyc +0 -0
  970. data/share/lilypond/2.24.1/python/__pycache__/book_html.cpython-310.pyc +0 -0
  971. data/share/lilypond/2.24.1/python/__pycache__/book_latex.cpython-310.pyc +0 -0
  972. data/share/lilypond/2.24.1/python/__pycache__/book_snippets.cpython-310.pyc +0 -0
  973. data/share/lilypond/2.24.1/python/__pycache__/book_texinfo.cpython-310.pyc +0 -0
  974. data/share/lilypond/2.24.1/python/__pycache__/convertrules.cpython-310.pyc +0 -0
  975. data/share/lilypond/2.24.1/python/__pycache__/langdefs.cpython-310.pyc +0 -0
  976. data/share/lilypond/2.24.1/python/__pycache__/lilylib.cpython-310.pyc +0 -0
  977. data/share/lilypond/2.24.1/python/__pycache__/midi.cpython-310.pyc +0 -0
  978. data/share/lilypond/2.24.1/python/__pycache__/musicexp.cpython-310.pyc +0 -0
  979. data/share/lilypond/2.24.1/python/__pycache__/musicxml.cpython-310.pyc +0 -0
  980. data/share/lilypond/2.24.1/python/__pycache__/musicxml2ly_conversion.cpython-310.pyc +0 -0
  981. data/share/lilypond/2.24.1/python/__pycache__/utilities.cpython-310.pyc +0 -0
  982. data/share/lilypond/2.24.1/python/book_base.py +331 -0
  983. data/share/lilypond/2.24.1/python/book_docbook.py +154 -0
  984. data/share/lilypond/2.24.1/python/book_html.py +178 -0
  985. data/share/lilypond/2.24.1/python/book_latex.py +373 -0
  986. data/share/lilypond/2.24.1/python/book_snippets.py +1052 -0
  987. data/share/lilypond/2.24.1/python/book_texinfo.py +437 -0
  988. data/share/lilypond/2.24.1/python/convertrules.py +4764 -0
  989. data/share/lilypond/2.24.1/python/langdefs.py +131 -0
  990. data/share/lilypond/2.24.1/python/lilylib.py +141 -0
  991. data/share/lilypond/2.24.1/python/midi.py +212 -0
  992. data/share/lilypond/2.24.1/python/musicexp.py +2781 -0
  993. data/share/lilypond/2.24.1/python/musicxml.py +1905 -0
  994. data/share/lilypond/2.24.1/python/musicxml2ly_conversion.py +80 -0
  995. data/share/lilypond/2.24.1/python/utilities.py +280 -0
  996. data/share/lilypond/2.24.1/scm/lily/accreg.scm +579 -0
  997. data/share/lilypond/2.24.1/scm/lily/auto-beam.scm +163 -0
  998. data/share/lilypond/2.24.1/scm/lily/autochange.scm +100 -0
  999. data/share/lilypond/2.24.1/scm/lily/backend-library.scm +593 -0
  1000. data/share/lilypond/2.24.1/scm/lily/bar-line.scm +1281 -0
  1001. data/share/lilypond/2.24.1/scm/lily/breath.scm +74 -0
  1002. data/share/lilypond/2.24.1/scm/lily/c++.scm +174 -0
  1003. data/share/lilypond/2.24.1/scm/lily/chord-entry.scm +278 -0
  1004. data/share/lilypond/2.24.1/scm/lily/chord-ignatzek-names.scm +304 -0
  1005. data/share/lilypond/2.24.1/scm/lily/chord-name.scm +217 -0
  1006. data/share/lilypond/2.24.1/scm/lily/clip-region.scm +87 -0
  1007. data/share/lilypond/2.24.1/scm/lily/color.scm +757 -0
  1008. data/share/lilypond/2.24.1/scm/lily/curried-definitions.scm +68 -0
  1009. data/share/lilypond/2.24.1/scm/lily/define-context-properties.scm +939 -0
  1010. data/share/lilypond/2.24.1/scm/lily/define-event-classes.scm +142 -0
  1011. data/share/lilypond/2.24.1/scm/lily/define-grob-interfaces.scm +640 -0
  1012. data/share/lilypond/2.24.1/scm/lily/define-grob-properties.scm +1647 -0
  1013. data/share/lilypond/2.24.1/scm/lily/define-grobs.scm +4027 -0
  1014. data/share/lilypond/2.24.1/scm/lily/define-markup-commands.scm +5737 -0
  1015. data/share/lilypond/2.24.1/scm/lily/define-music-callbacks.scm +257 -0
  1016. data/share/lilypond/2.24.1/scm/lily/define-music-display-methods.scm +1350 -0
  1017. data/share/lilypond/2.24.1/scm/lily/define-music-properties.scm +242 -0
  1018. data/share/lilypond/2.24.1/scm/lily/define-music-types.scm +983 -0
  1019. data/share/lilypond/2.24.1/scm/lily/define-note-names.scm +1421 -0
  1020. data/share/lilypond/2.24.1/scm/lily/define-stencil-commands.scm +71 -0
  1021. data/share/lilypond/2.24.1/scm/lily/define-woodwind-diagrams.scm +1215 -0
  1022. data/share/lilypond/2.24.1/scm/lily/display-lily.scm +315 -0
  1023. data/share/lilypond/2.24.1/scm/lily/display-woodwind-diagrams.scm +1985 -0
  1024. data/share/lilypond/2.24.1/scm/lily/document-backend.scm +307 -0
  1025. data/share/lilypond/2.24.1/scm/lily/document-context-mods.scm +98 -0
  1026. data/share/lilypond/2.24.1/scm/lily/document-functions.scm +169 -0
  1027. data/share/lilypond/2.24.1/scm/lily/document-identifiers.scm +76 -0
  1028. data/share/lilypond/2.24.1/scm/lily/document-markup.scm +158 -0
  1029. data/share/lilypond/2.24.1/scm/lily/document-music.scm +146 -0
  1030. data/share/lilypond/2.24.1/scm/lily/document-outside-staff-priorities.scm +40 -0
  1031. data/share/lilypond/2.24.1/scm/lily/document-paper-sizes.scm +71 -0
  1032. data/share/lilypond/2.24.1/scm/lily/document-translation.scm +318 -0
  1033. data/share/lilypond/2.24.1/scm/lily/document-type-predicates.scm +85 -0
  1034. data/share/lilypond/2.24.1/scm/lily/documentation-generate.scm +259 -0
  1035. data/share/lilypond/2.24.1/scm/lily/documentation-lib.scm +207 -0
  1036. data/share/lilypond/2.24.1/scm/lily/file-cache.scm +28 -0
  1037. data/share/lilypond/2.24.1/scm/lily/flag-styles.scm +249 -0
  1038. data/share/lilypond/2.24.1/scm/lily/font-encodings.scm +1242 -0
  1039. data/share/lilypond/2.24.1/scm/lily/font.scm +303 -0
  1040. data/share/lilypond/2.24.1/scm/lily/framework-cairo.scm +26 -0
  1041. data/share/lilypond/2.24.1/scm/lily/framework-ps.scm +896 -0
  1042. data/share/lilypond/2.24.1/scm/lily/framework-svg.scm +172 -0
  1043. data/share/lilypond/2.24.1/scm/lily/fret-diagrams.scm +1261 -0
  1044. data/share/lilypond/2.24.1/scm/lily/graphviz.scm +78 -0
  1045. data/share/lilypond/2.24.1/scm/lily/guile-debugger.scm +90 -0
  1046. data/share/lilypond/2.24.1/scm/lily/harp-pedals.scm +172 -0
  1047. data/share/lilypond/2.24.1/scm/lily/hyphenate-internal-words.scm +51 -0
  1048. data/share/lilypond/2.24.1/scm/lily/layout-beam.scm +73 -0
  1049. data/share/lilypond/2.24.1/scm/lily/layout-slur.scm +45 -0
  1050. data/share/lilypond/2.24.1/scm/lily/lily-library.scm +1446 -0
  1051. data/share/lilypond/2.24.1/scm/lily/lily-sort.scm +116 -0
  1052. data/share/lilypond/2.24.1/scm/lily/lily.scm +929 -0
  1053. data/share/lilypond/2.24.1/scm/lily/ly-syntax-constructors.scm +374 -0
  1054. data/share/lilypond/2.24.1/scm/lily/markup-macros.scm +493 -0
  1055. data/share/lilypond/2.24.1/scm/lily/markup.scm +126 -0
  1056. data/share/lilypond/2.24.1/scm/lily/midi.scm +258 -0
  1057. data/share/lilypond/2.24.1/scm/lily/modal-transforms.scm +337 -0
  1058. data/share/lilypond/2.24.1/scm/lily/music-functions.scm +2878 -0
  1059. data/share/lilypond/2.24.1/scm/lily/output-lib.scm +3377 -0
  1060. data/share/lilypond/2.24.1/scm/lily/output-ps.scm +335 -0
  1061. data/share/lilypond/2.24.1/scm/lily/output-svg.scm +684 -0
  1062. data/share/lilypond/2.24.1/scm/lily/page.scm +321 -0
  1063. data/share/lilypond/2.24.1/scm/lily/paper-system.scm +271 -0
  1064. data/share/lilypond/2.24.1/scm/lily/paper.scm +376 -0
  1065. data/share/lilypond/2.24.1/scm/lily/parser-clef.scm +205 -0
  1066. data/share/lilypond/2.24.1/scm/lily/parser-ly-from-scheme.scm +170 -0
  1067. data/share/lilypond/2.24.1/scm/lily/part-combiner.scm +998 -0
  1068. data/share/lilypond/2.24.1/scm/lily/predefined-fretboards.scm +54 -0
  1069. data/share/lilypond/2.24.1/scm/lily/ps-to-png.scm +182 -0
  1070. data/share/lilypond/2.24.1/scm/lily/scheme-engravers.scm +1813 -0
  1071. data/share/lilypond/2.24.1/scm/lily/scheme-performers.scm +126 -0
  1072. data/share/lilypond/2.24.1/scm/lily/script.scm +416 -0
  1073. data/share/lilypond/2.24.1/scm/lily/skyline.scm +25 -0
  1074. data/share/lilypond/2.24.1/scm/lily/song-util.scm +191 -0
  1075. data/share/lilypond/2.24.1/scm/lily/song.scm +853 -0
  1076. data/share/lilypond/2.24.1/scm/lily/stencil.scm +998 -0
  1077. data/share/lilypond/2.24.1/scm/lily/tablature.scm +392 -0
  1078. data/share/lilypond/2.24.1/scm/lily/time-signature-settings.scm +473 -0
  1079. data/share/lilypond/2.24.1/scm/lily/time-signature.scm +35 -0
  1080. data/share/lilypond/2.24.1/scm/lily/titling.scm +99 -0
  1081. data/share/lilypond/2.24.1/scm/lily/to-xml.scm +254 -0
  1082. data/share/lilypond/2.24.1/scm/lily/translation-functions.scm +1169 -0
  1083. data/share/lilypond/2.24.1/vim/compiler/lilypond.vim +36 -0
  1084. data/share/lilypond/2.24.1/vim/ftdetect/lilypond.vim +4 -0
  1085. data/share/lilypond/2.24.1/vim/ftplugin/lilypond.vim +91 -0
  1086. data/share/lilypond/2.24.1/vim/indent/lilypond.vim +79 -0
  1087. data/share/lilypond/2.24.1/vim/syntax/lilypond-words +1408 -0
  1088. data/share/lilypond/2.24.1/vim/syntax/lilypond-words.vim +3 -0
  1089. data/share/lilypond/2.24.1/vim/syntax/lilypond.vim +104 -0
  1090. data/share/locale/ca/LC_MESSAGES/lilypond.mo +0 -0
  1091. data/share/locale/cs/LC_MESSAGES/lilypond.mo +0 -0
  1092. data/share/locale/da/LC_MESSAGES/lilypond.mo +0 -0
  1093. data/share/locale/de/LC_MESSAGES/lilypond.mo +0 -0
  1094. data/share/locale/el/LC_MESSAGES/lilypond.mo +0 -0
  1095. data/share/locale/eo/LC_MESSAGES/lilypond.mo +0 -0
  1096. data/share/locale/es/LC_MESSAGES/lilypond.mo +0 -0
  1097. data/share/locale/fi/LC_MESSAGES/lilypond.mo +0 -0
  1098. data/share/locale/fr/LC_MESSAGES/lilypond.mo +0 -0
  1099. data/share/locale/it/LC_MESSAGES/lilypond.mo +0 -0
  1100. data/share/locale/ja/LC_MESSAGES/lilypond.mo +0 -0
  1101. data/share/locale/nl/LC_MESSAGES/lilypond.mo +0 -0
  1102. data/share/locale/ru/LC_MESSAGES/lilypond.mo +0 -0
  1103. data/share/locale/sv/LC_MESSAGES/lilypond.mo +0 -0
  1104. data/share/locale/tr/LC_MESSAGES/lilypond.mo +0 -0
  1105. data/share/locale/uk/LC_MESSAGES/lilypond.mo +0 -0
  1106. data/share/locale/vi/LC_MESSAGES/lilypond.mo +0 -0
  1107. data/share/locale/zh_CN/LC_MESSAGES/lilypond.mo +0 -0
  1108. data/share/locale/zh_TW/LC_MESSAGES/lilypond.mo +0 -0
  1109. metadata +1108 -1
@@ -0,0 +1,1040 @@
1
+ ;; Copyright (c) 2005, 2006, 2007, 2012, 2013 Per Bothner
2
+ ;; Added "full" support for Chicken, Gauche, Guile and SISC.
3
+ ;; Alex Shinn, Copyright (c) 2005.
4
+ ;; Modified for Scheme Spheres by Álvaro Castro-Castilla, Copyright (c) 2012.
5
+ ;; Support for Guile 2 by Mark H Weaver <mhw@netris.org>, Copyright (c) 2014.
6
+ ;;
7
+ ;; Permission is hereby granted, free of charge, to any person
8
+ ;; obtaining a copy of this software and associated documentation
9
+ ;; files (the "Software"), to deal in the Software without
10
+ ;; restriction, including without limitation the rights to use, copy,
11
+ ;; modify, merge, publish, distribute, sublicense, and/or sell copies
12
+ ;; of the Software, and to permit persons to whom the Software is
13
+ ;; furnished to do so, subject to the following conditions:
14
+ ;;
15
+ ;; The above copyright notice and this permission notice shall be
16
+ ;; included in all copies or substantial portions of the Software.
17
+ ;;
18
+ ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19
+ ;; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20
+ ;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21
+ ;; NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
22
+ ;; BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
23
+ ;; ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
24
+ ;; CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
25
+ ;; SOFTWARE.
26
+
27
+ (cond-expand
28
+ (chicken
29
+ (require-extension syntax-case))
30
+ (guile-2
31
+ (use-modules (srfi srfi-9)
32
+ ;; In 2.0.9, srfi-34 and srfi-35 are not well integrated
33
+ ;; with either Guile's native exceptions or R6RS exceptions.
34
+ ;;(srfi srfi-34) (srfi srfi-35)
35
+ (srfi srfi-39)))
36
+ (guile
37
+ (use-modules (ice-9 syncase) (srfi srfi-9)
38
+ ;;(srfi srfi-34) (srfi srfi-35) - not in Guile 1.6.7
39
+ (srfi srfi-39)))
40
+ (sisc
41
+ (require-extension (srfi 9 34 35 39)))
42
+ (kawa
43
+ (module-compile-options warn-undefined-variable: #t
44
+ warn-invoke-unknown-method: #t)
45
+ (provide 'srfi-64)
46
+ (provide 'testing)
47
+ (require 'srfi-34)
48
+ (require 'srfi-35))
49
+ (else ()
50
+ ))
51
+
52
+ (cond-expand
53
+ (kawa
54
+ (define-syntax %test-export
55
+ (syntax-rules ()
56
+ ((%test-export test-begin . other-names)
57
+ (module-export %test-begin . other-names)))))
58
+ (else
59
+ (define-syntax %test-export
60
+ (syntax-rules ()
61
+ ((%test-export . names) (if #f #f))))))
62
+
63
+ ;; List of exported names
64
+ (%test-export
65
+ test-begin ;; must be listed first, since in Kawa (at least) it is "magic".
66
+ test-end test-assert test-eqv test-eq test-equal
67
+ test-approximate test-assert test-error test-apply test-with-runner
68
+ test-match-nth test-match-all test-match-any test-match-name
69
+ test-skip test-expect-fail test-read-eval-string
70
+ test-runner-group-path test-group test-group-with-cleanup
71
+ test-result-ref test-result-set! test-result-clear test-result-remove
72
+ test-result-kind test-passed?
73
+ test-log-to-file
74
+ ; Misc test-runner functions
75
+ test-runner? test-runner-reset test-runner-null
76
+ test-runner-simple test-runner-current test-runner-factory test-runner-get
77
+ test-runner-create test-runner-test-name
78
+ ;; test-runner field setter and getter functions - see %test-record-define:
79
+ test-runner-pass-count test-runner-pass-count!
80
+ test-runner-fail-count test-runner-fail-count!
81
+ test-runner-xpass-count test-runner-xpass-count!
82
+ test-runner-xfail-count test-runner-xfail-count!
83
+ test-runner-skip-count test-runner-skip-count!
84
+ test-runner-group-stack test-runner-group-stack!
85
+ test-runner-on-test-begin test-runner-on-test-begin!
86
+ test-runner-on-test-end test-runner-on-test-end!
87
+ test-runner-on-group-begin test-runner-on-group-begin!
88
+ test-runner-on-group-end test-runner-on-group-end!
89
+ test-runner-on-final test-runner-on-final!
90
+ test-runner-on-bad-count test-runner-on-bad-count!
91
+ test-runner-on-bad-end-name test-runner-on-bad-end-name!
92
+ test-result-alist test-result-alist!
93
+ test-runner-aux-value test-runner-aux-value!
94
+ ;; default/simple call-back functions, used in default test-runner,
95
+ ;; but can be called to construct more complex ones.
96
+ test-on-group-begin-simple test-on-group-end-simple
97
+ test-on-bad-count-simple test-on-bad-end-name-simple
98
+ test-on-final-simple test-on-test-end-simple
99
+ test-on-final-simple)
100
+
101
+ (cond-expand
102
+ (srfi-9
103
+ (define-syntax %test-record-define
104
+ (syntax-rules ()
105
+ ((%test-record-define alloc runner? (name index setter getter) ...)
106
+ (define-record-type test-runner
107
+ (alloc)
108
+ runner?
109
+ (name setter getter) ...)))))
110
+ (else
111
+ (define %test-runner-cookie (list "test-runner"))
112
+ (define-syntax %test-record-define
113
+ (syntax-rules ()
114
+ ((%test-record-define alloc runner? (name index getter setter) ...)
115
+ (begin
116
+ (define (runner? obj)
117
+ (and (vector? obj)
118
+ (> (vector-length obj) 1)
119
+ (eq (vector-ref obj 0) %test-runner-cookie)))
120
+ (define (alloc)
121
+ (let ((runner (make-vector 23)))
122
+ (vector-set! runner 0 %test-runner-cookie)
123
+ runner))
124
+ (begin
125
+ (define (getter runner)
126
+ (vector-ref runner index)) ...)
127
+ (begin
128
+ (define (setter runner value)
129
+ (vector-set! runner index value)) ...)))))))
130
+
131
+ (%test-record-define
132
+ %test-runner-alloc test-runner?
133
+ ;; Cumulate count of all tests that have passed and were expected to.
134
+ (pass-count 1 test-runner-pass-count test-runner-pass-count!)
135
+ (fail-count 2 test-runner-fail-count test-runner-fail-count!)
136
+ (xpass-count 3 test-runner-xpass-count test-runner-xpass-count!)
137
+ (xfail-count 4 test-runner-xfail-count test-runner-xfail-count!)
138
+ (skip-count 5 test-runner-skip-count test-runner-skip-count!)
139
+ (skip-list 6 %test-runner-skip-list %test-runner-skip-list!)
140
+ (fail-list 7 %test-runner-fail-list %test-runner-fail-list!)
141
+ ;; Normally #t, except when in a test-apply.
142
+ (run-list 8 %test-runner-run-list %test-runner-run-list!)
143
+ (skip-save 9 %test-runner-skip-save %test-runner-skip-save!)
144
+ (fail-save 10 %test-runner-fail-save %test-runner-fail-save!)
145
+ (group-stack 11 test-runner-group-stack test-runner-group-stack!)
146
+ (on-test-begin 12 test-runner-on-test-begin test-runner-on-test-begin!)
147
+ (on-test-end 13 test-runner-on-test-end test-runner-on-test-end!)
148
+ ;; Call-back when entering a group. Takes (runner suite-name count).
149
+ (on-group-begin 14 test-runner-on-group-begin test-runner-on-group-begin!)
150
+ ;; Call-back when leaving a group.
151
+ (on-group-end 15 test-runner-on-group-end test-runner-on-group-end!)
152
+ ;; Call-back when leaving the outermost group.
153
+ (on-final 16 test-runner-on-final test-runner-on-final!)
154
+ ;; Call-back when expected number of tests was wrong.
155
+ (on-bad-count 17 test-runner-on-bad-count test-runner-on-bad-count!)
156
+ ;; Call-back when name in test=end doesn't match test-begin.
157
+ (on-bad-end-name 18 test-runner-on-bad-end-name test-runner-on-bad-end-name!)
158
+ ;; Cumulate count of all tests that have been done.
159
+ (total-count 19 %test-runner-total-count %test-runner-total-count!)
160
+ ;; Stack (list) of (count-at-start . expected-count):
161
+ (count-list 20 %test-runner-count-list %test-runner-count-list!)
162
+ (result-alist 21 test-result-alist test-result-alist!)
163
+ ;; Field can be used by test-runner for any purpose.
164
+ ;; test-runner-simple uses it for a log file.
165
+ (aux-value 22 test-runner-aux-value test-runner-aux-value!)
166
+ )
167
+
168
+ (define (test-runner-reset runner)
169
+ (test-result-alist! runner '())
170
+ (test-runner-pass-count! runner 0)
171
+ (test-runner-fail-count! runner 0)
172
+ (test-runner-xpass-count! runner 0)
173
+ (test-runner-xfail-count! runner 0)
174
+ (test-runner-skip-count! runner 0)
175
+ (%test-runner-total-count! runner 0)
176
+ (%test-runner-count-list! runner '())
177
+ (%test-runner-run-list! runner #t)
178
+ (%test-runner-skip-list! runner '())
179
+ (%test-runner-fail-list! runner '())
180
+ (%test-runner-skip-save! runner '())
181
+ (%test-runner-fail-save! runner '())
182
+ (test-runner-group-stack! runner '()))
183
+
184
+ (define (test-runner-group-path runner)
185
+ (reverse (test-runner-group-stack runner)))
186
+
187
+ (define (%test-null-callback runner) #f)
188
+
189
+ (define (test-runner-null)
190
+ (let ((runner (%test-runner-alloc)))
191
+ (test-runner-reset runner)
192
+ (test-runner-on-group-begin! runner (lambda (runner name count) #f))
193
+ (test-runner-on-group-end! runner %test-null-callback)
194
+ (test-runner-on-final! runner %test-null-callback)
195
+ (test-runner-on-test-begin! runner %test-null-callback)
196
+ (test-runner-on-test-end! runner %test-null-callback)
197
+ (test-runner-on-bad-count! runner (lambda (runner count expected) #f))
198
+ (test-runner-on-bad-end-name! runner (lambda (runner begin end) #f))
199
+ runner))
200
+
201
+ ;; Not part of the specification. FIXME
202
+ ;; Controls whether a log file is generated.
203
+ (define test-log-to-file #t)
204
+
205
+ (define (test-runner-simple)
206
+ (let ((runner (%test-runner-alloc)))
207
+ (test-runner-reset runner)
208
+ (test-runner-on-group-begin! runner test-on-group-begin-simple)
209
+ (test-runner-on-group-end! runner test-on-group-end-simple)
210
+ (test-runner-on-final! runner test-on-final-simple)
211
+ (test-runner-on-test-begin! runner test-on-test-begin-simple)
212
+ (test-runner-on-test-end! runner test-on-test-end-simple)
213
+ (test-runner-on-bad-count! runner test-on-bad-count-simple)
214
+ (test-runner-on-bad-end-name! runner test-on-bad-end-name-simple)
215
+ runner))
216
+
217
+ (cond-expand
218
+ (srfi-39
219
+ (define test-runner-current (make-parameter #f))
220
+ (define test-runner-factory (make-parameter test-runner-simple)))
221
+ (else
222
+ (define %test-runner-current #f)
223
+ (define-syntax test-runner-current
224
+ (syntax-rules ()
225
+ ((test-runner-current)
226
+ %test-runner-current)
227
+ ((test-runner-current runner)
228
+ (set! %test-runner-current runner))))
229
+ (define %test-runner-factory test-runner-simple)
230
+ (define-syntax test-runner-factory
231
+ (syntax-rules ()
232
+ ((test-runner-factory)
233
+ %test-runner-factory)
234
+ ((test-runner-factory runner)
235
+ (set! %test-runner-factory runner))))))
236
+
237
+ ;; A safer wrapper to test-runner-current.
238
+ (define (test-runner-get)
239
+ (let ((r (test-runner-current)))
240
+ (if (not r)
241
+ (cond-expand
242
+ (srfi-23 (error "test-runner not initialized - test-begin missing?"))
243
+ (else #t)))
244
+ r))
245
+
246
+ (define (%test-specifier-matches spec runner)
247
+ (spec runner))
248
+
249
+ (define (test-runner-create)
250
+ ((test-runner-factory)))
251
+
252
+ (define (%test-any-specifier-matches list runner)
253
+ (let ((result #f))
254
+ (let loop ((l list))
255
+ (cond ((null? l) result)
256
+ (else
257
+ (if (%test-specifier-matches (car l) runner)
258
+ (set! result #t))
259
+ (loop (cdr l)))))))
260
+
261
+ ;; Returns #f, #t, or 'xfail.
262
+ (define (%test-should-execute runner)
263
+ (let ((run (%test-runner-run-list runner)))
264
+ (cond ((or
265
+ (not (or (eqv? run #t)
266
+ (%test-any-specifier-matches run runner)))
267
+ (%test-any-specifier-matches
268
+ (%test-runner-skip-list runner)
269
+ runner))
270
+ (test-result-set! runner 'result-kind 'skip)
271
+ #f)
272
+ ((%test-any-specifier-matches
273
+ (%test-runner-fail-list runner)
274
+ runner)
275
+ (test-result-set! runner 'result-kind 'xfail)
276
+ 'xfail)
277
+ (else #t))))
278
+
279
+ (define (%test-begin suite-name count)
280
+ (if (not (test-runner-current))
281
+ (test-runner-current (test-runner-create)))
282
+ (let ((runner (test-runner-current)))
283
+ ((test-runner-on-group-begin runner) runner suite-name count)
284
+ (%test-runner-skip-save! runner
285
+ (cons (%test-runner-skip-list runner)
286
+ (%test-runner-skip-save runner)))
287
+ (%test-runner-fail-save! runner
288
+ (cons (%test-runner-fail-list runner)
289
+ (%test-runner-fail-save runner)))
290
+ (%test-runner-count-list! runner
291
+ (cons (cons (%test-runner-total-count runner)
292
+ count)
293
+ (%test-runner-count-list runner)))
294
+ (test-runner-group-stack! runner (cons suite-name
295
+ (test-runner-group-stack runner)))))
296
+ (cond-expand
297
+ (kawa
298
+ ;; Kawa has test-begin built in, implemented as:
299
+ ;; (begin
300
+ ;; (cond-expand (srfi-64 #!void) (else (require 'srfi-64)))
301
+ ;; (%test-begin suite-name [count]))
302
+ ;; This puts test-begin but only test-begin in the default environment.,
303
+ ;; which makes normal test suites loadable without non-portable commands.
304
+ )
305
+ (else
306
+ (define-syntax test-begin
307
+ (syntax-rules ()
308
+ ((test-begin suite-name)
309
+ (%test-begin suite-name #f))
310
+ ((test-begin suite-name count)
311
+ (%test-begin suite-name count))))))
312
+
313
+ (define (test-on-group-begin-simple runner suite-name count)
314
+ (if (null? (test-runner-group-stack runner))
315
+ (begin
316
+ (display "%%%% Starting test ")
317
+ (display suite-name)
318
+ (if test-log-to-file
319
+ (let* ((log-file-name
320
+ (if (string? test-log-to-file) test-log-to-file
321
+ (string-append suite-name ".log")))
322
+ (log-file
323
+ (cond-expand (mzscheme
324
+ (open-output-file log-file-name 'truncate/replace))
325
+ (else (open-output-file log-file-name)))))
326
+ (display "%%%% Starting test " log-file)
327
+ (display suite-name log-file)
328
+ (newline log-file)
329
+ (test-runner-aux-value! runner log-file)
330
+ (display " (Writing full log to \"")
331
+ (display log-file-name)
332
+ (display "\")")))
333
+ (newline)))
334
+ (let ((log (test-runner-aux-value runner)))
335
+ (if (output-port? log)
336
+ (begin
337
+ (display "Group begin: " log)
338
+ (display suite-name log)
339
+ (newline log))))
340
+ #f)
341
+
342
+ (define (test-on-group-end-simple runner)
343
+ (let ((log (test-runner-aux-value runner)))
344
+ (if (output-port? log)
345
+ (begin
346
+ (display "Group end: " log)
347
+ (display (car (test-runner-group-stack runner)) log)
348
+ (newline log))))
349
+ #f)
350
+
351
+ (define (%test-on-bad-count-write runner count expected-count port)
352
+ (display "*** Total number of tests was " port)
353
+ (display count port)
354
+ (display " but should be " port)
355
+ (display expected-count port)
356
+ (display ". ***" port)
357
+ (newline port)
358
+ (display "*** Discrepancy indicates testsuite error or exceptions. ***" port)
359
+ (newline port))
360
+
361
+ (define (test-on-bad-count-simple runner count expected-count)
362
+ (%test-on-bad-count-write runner count expected-count (current-output-port))
363
+ (let ((log (test-runner-aux-value runner)))
364
+ (if (output-port? log)
365
+ (%test-on-bad-count-write runner count expected-count log))))
366
+
367
+ (define (test-on-bad-end-name-simple runner begin-name end-name)
368
+ (let ((msg (string-append (%test-format-line runner) "test-end " begin-name
369
+ " does not match test-begin " end-name)))
370
+ (cond-expand
371
+ (srfi-23 (error msg))
372
+ (else (display msg) (newline)))))
373
+
374
+
375
+ (define (%test-final-report1 value label port)
376
+ (if (> value 0)
377
+ (begin
378
+ (display label port)
379
+ (display value port)
380
+ (newline port))))
381
+
382
+ (define (%test-final-report-simple runner port)
383
+ (%test-final-report1 (test-runner-pass-count runner)
384
+ "# of expected passes " port)
385
+ (%test-final-report1 (test-runner-xfail-count runner)
386
+ "# of expected failures " port)
387
+ (%test-final-report1 (test-runner-xpass-count runner)
388
+ "# of unexpected successes " port)
389
+ (%test-final-report1 (test-runner-fail-count runner)
390
+ "# of unexpected failures " port)
391
+ (%test-final-report1 (test-runner-skip-count runner)
392
+ "# of skipped tests " port))
393
+
394
+ (define (test-on-final-simple runner)
395
+ (%test-final-report-simple runner (current-output-port))
396
+ (let ((log (test-runner-aux-value runner)))
397
+ (if (output-port? log)
398
+ (%test-final-report-simple runner log))))
399
+
400
+ (define (%test-format-line runner)
401
+ (let* ((line-info (test-result-alist runner))
402
+ (source-file (assq 'source-file line-info))
403
+ (source-line (assq 'source-line line-info))
404
+ (file (if source-file (cdr source-file) "")))
405
+ (if source-line
406
+ (string-append file ":"
407
+ (number->string (cdr source-line)) ": ")
408
+ "")))
409
+
410
+ (define (%test-end suite-name line-info)
411
+ (let* ((r (test-runner-get))
412
+ (groups (test-runner-group-stack r))
413
+ (line (%test-format-line r)))
414
+ (test-result-alist! r line-info)
415
+ (if (null? groups)
416
+ (let ((msg (string-append line "test-end not in a group")))
417
+ (cond-expand
418
+ (srfi-23 (error msg))
419
+ (else (display msg) (newline)))))
420
+ (if (and suite-name (not (equal? suite-name (car groups))))
421
+ ((test-runner-on-bad-end-name r) r suite-name (car groups)))
422
+ (let* ((count-list (%test-runner-count-list r))
423
+ (expected-count (cdar count-list))
424
+ (saved-count (caar count-list))
425
+ (group-count (- (%test-runner-total-count r) saved-count)))
426
+ (if (and expected-count
427
+ (not (= expected-count group-count)))
428
+ ((test-runner-on-bad-count r) r group-count expected-count))
429
+ ((test-runner-on-group-end r) r)
430
+ (test-runner-group-stack! r (cdr (test-runner-group-stack r)))
431
+ (%test-runner-skip-list! r (car (%test-runner-skip-save r)))
432
+ (%test-runner-skip-save! r (cdr (%test-runner-skip-save r)))
433
+ (%test-runner-fail-list! r (car (%test-runner-fail-save r)))
434
+ (%test-runner-fail-save! r (cdr (%test-runner-fail-save r)))
435
+ (%test-runner-count-list! r (cdr count-list))
436
+ (if (null? (test-runner-group-stack r))
437
+ ((test-runner-on-final r) r)))))
438
+
439
+ (define-syntax test-group
440
+ (syntax-rules ()
441
+ ((test-group suite-name . body)
442
+ (let ((r (test-runner-current)))
443
+ ;; Ideally should also set line-number, if available.
444
+ (test-result-alist! r (list (cons 'test-name suite-name)))
445
+ (if (%test-should-execute r)
446
+ (dynamic-wind
447
+ (lambda () (test-begin suite-name))
448
+ (lambda () . body)
449
+ (lambda () (test-end suite-name))))))))
450
+
451
+ (define-syntax test-group-with-cleanup
452
+ (syntax-rules ()
453
+ ((test-group-with-cleanup suite-name form cleanup-form)
454
+ (test-group suite-name
455
+ (dynamic-wind
456
+ (lambda () #f)
457
+ (lambda () form)
458
+ (lambda () cleanup-form))))
459
+ ((test-group-with-cleanup suite-name cleanup-form)
460
+ (test-group-with-cleanup suite-name #f cleanup-form))
461
+ ((test-group-with-cleanup suite-name form1 form2 form3 . rest)
462
+ (test-group-with-cleanup suite-name (begin form1 form2) form3 . rest))))
463
+
464
+ (define (test-on-test-begin-simple runner)
465
+ (let ((log (test-runner-aux-value runner)))
466
+ (if (output-port? log)
467
+ (let* ((results (test-result-alist runner))
468
+ (source-file (assq 'source-file results))
469
+ (source-line (assq 'source-line results))
470
+ (source-form (assq 'source-form results))
471
+ (test-name (assq 'test-name results)))
472
+ (display "Test begin:" log)
473
+ (newline log)
474
+ (if test-name (%test-write-result1 test-name log))
475
+ (if source-file (%test-write-result1 source-file log))
476
+ (if source-line (%test-write-result1 source-line log))
477
+ (if source-form (%test-write-result1 source-form log))))))
478
+
479
+ (define-syntax test-result-ref
480
+ (syntax-rules ()
481
+ ((test-result-ref runner pname)
482
+ (test-result-ref runner pname #f))
483
+ ((test-result-ref runner pname default)
484
+ (let ((p (assq pname (test-result-alist runner))))
485
+ (if p (cdr p) default)))))
486
+
487
+ (define (test-on-test-end-simple runner)
488
+ (let ((log (test-runner-aux-value runner))
489
+ (kind (test-result-ref runner 'result-kind)))
490
+ (if (memq kind '(fail xpass))
491
+ (let* ((results (test-result-alist runner))
492
+ (source-file (assq 'source-file results))
493
+ (source-line (assq 'source-line results))
494
+ (test-name (assq 'test-name results)))
495
+ (if (or source-file source-line)
496
+ (begin
497
+ (if source-file (display (cdr source-file)))
498
+ (display ":")
499
+ (if source-line (display (cdr source-line)))
500
+ (display ": ")))
501
+ (display (if (eq? kind 'xpass) "XPASS" "FAIL"))
502
+ (if test-name
503
+ (begin
504
+ (display " ")
505
+ (display (cdr test-name))))
506
+ (newline)))
507
+ (if (output-port? log)
508
+ (begin
509
+ (display "Test end:" log)
510
+ (newline log)
511
+ (let loop ((list (test-result-alist runner)))
512
+ (if (pair? list)
513
+ (let ((pair (car list)))
514
+ ;; Write out properties not written out by on-test-begin.
515
+ (if (not (memq (car pair)
516
+ '(test-name source-file source-line source-form)))
517
+ (%test-write-result1 pair log))
518
+ (loop (cdr list)))))))))
519
+
520
+ (define (%test-write-result1 pair port)
521
+ (display " " port)
522
+ (display (car pair) port)
523
+ (display ": " port)
524
+ (write (cdr pair) port)
525
+ (newline port))
526
+
527
+ (define (test-result-set! runner pname value)
528
+ (let* ((alist (test-result-alist runner))
529
+ (p (assq pname alist)))
530
+ (if p
531
+ (set-cdr! p value)
532
+ (test-result-alist! runner (cons (cons pname value) alist)))))
533
+
534
+ (define (test-result-clear runner)
535
+ (test-result-alist! runner '()))
536
+
537
+ (define (test-result-remove runner pname)
538
+ (let* ((alist (test-result-alist runner))
539
+ (p (assq pname alist)))
540
+ (if p
541
+ (test-result-alist! runner
542
+ (let loop ((r alist))
543
+ (if (eq? r p) (cdr r)
544
+ (cons (car r) (loop (cdr r)))))))))
545
+
546
+ (define (test-result-kind . rest)
547
+ (let ((runner (if (pair? rest) (car rest) (test-runner-current))))
548
+ (test-result-ref runner 'result-kind)))
549
+
550
+ (define (test-passed? . rest)
551
+ (let ((runner (if (pair? rest) (car rest) (test-runner-get))))
552
+ (memq (test-result-ref runner 'result-kind) '(pass xpass))))
553
+
554
+ (define (%test-report-result)
555
+ (let* ((r (test-runner-get))
556
+ (result-kind (test-result-kind r)))
557
+ (case result-kind
558
+ ((pass)
559
+ (test-runner-pass-count! r (+ 1 (test-runner-pass-count r))))
560
+ ((fail)
561
+ (test-runner-fail-count! r (+ 1 (test-runner-fail-count r))))
562
+ ((xpass)
563
+ (test-runner-xpass-count! r (+ 1 (test-runner-xpass-count r))))
564
+ ((xfail)
565
+ (test-runner-xfail-count! r (+ 1 (test-runner-xfail-count r))))
566
+ (else
567
+ (test-runner-skip-count! r (+ 1 (test-runner-skip-count r)))))
568
+ (%test-runner-total-count! r (+ 1 (%test-runner-total-count r)))
569
+ ((test-runner-on-test-end r) r)))
570
+
571
+ (cond-expand
572
+ (guile
573
+ (define-syntax %test-evaluate-with-catch
574
+ (syntax-rules ()
575
+ ((%test-evaluate-with-catch test-expression)
576
+ (catch #t
577
+ (lambda () test-expression)
578
+ (lambda (key . args)
579
+ (test-result-set! (test-runner-current) 'actual-error
580
+ (cons key args))
581
+ #f))))))
582
+ (kawa
583
+ (define-syntax %test-evaluate-with-catch
584
+ (syntax-rules ()
585
+ ((%test-evaluate-with-catch test-expression)
586
+ (try-catch test-expression
587
+ (ex <java.lang.Throwable>
588
+ (test-result-set! (test-runner-current) 'actual-error ex)
589
+ #f))))))
590
+ (srfi-34
591
+ (define-syntax %test-evaluate-with-catch
592
+ (syntax-rules ()
593
+ ((%test-evaluate-with-catch test-expression)
594
+ (guard (err (else #f)) test-expression)))))
595
+ (chicken
596
+ (define-syntax %test-evaluate-with-catch
597
+ (syntax-rules ()
598
+ ((%test-evaluate-with-catch test-expression)
599
+ (condition-case test-expression (ex () #f))))))
600
+ (else
601
+ (define-syntax %test-evaluate-with-catch
602
+ (syntax-rules ()
603
+ ((%test-evaluate-with-catch test-expression)
604
+ test-expression)))))
605
+
606
+ (cond-expand
607
+ ((or kawa mzscheme)
608
+ (cond-expand
609
+ (mzscheme
610
+ (define-for-syntax (%test-syntax-file form)
611
+ (let ((source (syntax-source form)))
612
+ (cond ((string? source) file)
613
+ ((path? source) (path->string source))
614
+ (else #f)))))
615
+ (kawa
616
+ (define (%test-syntax-file form)
617
+ (syntax-source form))))
618
+ (define (%test-source-line2 form)
619
+ (let* ((line (syntax-line form))
620
+ (file (%test-syntax-file form))
621
+ (line-pair (if line (list (cons 'source-line line)) '())))
622
+ (cons (cons 'source-form (syntax-object->datum form))
623
+ (if file (cons (cons 'source-file file) line-pair) line-pair)))))
624
+ (guile-2
625
+ (define (%test-source-line2 form)
626
+ (let* ((src-props (syntax-source form))
627
+ (file (and src-props (assq-ref src-props 'filename)))
628
+ (line (and src-props (assq-ref src-props 'line)))
629
+ (file-alist (if file
630
+ `((source-file . ,file))
631
+ '()))
632
+ (line-alist (if line
633
+ `((source-line . ,(+ line 1)))
634
+ '())))
635
+ (datum->syntax (syntax here)
636
+ `((source-form . ,(syntax->datum form))
637
+ ,@file-alist
638
+ ,@line-alist)))))
639
+ (else
640
+ (define (%test-source-line2 form)
641
+ '())))
642
+
643
+ (define (%test-on-test-begin r)
644
+ (%test-should-execute r)
645
+ ((test-runner-on-test-begin r) r)
646
+ (not (eq? 'skip (test-result-ref r 'result-kind))))
647
+
648
+ (define (%test-on-test-end r result)
649
+ (test-result-set! r 'result-kind
650
+ (if (eq? (test-result-ref r 'result-kind) 'xfail)
651
+ (if result 'xpass 'xfail)
652
+ (if result 'pass 'fail))))
653
+
654
+ (define (test-runner-test-name runner)
655
+ (test-result-ref runner 'test-name ""))
656
+
657
+ (define-syntax %test-comp2body
658
+ (syntax-rules ()
659
+ ((%test-comp2body r comp expected expr)
660
+ (let ()
661
+ (if (%test-on-test-begin r)
662
+ (let ((exp expected))
663
+ (test-result-set! r 'expected-value exp)
664
+ (let ((res (%test-evaluate-with-catch expr)))
665
+ (test-result-set! r 'actual-value res)
666
+ (%test-on-test-end r (comp exp res)))))
667
+ (%test-report-result)))))
668
+
669
+ (define (%test-approximate= error)
670
+ (lambda (value expected)
671
+ (let ((rval (real-part value))
672
+ (ival (imag-part value))
673
+ (rexp (real-part expected))
674
+ (iexp (imag-part expected)))
675
+ (and (>= rval (- rexp error))
676
+ (>= ival (- iexp error))
677
+ (<= rval (+ rexp error))
678
+ (<= ival (+ iexp error))))))
679
+
680
+ (define-syntax %test-comp1body
681
+ (syntax-rules ()
682
+ ((%test-comp1body r expr)
683
+ (let ()
684
+ (if (%test-on-test-begin r)
685
+ (let ()
686
+ (let ((res (%test-evaluate-with-catch expr)))
687
+ (test-result-set! r 'actual-value res)
688
+ (%test-on-test-end r res))))
689
+ (%test-report-result)))))
690
+
691
+ (cond-expand
692
+ ((or kawa mzscheme guile-2)
693
+ ;; Should be made to work for any Scheme with syntax-case
694
+ ;; However, I haven't gotten the quoting working. FIXME.
695
+ (define-syntax test-end
696
+ (lambda (x)
697
+ (syntax-case (list x (list (syntax quote) (%test-source-line2 x))) ()
698
+ (((mac suite-name) line)
699
+ (syntax
700
+ (%test-end suite-name line)))
701
+ (((mac) line)
702
+ (syntax
703
+ (%test-end #f line))))))
704
+ (define-syntax test-assert
705
+ (lambda (x)
706
+ (syntax-case (list x (list (syntax quote) (%test-source-line2 x))) ()
707
+ (((mac tname expr) line)
708
+ (syntax
709
+ (let* ((r (test-runner-get))
710
+ (name tname))
711
+ (test-result-alist! r (cons (cons 'test-name tname) line))
712
+ (%test-comp1body r expr))))
713
+ (((mac expr) line)
714
+ (syntax
715
+ (let* ((r (test-runner-get)))
716
+ (test-result-alist! r line)
717
+ (%test-comp1body r expr)))))))
718
+ (define (%test-comp2 comp x)
719
+ (syntax-case (list x (list (syntax quote) (%test-source-line2 x)) comp) ()
720
+ (((mac tname expected expr) line comp)
721
+ (syntax
722
+ (let* ((r (test-runner-get))
723
+ (name tname))
724
+ (test-result-alist! r (cons (cons 'test-name tname) line))
725
+ (%test-comp2body r comp expected expr))))
726
+ (((mac expected expr) line comp)
727
+ (syntax
728
+ (let* ((r (test-runner-get)))
729
+ (test-result-alist! r line)
730
+ (%test-comp2body r comp expected expr))))))
731
+ (define-syntax test-eqv
732
+ (lambda (x) (%test-comp2 (syntax eqv?) x)))
733
+ (define-syntax test-eq
734
+ (lambda (x) (%test-comp2 (syntax eq?) x)))
735
+ (define-syntax test-equal
736
+ (lambda (x) (%test-comp2 (syntax equal?) x)))
737
+ (define-syntax test-approximate ;; FIXME - needed for non-Kawa
738
+ (lambda (x)
739
+ (syntax-case (list x (list (syntax quote) (%test-source-line2 x))) ()
740
+ (((mac tname expected expr error) line)
741
+ (syntax
742
+ (let* ((r (test-runner-get))
743
+ (name tname))
744
+ (test-result-alist! r (cons (cons 'test-name tname) line))
745
+ (%test-comp2body r (%test-approximate= error) expected expr))))
746
+ (((mac expected expr error) line)
747
+ (syntax
748
+ (let* ((r (test-runner-get)))
749
+ (test-result-alist! r line)
750
+ (%test-comp2body r (%test-approximate= error) expected expr))))))))
751
+ (else
752
+ (define-syntax test-end
753
+ (syntax-rules ()
754
+ ((test-end)
755
+ (%test-end #f '()))
756
+ ((test-end suite-name)
757
+ (%test-end suite-name '()))))
758
+ (define-syntax test-assert
759
+ (syntax-rules ()
760
+ ((test-assert tname test-expression)
761
+ (let* ((r (test-runner-get))
762
+ (name tname))
763
+ (test-result-alist! r '((test-name . tname)))
764
+ (%test-comp1body r test-expression)))
765
+ ((test-assert test-expression)
766
+ (let* ((r (test-runner-get)))
767
+ (test-result-alist! r '())
768
+ (%test-comp1body r test-expression)))))
769
+ (define-syntax %test-comp2
770
+ (syntax-rules ()
771
+ ((%test-comp2 comp tname expected expr)
772
+ (let* ((r (test-runner-get))
773
+ (name tname))
774
+ (test-result-alist! r (list (cons 'test-name tname)))
775
+ (%test-comp2body r comp expected expr)))
776
+ ((%test-comp2 comp expected expr)
777
+ (let* ((r (test-runner-get)))
778
+ (test-result-alist! r '())
779
+ (%test-comp2body r comp expected expr)))))
780
+ (define-syntax test-equal
781
+ (syntax-rules ()
782
+ ((test-equal . rest)
783
+ (%test-comp2 equal? . rest))))
784
+ (define-syntax test-eqv
785
+ (syntax-rules ()
786
+ ((test-eqv . rest)
787
+ (%test-comp2 eqv? . rest))))
788
+ (define-syntax test-eq
789
+ (syntax-rules ()
790
+ ((test-eq . rest)
791
+ (%test-comp2 eq? . rest))))
792
+ (define-syntax test-approximate
793
+ (syntax-rules ()
794
+ ((test-approximate tname expected expr error)
795
+ (%test-comp2 (%test-approximate= error) tname expected expr))
796
+ ((test-approximate expected expr error)
797
+ (%test-comp2 (%test-approximate= error) expected expr))))))
798
+
799
+ (cond-expand
800
+ (guile
801
+ (define-syntax %test-error
802
+ (syntax-rules ()
803
+ ((%test-error r etype expr)
804
+ (cond ((%test-on-test-begin r)
805
+ (let ((et etype))
806
+ (test-result-set! r 'expected-error et)
807
+ (%test-on-test-end r
808
+ (catch #t
809
+ (lambda ()
810
+ (test-result-set! r 'actual-value expr)
811
+ #f)
812
+ (lambda (key . args)
813
+ ;; TODO: decide how to specify expected
814
+ ;; error types for Guile.
815
+ (test-result-set! r 'actual-error
816
+ (cons key args))
817
+ #t)))
818
+ (%test-report-result))))))))
819
+ (mzscheme
820
+ (define-syntax %test-error
821
+ (syntax-rules ()
822
+ ((%test-error r etype expr)
823
+ (%test-comp1body r (with-handlers (((lambda (h) #t) (lambda (h) #t)))
824
+ (let ()
825
+ (test-result-set! r 'actual-value expr)
826
+ #f)))))))
827
+ (chicken
828
+ (define-syntax %test-error
829
+ (syntax-rules ()
830
+ ((%test-error r etype expr)
831
+ (%test-comp1body r (condition-case expr (ex () #t)))))))
832
+ (kawa
833
+ (define-syntax %test-error
834
+ (syntax-rules ()
835
+ ((%test-error r #t expr)
836
+ (cond ((%test-on-test-begin r)
837
+ (test-result-set! r 'expected-error #t)
838
+ (%test-on-test-end r
839
+ (try-catch
840
+ (let ()
841
+ (test-result-set! r 'actual-value expr)
842
+ #f)
843
+ (ex <java.lang.Throwable>
844
+ (test-result-set! r 'actual-error ex)
845
+ #t)))
846
+ (%test-report-result))))
847
+ ((%test-error r etype expr)
848
+ (if (%test-on-test-begin r)
849
+ (let ((et etype))
850
+ (test-result-set! r 'expected-error et)
851
+ (%test-on-test-end r
852
+ (try-catch
853
+ (let ()
854
+ (test-result-set! r 'actual-value expr)
855
+ #f)
856
+ (ex <java.lang.Throwable>
857
+ (test-result-set! r 'actual-error ex)
858
+ (cond ((and (instance? et <gnu.bytecode.ClassType>)
859
+ (gnu.bytecode.ClassType:isSubclass et <java.lang.Throwable>))
860
+ (instance? ex et))
861
+ (else #t)))))
862
+ (%test-report-result)))))))
863
+ ((and srfi-34 srfi-35)
864
+ (define-syntax %test-error
865
+ (syntax-rules ()
866
+ ((%test-error r etype expr)
867
+ (%test-comp1body r (guard (ex ((condition-type? etype)
868
+ (and (condition? ex) (condition-has-type? ex etype)))
869
+ ((procedure? etype)
870
+ (etype ex))
871
+ ((equal? etype #t)
872
+ #t)
873
+ (else #t))
874
+ expr #f))))))
875
+ (srfi-34
876
+ (define-syntax %test-error
877
+ (syntax-rules ()
878
+ ((%test-error r etype expr)
879
+ (%test-comp1body r (guard (ex (else #t)) expr #f))))))
880
+ (else
881
+ (define-syntax %test-error
882
+ (syntax-rules ()
883
+ ((%test-error r etype expr)
884
+ (begin
885
+ ((test-runner-on-test-begin r) r)
886
+ (test-result-set! r 'result-kind 'skip)
887
+ (%test-report-result)))))))
888
+
889
+ (cond-expand
890
+ ((or kawa mzscheme guile-2)
891
+
892
+ (define-syntax test-error
893
+ (lambda (x)
894
+ (syntax-case (list x (list (syntax quote) (%test-source-line2 x))) ()
895
+ (((mac tname etype expr) line)
896
+ (syntax
897
+ (let* ((r (test-runner-get))
898
+ (name tname))
899
+ (test-result-alist! r (cons (cons 'test-name tname) line))
900
+ (%test-error r etype expr))))
901
+ (((mac etype expr) line)
902
+ (syntax
903
+ (let* ((r (test-runner-get)))
904
+ (test-result-alist! r line)
905
+ (%test-error r etype expr))))
906
+ (((mac expr) line)
907
+ (syntax
908
+ (let* ((r (test-runner-get)))
909
+ (test-result-alist! r line)
910
+ (%test-error r #t expr))))))))
911
+ (else
912
+ (define-syntax test-error
913
+ (syntax-rules ()
914
+ ((test-error name etype expr)
915
+ (let ((r (test-runner-get)))
916
+ (test-result-alist! r `((test-name . ,name)))
917
+ (%test-error r etype expr)))
918
+ ((test-error etype expr)
919
+ (let ((r (test-runner-get)))
920
+ (test-result-alist! r '())
921
+ (%test-error r etype expr)))
922
+ ((test-error expr)
923
+ (let ((r (test-runner-get)))
924
+ (test-result-alist! r '())
925
+ (%test-error r #t expr)))))))
926
+
927
+ (define (test-apply first . rest)
928
+ (if (test-runner? first)
929
+ (test-with-runner first (apply test-apply rest))
930
+ (let ((r (test-runner-current)))
931
+ (if r
932
+ (let ((run-list (%test-runner-run-list r)))
933
+ (cond ((null? rest)
934
+ (%test-runner-run-list! r (reverse run-list))
935
+ (first)) ;; actually apply procedure thunk
936
+ (else
937
+ (%test-runner-run-list!
938
+ r
939
+ (if (eq? run-list #t) (list first) (cons first run-list)))
940
+ (apply test-apply rest)
941
+ (%test-runner-run-list! r run-list))))
942
+ (let ((r (test-runner-create)))
943
+ (test-with-runner r (apply test-apply first rest))
944
+ ((test-runner-on-final r) r))))))
945
+
946
+ (define-syntax test-with-runner
947
+ (syntax-rules ()
948
+ ((test-with-runner runner form ...)
949
+ (let ((saved-runner (test-runner-current)))
950
+ (dynamic-wind
951
+ (lambda () (test-runner-current runner))
952
+ (lambda () form ...)
953
+ (lambda () (test-runner-current saved-runner)))))))
954
+
955
+ ;;; Predicates
956
+
957
+ (define (%test-match-nth n count)
958
+ (let ((i 0))
959
+ (lambda (runner)
960
+ (set! i (+ i 1))
961
+ (and (>= i n) (< i (+ n count))))))
962
+
963
+ (define-syntax test-match-nth
964
+ (syntax-rules ()
965
+ ((test-match-nth n)
966
+ (test-match-nth n 1))
967
+ ((test-match-nth n count)
968
+ (%test-match-nth n count))))
969
+
970
+ (define (%test-match-all . pred-list)
971
+ (lambda (runner)
972
+ (let ((result #t))
973
+ (let loop ((l pred-list))
974
+ (if (null? l)
975
+ result
976
+ (begin
977
+ (if (not ((car l) runner))
978
+ (set! result #f))
979
+ (loop (cdr l))))))))
980
+
981
+ (define-syntax test-match-all
982
+ (syntax-rules ()
983
+ ((test-match-all pred ...)
984
+ (%test-match-all (%test-as-specifier pred) ...))))
985
+
986
+ (define (%test-match-any . pred-list)
987
+ (lambda (runner)
988
+ (let ((result #f))
989
+ (let loop ((l pred-list))
990
+ (if (null? l)
991
+ result
992
+ (begin
993
+ (if ((car l) runner)
994
+ (set! result #t))
995
+ (loop (cdr l))))))))
996
+
997
+ (define-syntax test-match-any
998
+ (syntax-rules ()
999
+ ((test-match-any pred ...)
1000
+ (%test-match-any (%test-as-specifier pred) ...))))
1001
+
1002
+ ;; Coerce to a predicate function:
1003
+ (define (%test-as-specifier specifier)
1004
+ (cond ((procedure? specifier) specifier)
1005
+ ((integer? specifier) (test-match-nth 1 specifier))
1006
+ ((string? specifier) (test-match-name specifier))
1007
+ (else
1008
+ (error "not a valid test specifier"))))
1009
+
1010
+ (define-syntax test-skip
1011
+ (syntax-rules ()
1012
+ ((test-skip pred ...)
1013
+ (let ((runner (test-runner-get)))
1014
+ (%test-runner-skip-list! runner
1015
+ (cons (test-match-all (%test-as-specifier pred) ...)
1016
+ (%test-runner-skip-list runner)))))))
1017
+
1018
+ (define-syntax test-expect-fail
1019
+ (syntax-rules ()
1020
+ ((test-expect-fail pred ...)
1021
+ (let ((runner (test-runner-get)))
1022
+ (%test-runner-fail-list! runner
1023
+ (cons (test-match-all (%test-as-specifier pred) ...)
1024
+ (%test-runner-fail-list runner)))))))
1025
+
1026
+ (define (test-match-name name)
1027
+ (lambda (runner)
1028
+ (equal? name (test-runner-test-name runner))))
1029
+
1030
+ (define (test-read-eval-string string)
1031
+ (let* ((port (open-input-string string))
1032
+ (form (read port)))
1033
+ (if (eof-object? (read-char port))
1034
+ (cond-expand
1035
+ (guile (eval form (current-module)))
1036
+ (else (eval form)))
1037
+ (cond-expand
1038
+ (srfi-23 (error "(not at eof)"))
1039
+ (else "error")))))
1040
+