Hur man skapar ett programmeringsspråk

Författare: Peter Berry
Skapelsedatum: 19 Augusti 2021
Uppdatera Datum: 11 Maj 2024
Anonim
Hur man skapar ett programmeringsspråk - Hur
Hur man skapar ett programmeringsspråk - Hur

Innehåll

är en wiki, vilket innebär att många artiklar är skriven av flera författare. För att skapa denna artikel deltog 27 personer, några anonyma, i sin utgåva och förbättring över tid.

Många individer upplever svårigheter och frustration på grund av det programmeringsspråk de använder varje dag. Vissa vill att saker ska vara mer abstrakta, andra hatar att implementera funktioner som de tycker bör vara standard. Oavsett om du är en datorproffs eller en amatör, kanske du redan har sagt att det skulle vara mycket mer praktiskt att uppfinna ditt eget programmeringsspråk.


stadier



  1. Bekanta dig med teknik. Du kan inte skapa ett programmeringsspråk om du inte vet hur du använder en dator.


  2. Lär dig mer om terminologi. Kompilatorkompilatorer har ofta jargong som du inte känner till. Läs mer om kompilatorer innan du fortsätter. Se till att du vet allt som finns att veta.


  3. Bestäm problemet att lösa. Kommer du att hantera ett problem som är specifikt för ditt område eller ska du skapa ett allmänt språk?


  4. Tänk på semantik. Tänk också på begreppet ditt språk.
    • Kommer du att tillåta direkt åtkomst till pekare eller inte?
    • Vilka typer av data kommer den att använda (om den skrivs in)?
    • Kommer det att vara ett statiskt eller dynamiskt språk?
    • Vad blir hans minnesmodell? Ska du använda en sopor eller en manuell minnehantering? Om du använder en sopor, förbered dig på att koda en eller anpassa en för ditt språk.
    • Hur ska du hantera tävlingen? Kommer du att använda en enkel modell av uppgifter eller något mer komplicerat som Linda eller skådespelarmodellen, eftersom dagens datorer har flera hjärtan?
    • Kommer de primitiva funktionerna att integreras i språket eller vill du importera dem från ett bibliotek?
    • Vilka är språkets paradigm? Funktionell, objektorienterad, prototyp (som JavaScript), aspektorienterad, modellorienterad eller något helt nytt?
    • Hur kommer ditt språk att kommunicera med befintliga bibliotek och språk (främst C)? Detta är viktigt om du skapar ett domänspecifikt språk.
    • Slutligen kommer några av dessa frågor att besvaras i det andra steget och hjälper dig att besvara nästa steg.



  5. Tänk på de olika uppgifterna. Om någon använde ditt språk, vilka uppgifter skulle de vilja göra? Till exempel kanske han vill rikta en robot att följa en linje, han kanske vill skapa bärbara datorprogram eller webbapplikationer i programmet.


  6. Prova olika syntaxidéer. Använd exemplen ovan för att testa.
    • Var noga med att behålla ditt språk i kategorin av språk utan kott eller i en underkategori. Du och analytiker kommer att vara tacksamma för dig senare.


  7. Skriv grammatiken för syntaxen.


  8. Välj mellan ett tolkat eller sammanställt språk. Om den tolkas kan användaren vanligtvis redigera koden i ett program och köra den direkt på tolkaren. Om den är kompilerad kommer användaren att skriva koden, sammanställa den, spara den i ett visst format innan den startas.



  9. Skriv en skanner och en analysator frontend. Du kan också hitta ett verktyg som hjälper dig.
    • Tänk också på hur kompilatorn kommer att varna användaren för falska program och syntaxfel.


  10. Skriv koden. Använd analyserinformationen för att skriva objektkoden eller en mellanrepresentation. Låt analysatorn skapa ett abstrakt syntaktiskt träd och skapa sedan objektkoden från det trädet med adresskoder eller dess storebror SSA innan du skapar en symboltabell för att definiera funktioner, globala variabler och så vidare.
    • Beroende på språk kan du dessutom skapa virtuella pekartabeller eller informationstabeller för dina klasser (för att stödja RTTI).


  11. Koda beställningen. Detta är programmet som kommer att länka all kod.


  12. Testa ditt språk med testprogram.
    • Du måste skapa testprogram som fokuserar på språkets formella grammatik för att se om kompilatorn accepterar allt i din definition och avvisar allt annat.


  13. Tänk på felsökning.


  14. Skriv standardbiblioteket. Om ditt språk använder ett standardbibliotek bör du skriva det utöver den sopor som samlas in och andra egenskaper du behöver.
    • I själva verket, om du kodar kompilatorn, behöver du en kod som operativsystemet kommer att köra för att börja kasta användarkoden (till exempel tilldela alla globala variabler).


  15. Publicera ditt språk. Publicera ditt språk tillsammans med dess specifikationer och kodprover som du har skapat.
    • Glöm inte att ange hur det är möjligt att integrera befintliga bibliotek och använda runtime-egenskaper eller standardbibliotek.
  • tålamod
  • Kunskap om programmeringsspråkens egenskaper och deras design
  • Kunskap i kompilatorteori (eftersom du kommer att koda en kompilator eller tolk för ditt språk och din implementering kommer att fungera som referens)
  • En användning för ditt språk (glöm inte att några av de mest använda språken som C eller LISP skapades för att göra något specifikt, till exempel för att skapa Unix eller göra symbolisk beräkning)

Textba erade äventyr pel, även kända om interaktiva fiktioner (eller akronymen "IF"), var det för ta formatet för data pel och behåller fortfarande en relativt ...

Att kapa affi cher och affi cher är en bra marknad föring trategi för olika typer av företag, projekt, pre entationer och liknande. Förutom att vara billig är metoden myc...

Vår Rekommendation