Giannicola Spezzigu 0000197799. Accordo: sovrapposizione di 3 o più suoni Ogni sigla denota un accordo, ossia i suoni da cui esso è formato Accordi e.

Slides:



Advertisements
Presentazioni simili
I linguaggi di programmazione
Advertisements

Linguaggi di Programmazione e compilatori
Semantica di linguaggi di programmazione Ne esistono differenti stili a seconda di paradigma di programmazione uso (validazione, prototyping, verifica.
Re-engineering del wrapper XML Schema per il sistema MOMIS
1 Linguaggi di Programmazione - elementi Corso di Laurea in Informatica (AA 2005/2006) Gabriella Pasi e Carla Simone
Fondamenti di Informatica
Conservatorio “D. Cimarosa” di Avellino INFORMATICA MUSICALE
Unità Didattica 2 I Linguaggi di Programmazione
Fondamenti di Informatica1 Software di base Tra il linguaggio macchina (basso livello) e i linguaggi evoluti (alto livello) esiste uno strato di software.
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Scienze dellInformazione Applicazione.
INSIEMI NUMERABILI L’analisi matematica introduce il concetto di insieme numerabile come insieme i cui elementi possono essere “contati” ossia che possiede.
LINGUAGGI DI PROGRAMMAZIONE
AN FI Concetti. Linguaggi di alto livello u Hanno capacita' espressive superiori a quelle del linguaggio macchina u Suggeriscono concetti e modi.
FUNZIONI... Una funzione permette di dare un nome a una espressione rendendola parametrica float f(){ return * sin(0.75); } float f1(int x) { return.
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
Corso di Antropologia della Musica A. A
Progetto per lesame di Linguaggi e Modelli Computazionali LS Chiara Chiara Gualtieri.
ANTLR V.3 Renzi Alberto.
Progetto desame di Gianluca Gallo Linguaggi e modelli computazionali LM Prof. Enrico Denti.
Linguaggi e Modelli Computazionali LS - Prof E.Denti
CineMan Linguaggio per la descrizione della programmazione di cinema
Facoltà di Ingegneria – Università di Bologna
Corso di Laurea Specialistica in Ingegneria Informatica Itinerari aerei Progetto per lesame di Linguaggi e Modelli Computazionali LS realizzato da Stefano.
S ::= Formazione Formazione ::= NomeSquadra Team NomeSquadra ::= Team ::= Schema Tabellino | Tabellino Schema ::= Difesa Tabellino ::= ElencoTitolari.
Linguaggio per la generazione di biglietti da visita
Gianfranco Zampolini Progetto per il corso di: Linguaggi e Modelli Computazionali LS EM Linguaggio per la Descrizione di un Evento Musicale.
Corso di Laurea Specialistica in Ingegneria Informatica Model Drive Applicazione per il pilotaggio di veicoli Esame di Linguaggi e Modelli computazionali.
La scala musicale 1.
Linguaggi e modelli computazionali LS
Progetto di un linguaggio e interprete per giocare a MemoryPlus Progetto di:Docente: Vito La PortaEnrico Denti.
Presentazione del problema Obiettivo: Lapplicazione di Search of Sematic Services permette di ricercare sevizi semantici, ossia servizi a cui sono associati.
runhome Progetto di Linguaggi e Modelli Computazionali LS Luca Bueti
Corso di Laurea Specialistica in Ingegneria Informatica Previsione dei Consumi Elettrici = Progetto per lesame di Linguaggi e Modelli Computazionali LS.
Un linguaggio ed un interprete per il gioco Citadels
Progetto don’t you forget
Progetto Fireworks Simulatore di spettacoli pirotecnici
Tablabla Progetto di Valent Cristina
SQL File Manager un nuovo modo di gestire il filesystem….
Università degli Studi di Bologna Facoltà di Ingegneria Anno Accademico 2007/2008 Laurea Specialistica in Ingegneria Informatica Linguaggi e Modelli Computazionali.
Chess Game Visualizer Un interprete per Short Algebraic Notation Progetto per lesame di Linguaggi e modelli computazionali LS prof. Denti – A.A. 2007/08.
Corpo Musicale di Brenno Useria
Linguaggi e modelli computazionali LS Manni Tiziano
Programmazione Strutturata
ATTIVITÀ PROGETTUALE LINGUAGGI E MODELLI COMPUTAZIONALI L-M Un linguaggio per la descrizione di coreografie giocabili STUDENTE: BACCHILEGA SIMONE A.A 2013/2014.
Il linguaggio musicale
Un Sistema per la Redazione Assistita di Testi Giuridici Tesi di Laurea Specialistica in Informatica di Emiliano Giovannetti Un Sistema per la Redazione.
MUSICA PITAGORICA.
DRAUGHTS Linguaggi e Modelli Computazionali LS Linguaggio e interprete per effettuare una partita di dama inglese contro un’intelligenza artificiale Progetto.
Trading EToro Un linguaggio per descrivere e gestire operazioni di borsa Progetto di Linguaggi e Modelli Computazionali LS Prof. Enrico Denti Mancini Laura.
Calendar Generator Progetto Linguaggi e Modelli Computazionali LS Docente: Enrico Dentidi: Alberto Renzi.
Progetto di Linguaggi e modelli computazionali M Prof. Enrico Denti Progetto di: Francesco Paci.
DerIntCalculator La calcolatrice per integrali e derivate Progetto di Linguaggi e Modelli Computazionali M Prof. Enrico Denti Realizzato da: Gabriella.
Linguaggi e Modelli Computazionali LS Anno Accademico 2007/2008 Alessio Della Motta Un linguaggio per descrivere partite di Maraffone: il gioco più popolare.
Programmazione Attività di progettazione ed implementazione di programmi I programmi permettono di realizzare funzioni complesse su un hardware in grado.
Grammatiche Grammatiche libere da contesto Grammatiche regolari
CAKE Ambiente per la scrittura e la riproduzione audio di ricette per torte Linguaggi e Modelli Computazionali LSElisabetta Visciotti.
1 Macchine astratte, linguaggi, interpretazione, compilazione.
Muse2: MUSic Everywhere with WI-FI Progetto realizzato da: Bambini Stefano Bergamini Andrea Pierangeli Diego Bologna C.d.L.S. Ingegneria Informatica.
Automi temporizzati.
Eye Computer Sistema per l'interazione con un computer dotato di controllo oculare Linguaggi e modelli computazionali LS Realizzato da: Ciavarella Primiano.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
COSTRUIRE ED USARE GLI ACCORDI
Improvvisazione in scala. Swing Be bop Stonature.
Parsing ricorsivo discendente Il parsing ricorsivo discendente (recursive descent parsing) è un metodo di tipo top-down che può essere facilmente codificato.
ALGORITMI, LINGUAGGI E PROGRAMMI Facoltà di Lingue e Letterature Straniere Corso di laurea in Relazioni Pubbliche.
Transcript della presentazione:

Giannicola Spezzigu

Accordo: sovrapposizione di 3 o più suoni Ogni sigla denota un accordo, ossia i suoni da cui esso è formato Accordi e il sistema delle Sigle Sistema temperato: l’ottava è suddivisa in 12 parti uguali, detti semitoni. Perciò i suoni musicali sono 12 ( e non 7!!). -Posso formare accordi a partire da ognuno di essi. -Posso costruire un accordo al max di 12 suoni. Sistema temperato: l’ottava è suddivisa in 12 parti uguali, detti semitoni. Perciò i suoni musicali sono 12 ( e non 7!!). -Posso formare accordi a partire da ognuno di essi. -Posso costruire un accordo al max di 12 suoni.  Sigla C7 : indica l’accordo di C settima dom, formato dai suoni C, E, G, Bb  Sigla C : indica l’accordo di C maggiore, formato dai suoni C, E, G note in inglese: C = do D = re E = mi F = fa G = sol A= la B = si  Sigla CMA7(add13) : indica l’accordo di C maggiore - settima maggiore con 13ma aggiunta. E’ formato dai suoni: C, E, G, A, B  Sigla Bb(add b9 add 13) : indica l’accordo di Bb maggiore con 9na e 13ma bemolle aggiunta. E’ formato dai suoni: Bb, D, F, Gb, C Esempi di sigle: o Il sistema è intricato e presenta diverse regole: può essere difficile per l’allievo inesperto interpretare le sigle nel modo corretto. 2

SCOPO DEL LAVORO Realizzazione di un interprete per le sigle degli accordi jazz L’idea è quella di un sistema software di supporto all’allievo di armonia Data una sigla deve tradurla nei suoni che compongono l’accordo Deve poter suonare l’accordo (ear training) 3

Grammatica EBNF ::= [ ] [ ] [ ] [ ( )+ ] token ::= C | D | E | F | G | A | B :: = # | b ::= [ ] token ::= Ma | MA | Maj ::= m | mi | min ::= | token ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= 6/9| alt | 7alt | 0 | 07| dim ::= | 7 | token ::= sus | sus4 token ::= ( token ::= ) token :: = # | b ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= | | | ::= token :: = # | b ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= add ( [ ] | ) ::= 7 token ::= Ma | MA | Maj ::= ( | 7 ) token ::= no | omit ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= 7 token ::= Ma | MA | Maj 4

Grammatica (osservazioni) ::= [ ] [ ] [ ] [ ( )+ ] ::= | ::= [ ] ::= | 7 | ::= | | | ::= ::= add ( [ ] | ) ::= ( | 7 ) ::= 7 ::= C | D | E | F | G | A | B ::= sus | sus4 ::= ( ::= ) :: = # | b ::= Ma | MA | Maj ::= m | mi | min ::= 2 | 3 | 4 | 5 | 6 | 9 | 11 | 13 ::= 6/9| alt | 7alt | 0 | 07| dim ::= no | omit Secondo la classificazione di Chomsky, la grammatica è di tipo 2 in quanto le produzioni non sono regolari Non è presente self-embedding, quindi il linguaggio generato dalla grammatica è di tipo 3 LL(1): sono presenti varie produzioni formalmente non LL(1)  il linguaggio generato è di tipo 3  la grammatica è di tipo 2 Es: trasformando in BNF := SS non disgiunti!! Il problema è solo apparente, raccogliendo a fattor comune: := := ε | È sempre possibile distinguere la fine di una stringa da una stringa non vuota Produzione sostanzialmente LL(1) Idem per le altre produzioni  la grammatica è sostanzialmente LL(1) Il linguaggio è riconoscibile tramite analisi ricorsiva discendente 5

Tecnologie & Strumenti  Java 1.6  JavaCC per la generazione automatica del parser top-down  Java Tree Builder strumento aggiuntivo a JavaCC per la generazione automatica delle classi necessarie a creare l’albero sintattico e relativo visitor  Eclipse IDE utilizzato per lo sviluppo del progetto  NetBeans 6.5 IDE utilizzato solo per la generazione automatica della GUI  jMusic A Queensland University of Technology (QUT) music research project. Libreria Java utilizzata per la gestione dell’output sonoro e dei MIDI file 6

Progetto Funzionalità previste in analisi Funzionalità avanzate aggiunte in fase di progetto  Per poter riconoscere sequenze di sigle è stata perciò aggiunta la produzione di top level: ::= ( ) + 7

Archittettura: Package 8

Classi: struttura 9

Classi: Interazione 10

Test & Collaudo 11  Le classi principali sono state testate manualmente prima ancora di essere inserite nell’applicazione. Ne è stato accertato il corretto comportamento anche dopo l’integrazione con le altre parti del sistema.  Il collaudo è stato effettuato distribuendo l’applicazione a 5 musicisti Jazz e apportando correzioni, principalmente alle azioni semantiche dell’interprete, sulla base del loro feedback.  Alcuni lo hanno trovato un utile strumento per la didattica

DEMO 12

Sviluppi futuri 13  Estendere il linguaggio con tutte le possibili notazioni equivalenti  Riproduzione sonora: curare i voicing per ogni specie di accordo  Sequencer: - poter scegliere fra diversi organici e diversi stili musicali - poter inserire più accordi per battuta - poter inserire ripetizioni o ritornelli  Introduzione di un supporto per la creazione di melodie…… …... Il che farebbe diventare il sistema, non più un semplice interprete di accordi jazz, ma un vero e proprio strumento per la composizione musicale assistita dal computer

riferimenti  Prof. Enrico Denti: corso di Linguaggi e Modelli Computazionali ls  Franco d’Andrea – Attilio Zanchi: “Enciclopedia comparata delle scale e degli accordi” ed. Carish  Queensland University of Tecnology: 14

15