Estoy interesado en la música de computadora, donde hay enfoques para tratar piezas musicales como oraciones en gramáticas generativas o sistemas L. En lugar de componer, uno podría especificar una gramática y dejar que la computadora genere la música. Por ejemplo, el grupo de Yale alrededor del fallecido Paul Hudak es muy fuerte en eso.
Me ha llamado la atención que utilizamos representaciones aparentemente unidimensionales de información para representar las cosas de dimensiones superiores, como el crecimiento de las plantas con sistemas-L . La música, para mí, parece tener al menos dos dimensiones: la dimensión del tiempo obvio y la dimensión del "instrumento", es decir, la capacidad de tener varios sonidos diferentes al mismo tiempo. Y, de hecho, la notación musical tiene exactamente estas dos dimensiones.
Hay lenguajes de programación bidimensionales como Befunge , que no me parecieron muy útiles (todavía), pero no pude encontrar nada sobre las gramáticas generativas, donde las oraciones son bidimensionales.
Con una oración bidimensional quiero decir que los caracteres se extienden en una cuadrícula bidimensional, por ejemplo, así:
ab cde
aabce
dca b
Las reglas de producción también podrían tener oraciones bidimensionales a ambos lados de la regla:
a -> bc
e
b -> cd
e ab
¿Se ha estudiado algo como esto antes?
Por ejemplo, en música de computadora, esto podría ser bastante útil. Piezas como el Boléro de Ravel podrían generarse mediante una regla de producción bidimensional como esta:
t -> tt
t
Esto debe leerse como "Si en una pieza, el tema 1 t
lo toca el instrumento 1 en algún momento, entonces podemos producir una nueva pieza en la que el t
instrumento 1 lo toque al mismo tiempo, e inmediatamente después por el instrumento 1 y 2. "