Sintesi del linguaggio di programmazione generale (Python) con linguaggio su misura (PureData / MaxMSP / ChucK) [chiuso]

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

  •  06-07-2019
  •  | 
  •  

Domanda

Sto imparando Python perché mi piace come matematico ma ha anche molte librerie utili per l'elaborazione scientifica, l'elaborazione delle immagini, le app web, ecc.

È frustrante per me che per alcuni dei miei interessi (musica elettronica o installazioni) ci siano linguaggi di programmazione molto specifici che sembrano più adatti a questi scopi, come Max / MSP, PureData e ChucK - tutti piuttosto affascinanti .

La mia domanda è: come si dovrebbero avvicinarsi a queste diverse lingue? Dovrei semplicemente imparare Python e gestire gli altri usando plugin e interpreti Python in essi? Esistono buoni strumenti per integrare le lingue o è il modo giusto semplicemente di impararle tutte?

È stato utile?

Soluzione

Direi di impararli tutti. Mentre è vero che molte lingue possono fare molte cose, le lingue specializzate sono in genere più espressive e più facili da usare per un determinato compito. Case-in-point è mentre la maggior parte delle lingue consente l'interazione della shell e il controllo del processo, pochissimi sono adatti allo scopo come gli script bash.

Plugin e librerie possono colmare il divario tra linguaggi generali e specializzati, ma nella mia esperienza questo non è sempre privo di inconvenienti, siano essi velocità, stabilità o complessità. Non è raro dover compilare librerie aggiuntive o applicare patch o utilizzare moduli non attendibili e scarsamente supportati. Inoltre, non è raro che l'interfaccia risultante sia ancora più difficile da usare rispetto alla lingua originale.

Conosco bene 15 lingue e alcune di queste molto bene. Non utilizzo le mie lingue preferite quando un'altra è più adatta.

Altri suggerimenti

Questo thread è un po 'vecchio, ma volevo sottolineare che la maggior parte degli ambienti di sviluppo audio maturi, ad es. i dati supercollider / max-msp / pure possono essere controllati tramite il controllo audio aperto. Puoi cercare su Google una descrizione migliore dell'OSC, ma basti dire che ti consente di inviare dati di controllo ai sintetizzatori costruiti in questi ambienti in modo simile a come funziona il MIDI, ma in modo molto più ampio. Questo non risolve il problema di creare effettivamente synth in Python di per sé, ma ti permette di "guidare". questi altri ambienti senza dover conoscere i dettagli della lingua.

È perfettamente possibile costruire buone interfacce da Python a linguaggi così specializzati: un esempio in proposito è RPy , che ti consente di guidare R (per le statistiche) da Python (per tutti i tipi di cose generiche).

Naturalmente, si deve essere competenti in entrambe le lingue - e purtroppo tali ponti non esisteranno già per ogni data coppia di una lingua di uso generale e una specializzata. " Imparandoli tutti " ;, se vuoi usarli , rimane la strada reale!

Python sarebbe un'ottima lingua da imparare, poiché funziona bene con molte altre lingue. Crea un ottimo linguaggio di uso generale e una "colla". linguaggio. Trascorri del tempo imparando le lingue che ti interessano e mantieni la conoscenza di Python in giro per la sua flessibilità e potenza. Non credo che consiglierei di provare a impararli tutti a meno che tu non abbia davvero il tempo.

Potresti essere interessato a sapere che PureData ha una estensione python .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top