Music from python abstract syntax trees
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
darkflash ff82ca5976 readme 2 years ago
kostacivos initial commit 2 years ago
parser initial commit 2 years ago
presentazione presentazione usata a Connessioni Caotiche 2 years ago
.gitignore Initial commit 2 years ago
Armonia.py initial commit 2 years ago
LICENSE Initial commit 2 years ago
Prova_main.py initial commit 2 years ago
README.md readme 2 years ago
note.csv initial commit 2 years ago
test.py initial commit 2 years ago
visit_superpotente.py initial commit 2 years ago

README.md

Analisi dinamica del codice

  • Isomorfismi sinestetici Partendo dalla domanda “come si identifica un suono?” si identificano quattro componenti. Ci si pone l’obiettivo di scegliere come queste componenti possano essere rappresentate dal codice. Una breve proposta di seguito/

+--------------------------------+ | SUONI CODICE | | | | timbro tipo di dato | | altezza valore | | velocita` ??? costante??? | | durata elementi contenuti | | | | chiave classe | | tempo metodo/funzione | | pausa ??? | +--------------------------------+

Problemi da risolvere:

  • altezza: range troppo alti. In python ad esempio il valore int massimo e 9223372036854775807. Quindi non ha senso associare una nota ad ogni possibile valore. Una soluzione puo essere quella di analizzare nel codice valori massimi e minimi che ogni variabile puo assumere con un dato input e creare un range usando quelle come estremi. Con i float il discorso si complica leggermente, ma per risolverlo e possibile stabilire quali siano
  • maggior valore
  • minor valore
  • minimo scarto tra valori e aggiustare la scala di conseguenza. Con questo metodo si ottiene qualcosa di udibile sempre ma e` possibile ottenere spesso qualcosa di non fedele (ad esempio, una variabile intera che assume i valori 9223372036854775807 e 9223372036854775007 che rumore fa rispetto ad una che assume i valori 2 e 30?).

Durata: elementi contenuti Dipende. Riempire un array di 100000 elementi a suonare impiega lo stesso tempo di riempirne uno di 2? NO! Ma uno da 100000 deve risultare secondo me ben piu acelerato di uno da due (direi massimo 10 volte di piu). Per calcolare l’acelerazione si fa tipo log2(n). Onesto.