kako se prave programski jezici?

To ti piše na mnogo mjesta pa se malo potrudi. Onako, ukratko:

Prvi programi rađeni su direktno u mašinskom kodu, a u računar su se unosili - lemilicom. Tada je nastao i izraz "bug" za grešku u programu.

Objašnjenje: računari su se pravili od elektronskih cijevi. Cijevi troše mnogo struje koja se uglavnom pretvara u toplotu. Posljedica - prozori prostorija u kojima su se načazili računari morali su biti širom otvoreni da bi se unutra uopšte moglo raditi. Dio energije lampe pretvaraju u svjetlost pa cijela ta skalamerija svijetli ko božićno drvce. Danju to nije problem ali noću privlači veoma mnogo bubica (bugs) koje završavaju svoj život prouzrokujući kratke spojeve i pogrešne rezultate u radu. Kada neki program uporno daje svakakve rezultate, tehničari bi uzviknuli "bugs" i mašili se četkica da otklone kvar.

E, u te računare programi su se unosili prelemljavanjem žica. Lemilica je prvi programerski utility.
 
@Ober Kad pomenu te prekidače sjetio sam se jednog događaja od prije više od 20 godina. Firma u kojoj sam tada radio imala je jedan računar za vođenje proizvodnje, tzv. procesni računar. Proizvođač tog računara vjerovatno je poznat veoma malom broju ljudi - američka firma Foxborou.
Naravno da uz njega nismo dobili nikakve kompajlere za više programske jezike i slične aplikacije. Jednom se desilo da se nešto pobrljavilo i da cijeli sistem nikako nije htio da radi normalno. Malo, malo, procesor ode u HALT i ni makac. Kad zaustavim procese koji vode postrojenje (pustim sistem da radi naprazno) sve bude u redu. Pošto ni rezervna kopija (na disketama :lol: od 12 inča :lol: :lol: ) nije bila ispravna, jedini način da to riješimo je bilo izlistati cijeli taj dio na papir (u hex kodu) pa tražiti. Da ne dužim priču: morao sam napraviti program koji vrši to listanje, odradi hendšejking s štampačem i odštampa - jedan po jedan bajt, četiri bajta (to je 16 bitni računar) u jednom redu, pa kod za novi red itd, itd. Sve u svemu, programče od par stotina linija mašinskog koda. A zatim unijeti taj program u računar pomoću prekidača - podesiš 16 prekidača da formiraš komandu pa pritisneš dugme da se una upiše - pa inkrementiraš brojač, uneseš sledeću komandu itd. do kraja. S listingom ispred sebe, uz jedan transatlantski telefonski poziv, problem je riješen - jedan bit nije bio ispravan što je jednu JE komandu pretvaralo u JNE.
 
@Ober Kad pomenu te prekidače sjetio sam se jednog događaja od prije više od 20 godina. Firma u kojoj sam tada radio imala je jedan računar za vođenje proizvodnje, tzv. procesni računar. Proizvođač tog računara vjerovatno je poznat veoma malom broju ljudi - američka firma Foxborou.
Naravno da uz njega nismo dobili nikakve kompajlere za više programske jezike i slične aplikacije. Jednom se desilo da se nešto pobrljavilo i da cijeli sistem nikako nije htio da radi normalno. Malo, malo, procesor ode u HALT i ni makac. Kad zaustavim procese koji vode postrojenje (pustim sistem da radi naprazno) sve bude u redu. Pošto ni rezervna kopija (na disketama :lol: od 12 inča :lol: :lol: ) nije bila ispravna, jedini način da to riješimo je bilo izlistati cijeli taj dio na papir (u hex kodu) pa tražiti. Da ne dužim priču: morao sam napraviti program koji vrši to listanje, odradi hendšejking s štampačem i odštampa - jedan po jedan bajt, četiri bajta (to je 16 bitni računar) u jednom redu, pa kod za novi red itd, itd. Sve u svemu, programče od par stotina linija mašinskog koda. A zatim unijeti taj program u računar pomoću prekidača - podesiš 16 prekidača da formiraš komandu pa pritisneš dugme da se una upiše - pa inkrementiraš brojač, uneseš sledeću komandu itd. do kraja. S listingom ispred sebe, uz jedan transatlantski telefonski poziv, problem je riješen - jedan bit nije bio ispravan što je jednu JE komandu pretvaralo u JNE.

E pa, blago vama kad imate toliko iskustva... Ja nemam pojma o tome ali me zanima u koju skolu treba da upisem decu kako bi oni imali pojma...Iskreno, zao mi je sto u OSkolama niko izgleda ne shvata informatiku ozbiljno ( sto me izuzetno nervira - dokle ce covek iz skole da izlazi bez primenljivih znanja ) a onda se i u srednjim verovatno ne radi dovoljno ozbiljno... Pa kako da usmerim svoju decu , naime , mislite li da je dovoljno sto u 4. godini deca u informatickom odeljenju jedne gimnazije uce C++ ? Web dizajn... ?
 
E pa, blago vama kad imate toliko iskustva... Ja nemam pojma o tome ali me zanima u koju skolu treba da upisem decu kako bi oni imali pojma...Iskreno, zao mi je sto u OSkolama niko izgleda ne shvata informatiku ozbiljno ( sto me izuzetno nervira - dokle ce covek iz skole da izlazi bez primenljivih znanja ) a onda se i u srednjim verovatno ne radi dovoljno ozbiljno... Pa kako da usmerim svoju decu , naime , mislite li da je dovoljno sto u 4. godini deca u informatickom odeljenju jedne gimnazije uce C++ ? Web dizajn... ?

Koju god školu da upišu retko šta će u njoj naučiti ako ih ne interesuje. Školski program predviđa samo konzolne aplikacije gde se svi 'smore', jer je to samo crni ekran na kome se nešto ispisuje, na fakultetima su druge priče. Današnja omladina je od rođenja bukvalno upoznata sa osnovama rada na računaru. ego šta no je dovoljno, ko primeti da mu se sviđa programiranje ima fakultete(ETF, Viša elektro, Računarski fakultet,FON pa čak i Višu Poslovnu sa koje ima dobru osnovu za FON itd), ne mogu svi biti programeri. Na šta bi svet onda ličio?
 
Poslednja izmena:
Нови програмски језик се прави за радним столом. Ето, чика Бјарне се вртео у циклусима профињења, па је раније очекивани C++0x постао C++11. Након што се постави стандард, реализација тог језика мож` бит` колико иштеш...

Ако идеш на мања врата, седнеш за сто и осмислиш шта желиш. Онда направиш компајлер -- данас је већ језик мање битан -- па објавиш да људи користе. Имај на уму да је конкуренција јака и да треба да понудиш људима нешто што други нису ако желиш да ти језик постане популаран.
 
Може један ум, није то бог-зна-колики посао. И сложеније ствари су осмишљаване у по једном уму.

За реализацију су пак потребни милиони прстију да би се постигла популарност какву данас имају водећи програмски језици. :)
 

Back
Top