Creați un limbaj de programare
Mulți oameni întâmpină dificultăți sau sunt frustrați de limbile de programare pe care le folosesc în fiecare zi. Unii doresc ca lucrurile să fie tratate mai abstract, în timp ce altele sunt nemulțumite de implementarea funcțiilor pe care le doresc, fiind "standard". Indiferent dacă sunteți un expert IT sau doar un pasionat, de multe ori veți fi în poziția de a crea un nou limbaj de programare.
metodă
1
Familiarizați-vă cu terminologia. Autorii compilatorilor folosesc adesea termeni necunoscuți. Aflați mai multe despre compilatoare înainte de a continua. Ar trebui să știi tot ce trebuie să știi.
2
Decideți ce problemă va rezolva limba dvs. Se adresează o problemă a unei anumite zone sau este o limbă cu scop general?
3
Gândiți-vă la semantica limbii și conceptelor dvs.
4
Gândiți-vă la sarcinile specifice pe care cineva ar dori să le facă cu limba dvs. de programare. De exemplu, "ar putea să dorească să spună unui robot să urmeze o linie" sau "ar putea dori să dezvolte programe de desktop relativ portabile" sau "ar putea dori să creeze aplicații web cu el".
5
Experimentați cu ideile de sintaxă (textul limbajului de programare) pentru exemplele de mai sus.
6
Elaborează o gramatică formală pentru sintaxa.
7
Decideți dacă limba este interpretată sau compilată. În lumea interpretată, utilizatorul dvs. manipulează programul într-un editor și îl execută direct pe computer în timp ce editează, compilază, compilază și apoi execută programul în lumea compilatoarelor.
8
Scrieți scanerul frontal și parserul sau găsiți un instrument care vă va ajuta.
9
Utilizați informațiile de parser pentru a scrie codul obiect pentru o prezentare intermediară. Permiteți parserului să creeze un AST, apoi să creeze codul obiect de la codul de adresă sau de la cel mai mare frate SSA și apoi să creeze o hartă de caractere pentru a defini funcțiile, variabilele globale și așa mai departe.
10
Scrie exportatorul sau generator de cod care conectează totul.
11
Scrieți multe programe de testare pentru a testa limba de programare.
12
Luați în considerare modul în care utilizatorul va depana propriile programe.
13
Dacă limba dvs. de programare utilizează o bibliotecă standard, ar trebui să o scrieți. În plus față de un colector de gunoi sau alte caracteristici runtime, dacă aveți nevoie de el.
14
Publicați-vă limba de programare împreună cu specificația și câteva exemple despre ce puteți face cu ea.
Sfaturi
- Începeți prin proiectarea limbajului dvs. de programare și nu scrieți niciun cod până când nu sunteți mulțumit și ați răspuns la toate (sau cele mai multe) întrebări sau probleme cu privire la design, deoarece modificarea designului este mai ușoară decât a fost.
- Cunoașteți platforma țintă (sistemul de operare și bibliotecile) pentru compilatorul / interpretul dvs., eventual îl veți utiliza și îl veți edita.
avertismente
- Gândiți-vă dacă aveți într-adevăr nevoie de o nouă limbă și ce limbă aveți noi pe care alții nu o au (poate fi o combinație de caracteristici sau o singură caracteristică).
- Limba de scriere este dificilă dacă nu știți ce faceți. De asemenea, este nevoie de multă practică.
- Fiți pregătit să dedicați ceva timp proiectării limbajului deoarece nu aveți nicio modalitate de a vă schimba limba odată ce ați scris compilatorul și sunteți dincolo de faza de proiectare.
- Nu încercați să vă bazați trăsăturile pe o uniune de mai multe limbi, să zicem. De exemplu, limba dvs. este o combinație de Limba X, Limba Y și Limba Z. Trecutul a arătat că limbile create astfel nu au reușit niciodată.
Ce ai nevoie
- răbdare
- Cunoașterea caracteristicilor limbajelor de programare și proiectarea unui limbaj de programare (poate doriți să citiți Concepte de proiectare a limbajului de programare de David A. Watt).
- Cunoașterea teoriei compilatorului (deoarece veți scrie un compilator / interpret pentru limba dvs. și implementarea dvs. va fi implementarea referinței).
- Aplicații pentru limba dvs. de programare (rețineți că unele dintre limbile cele mai frecvent utilizate, cum ar fi C sau Lisp, au fost create pentru a face ceva specific, cum ar fi crearea de UNIX sau aritmetică simbolică).
Distribuiți pe rețelele sociale:
înrudit
Creați-vă propria limbă secretă
Modificați vocea Android
Creați un program foarte simplu în Python
Începeți să programați un computer
Schimbați limba în Gmail
Schimbați limba pe YouTube
Modificați limba în Google Chrome
Faceți un simplu joc video
Învățarea unui limbaj de programare
Modificați limbile de intrare în Windows 8.1
Deveniți programator
Scrieți un program cu Notepad
Software-ul programului
Fiți calificați în învățarea limbajelor de programare
Modificați limba în Android
Scrieți un algoritm într-un limbaj de programare
Descărcați o limbă pentru utilizarea offline în Google Translate for Android
În Windows 8, schimbați limba
Programare
Învățați programarea
Modificați limba tastaturii pe Mac