Síntesis del lenguaje de programación general (Python) con lenguaje personalizado (PureData / MaxMSP / ChucK) [cerrado]

StackOverflow https://stackoverflow.com/questions/1016301

  •  06-07-2019
  •  | 
  •  

Pregunta

Estoy aprendiendo Python porque me atrae como matemático pero también tiene muchas bibliotecas útiles para computación científica, procesamiento de imágenes, aplicaciones web, etc., etc.

Es frustrante para mí que para algunos de mis intereses (música electrónica o arte de instalación) hay lenguajes de programación muy específicos que parecen más adecuados para estos fines, como Max / MSP, PureData y ChucK, todo bastante fascinante. .

Mi pregunta es, ¿cómo se deben abordar estos diferentes idiomas? ¿Debería simplemente aprender Python y administrar los demás mediante el uso de complementos e intérpretes de Python en ellos? ¿Existen buenas herramientas para integrar los idiomas, o es la forma correcta simplemente de aprenderlos todos?

¿Fue útil?

Solución

Yo diría que los aprendas todos. Si bien es cierto que muchos idiomas pueden hacer muchas cosas, los idiomas especializados suelen ser más expresivos y más fáciles de usar para una tarea en particular. Case-in-point es mientras que la mayoría de los lenguajes permiten la interacción de shell y el control de procesos, muy pocos son tan adecuados para la tarea como los scripts de bash.

Los complementos y las bibliotecas pueden cerrar la brecha entre los lenguajes generales y especializados, pero en mi experiencia esto no siempre tiene inconvenientes, ya sean velocidad, estabilidad o complejidad. No es raro tener que compilar bibliotecas adicionales o aplicar parches o usar módulos no confiables y mal soportados. Tampoco es raro que la interfaz resultante sea aún más difícil de usar que el idioma original.

Conozco bien 15 idiomas y algunos muy bien. No uso mis idiomas preferidos cuando otro es más adecuado.

Otros consejos

Este hilo es un poco viejo, pero quería señalar que la mayoría de los entornos maduros de desarrollo de audio, p. Los datos supercollider / max-msp / pure pueden controlarse mediante un control de sonido abierto. Puede buscar en Google una mejor descripción de OSC, pero basta con decir que le permite enviar datos de control a sintetizadores creados en estos entornos de forma similar a cómo funciona MIDI, pero mucho más extenso. Esto no resuelve el problema de construir realmente sintetizadores en Python per se pero le permite "conducir". estos otros entornos sin tener que conocer los entresijos del lenguaje.

Es perfectamente posible construir buenas interfaces desde Python a tales lenguajes especializados: un ejemplo en este punto es RPy , que le permite manejar R (para estadísticas) desde Python (para todo tipo de cosas de uso general).

Por supuesto, uno tiene que ser competente en ambos idiomas, y tales puentes, desafortunadamente, ya no existirán para cada par de un idioma de propósito general y uno especializado. " Aprendiendo todos ellos " ;, si quieres usar todos ellos, ¡sigue siendo el camino real!

Python sería un gran idioma para aprender, ya que funciona bien con muchos otros idiomas. Es un excelente lenguaje de propósito general, así como un "pegamento". idioma. Dedique tiempo a aprender los idiomas que le interesan y mantenga el conocimiento de Python para su flexibilidad y potencia. No creo que recomendaría tratar de aprenderlos a todos a menos que realmente tenga tiempo.

Puede interesarle saber que PureData tiene una extensión de python .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top