English

JEZICI

PRIZVUK: Glazbena informatika
Kultura pisanja umjetničkog audio softvera


Ova je stranica posvećena pisanju softvera.

Softver koji nešto svira može biti napisan u raznim programskim jezicima. Ovisno o jeziku u kojem su pisani, softverski programi mogu biti kompilirani ili interpretirani.

U edukativnim okružjima, gdje nekomu treba pokazati princip kako nešto može raditi, ili ilustrirati neku znanstvenu tezu, interpretirani jezici imaju prednost, jer su jednostavni i zorni: učinak programiranja na rad stroja vidi se odmah.

U umjetnosti to nije dovoljno; ne radi se o znanju da bi se nešto moglo, već to nešto treba i napraviti. U zvukovnom softveru zadatak dodatno otežava činjenica da se intenzivan račun tvorbe zvuka događa u vremenu, rezultat treba biti glazbeno prohvatljiv: zazvučati sigurno i uvjerljivo. Uvjerljivost ima svoju cijenu, a ta se iskazuje kroz pripremu, obazriv odabir građe i metoda te uvećan opseg posla.

Kompilirani jezici imaju prednost što su programi u njima pisani izvedbeno za nekoliko redova veličine brži od interpretiranih, imaju snagu industrijskih alata, a neki su od tih jezika u dovoljno masovnoj i dugotrajnoj uporabi, pa se o njima dosta zna i mnoštvo kompetentnih ljudi stalno radi na njihovom usavršavanju. Stoga kompilirani jezici imaju prednost u pisanju zvukovnih programa.

Od svih živih računalnih jezika za ovu radionicu činio sa najprikladnijim jezik C, zato što je zreo, sveprisutan, malen i učinkovit. Prokušan u smislu tradicije i inovacije, snage i zahtjevnosti, robustnosti i sofisticiranosti, pouzdanosti, nudi mogućnost upravljanja programima u stvarnom vremenu. Najveća većina postojećih zvukovno glazbenih programa, pa i čitavih računalnih sistema napisana je u jeziku C. Visoki, specijalizirano glazbeni jezici, kao RTcmix ili Csound u svojoj sintaksi podsjećaju na C i vuku korijene iz njega.

Prikazujemo nekoliko jednostavnih, u radionicu složenih primjera pisanja softvera, i služimo se u tomu alatima razvijenim u jeziku C.