]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/es/extending/scheme-tutorial.itely
Web-es: update Scheme tutotial.
[lilypond.git] / Documentation / es / extending / scheme-tutorial.itely
index ba196bca6159ae26a7cb330e3e3b6cc4bdd69b3d..5905f3e8d9364ee66c18630f4c586971f9ac036b 100644 (file)
@@ -1,7 +1,7 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
 
 @ignore
-    Translation of GIT committish: bfd8ed4084a441d9ac65b1b088f3b54f31ae40c6
+    Translation of GIT committish: 3025442087de8dd3f88736290887ced86e360c25
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
@@ -75,10 +75,10 @@ terminal y tecleando @q{guile}.  En algunos sistemas, sobre todo
 en Windows, podría necesitar ajustar la variable de entorno
 @code{GUILE_LOAD_PATH} a la carpeta @code{../usr/share/guile/1.8}
 dentro de la instalación de LilyPond (para conocer la ruta
-completa a esta carpeta, consulte
-@rlearning{Otras fuentes de información}).  Como alternativa, los
-usuarios de Windows pueden seleccionar simplemente @q{Ejecutar}
-del menú Inicio e introducir @q{guile}.
+completa a esta carpeta, consulte @rlearning{Otras fuentes de
+información}).  Como alternativa, los usuarios de Windows pueden
+seleccionar simplemente @q{Ejecutar} del menú Inicio e introducir
+@q{guile}.
 
 Sin embargo, está disponible un cajón de arena de Scheme listo
 para funcionar con todo LilyPond cargado, con esta instrucción de
@@ -88,8 +88,8 @@ lilypond scheme-sandbox
 @end example
 
 @noindent
-Una vez está funcionando el cajón de arena, verá un indicador
-del sistema de Guile:
+Una vez está funcionando el cajón de arena, verá un indicador del
+sistema de Guile:
 
 @lisp
 guile>
@@ -314,14 +314,20 @@ guile> (list 1 2 3 "abc" 17.5)
 (1 2 3 "abc" 17.5)
 @end lisp
 
-Como se ve, una lista se imprime en la forma de elementos
-individuales separados por espacios y encerradas entre paréntesis.
-A diferencia de las parejas, no hay ningún punto entre los
-elementos.
+La representación de una lista como elementos individuales
+separados por espacios y encerrada entre paréntesis es realmente
+una forma compacta de las parejas con punto que constituyen la
+lista, donde el punto e inmediatamente un paréntesis de apertura
+se suprimen junto al paréntesis de cierre correspondiente.  Sin
+esta compactación, la salida habría sido
+@lisp
+(1 . (2 . (3 . ("abc" . (17.5 . ())))))
+@end lisp
 
-También se puede escribir una lista como una lista literal
-encerrando sus elementos entre paréntesis y añadiendo un
-apóstrofo:
+De igual forma que con la salida, una lista puede escribirse
+(después de haber añadido un apóstrofo para evitar su
+interpretación como una llamada de función) como una lista literal
+encerrando sus elementos entre paréntesis:
 
 @lisp
 guile> '(17 23 "fulano" "mengano" "zutano")
@@ -851,20 +857,30 @@ veintiCuatro = (* 2 doce)
 @end example
 
 @noindent
-lo que daría lugar a que el número 24 se almacenase dentro de la
-variable @code{veintiCuatro} de LilyPond (y de Scheme).
-
-La forma usual de referirse a las variables de LilyPond, es
-llamarlas usando una barra invertida, es decir
-@code{\veintiCuatro} (véase
-@ref{Sintaxis del Scheme de LilyPond}).  Dado que esto crea una
-copia para la mayor parte de los tipos internos de LilyPond,
-concretamente las expresiones musicales, las funciones musicales
-no sueln crear copias del material que ellas mismas modifican.
-Por este motivo, las expresiones musicales dadas con @code{#} no
-deberían, por lo general, contener material que no se haya creado
-partiendo de cero o copiado explícitamente en lugar de estar
-referenciado directamente.
+lo que daría lugar a que el número @emph{24} se almacenase dentro
+de la variable @code{veintiCuatro} de LilyPond (y de Scheme).
+
+El lenguaje Scheme permite la modificación de expresiones
+complejas in situ y LilyPond hace uso de esta @q{modificación in
+situ} al usar funciones musicales.  Pero cuando las expresiones
+musicales se almacenan dentro de variables en lugar de ser
+introducidas directamente, lo que habitualmente se espera cuando
+se pasan a funciones musicales sería que el valor original quedase
+intacto.  Así pues, cuando se referencia una variable musical con
+la barra invertida (como @code{\veintiCuatro}), LilyPond crea una
+copia del valor musical de tal variable para utilizarla dentro de
+la expresión musical circundante, en lugar de usar el valor de la
+variable directamente.
+
+Por ello, las expresiones musicales de Scheme escritas con la
+sintasis de almohadilla @code{#} deberían utilizarse para
+cualquier material creado @q{partiendo de cero} (o que se ha
+copiado explícitamente) en lugar de utilizarse para referenciar
+música directamente.
+
+@seealso
+Manual de extensión:
+@ref{Sintaxis del Scheme de LilyPond}.
 
 @node Variables de entrada y Scheme
 @subsection Variables de entrada y Scheme
@@ -1663,7 +1679,7 @@ propiedad @code{articulations}, podemos devolver
 
 Ahora transformamos la función @code{add-accent} en una función
 musical (es cuestión de un poco de aderezo sintáctico y una
-declaración del tipo de su único argumento @q{real}).
+declaración del tipo de su argumento).
 
 @example
 addAccent = #(define-music-function (note-event)
@@ -1677,7 +1693,8 @@ addAccent = #(define-music-function (note-event)
   note-event)
 @end example
 
-Podemos verificar que esta función musical funciona correctamente:
+A continuación verificamos que esta función musical funciona
+correctamente:
 
 @example
 \displayMusic \addAccent c4