[ MarkoBalkan @ 06.03.2009. 08:55 ] @
zašto se u nekim slučajevima koristi ada umjesto C-a?

[ Stojan Trifunovic @ 17.01.2010. 09:56 ] @
Zato što je ADA za razliku od C-a napravljena kao programski jezik u čijoj je osnovi razumljivost onoga što je napisano. ADA samom svojom sintaksom ne dozvoljava greške koje su tako, na prvi pogled očigledne. U C-u je moguće napisati neverovatno nerazumljivu funkciju koja se (bez komentara) uopšte ne može shvatiti. U adi, to nije moguće. Zbog toga se ADA ranije češće koristila prilikom programiranja stabilnih sistema.

U principu, svi jezici (osim asemblera) predstavljaju kompromis između brzine pisanja programa i njegove optimizovanosti za određenu arhitekturu mikroprocesora ili mikrokontrolera. Čistim asemblerom se postižu optimizovaniji i brži programi od bilo kog drugog programskog jezika. ADA, Pascal ili C kompajler jednostavno ne zna potrebe programera, pa ga stoga prevodi svojom logikom (obično da zauzima što manje memorije za program - code optimized).

Optimizovanost programa direktno zavisi od snage kompajlera. U praksi ponekad čak i BASIC kompajleri proizvode optimizovaniji kod od C-a.

Niko Vas ne ograničava (da, dobro sam rekao - ograničava) da koristite C, ukoliko znate da radite u nekom drugog programskom jeziku. Jedini razlog zbog koga je C toliko rasprostranjen je gomila C kompajlera i softverskih biblioteka za sve moguće mikroprocesore i mikrokontrolere. C je opšte prihvaćen za standard, bez obzira na svoje nedostatke.

Nažalost, gotove rutine rađaju lenjost programera, pa je često lakše uraditi copy/paste umesto razviti svoju sopstvenu rutinu koja bi bila primerenija datoj arhitekturi hardvera i/ili instrukcija mikroprocesora ili mikrokontrolera. ADA kompajler ne postoji za dovoljno arhitektura da bi se i za njega razvijale rutine.

Ukoliko na primer napravite JAVA kompajler, slobodno možete i njega koristiti za programiranje.