Avatar billede udvikler Nybegynder
28. december 2005 - 20:46 Der er 5 kommentarer og
1 løsning

spørgsmål ang. compiler teori

Jeg har læst følgene spørgsmål http://exp.dk/spm/672910 og vil gerne lære det samme. Jeg har studeret det en smule og har fundet ud af at man kan lave en compiler som har følgene funktioner fx.

jeg skriver noget i php og min compiler omdanner det til asp

det lærte jeg i denne tutorial: http://www.theill.com/svendsk/

men er der ikke nogen der lige kan forklare mig hvordan man laver sit eget sprog via det der ?
Avatar billede arne_v Ekspert
28. december 2005 - 21:02 #1
du opfinder sproget Foobar som er velegnet til et eller andet

du beskriver sproget præcist (extended BNF er der vist noget som hedder)

du skriver den samme grammatik i et sprog som er input til en parser generator

du bruger en parserer generator til at oversætte din grammatik til en parser

du får lavet en lexikalsk scanner til at levere input til parseren (kan også genereres)

du laver manuelt noget kode som som bliver kaldt af parseren og genererer
compilerens output
Avatar billede udvikler Nybegynder
28. december 2005 - 21:11 #2
ok, tak for svar

jeg har altid fået af vide at en god bog er den bedste fremgangsmåde på at lære et nyt sprog, så derfor vil jeg spørge om du kender en god bog? om den er på dansk eller engelsk er lige meget, men dansk ville selvfølgelig være bedre; men som du så mange gange har sagt til mig/andre i forummet, kan man næsten glemme dansk når det omhandler programmering :)

og læg et svar tak
Avatar billede arne_v Ekspert
28. december 2005 - 22:46 #3
søren og simon havde nogle forslag til bøger i den tråd du selv linkede til

jeg har aldrig studeret compiler teori

jeg lærte noget praktisk om brug af parser generator udfra Bison dokumentationen
som er ret pædagogisk og helt nede på jorden
Avatar billede arne_v Ekspert
28. december 2005 - 22:50 #4
http://www.gnu.org/software/bison/manual/

det er ikke en compiler til et sprog men en fortolker til en beregner

men princippet er nu meget det samme

og svar
Avatar billede mollevp Nybegynder
29. december 2005 - 01:44 #5
Jeg fulgte et kursus sidste i compilere og sprog for et stykke tid siden, hvis du gerne vil lave dit eget sprog, men ikke vil lave hele compileren selv, findes der en del tool som kan hjælpe dig. Jeg vil anbefale dig at lære BNF(som arne også nævner) syntakst - som du bruger til at beskrive dit sprog.

Efter det brugte vi nogle af følgende værktøjer: http://dinosaur.compilertools.net/

Her er nogle er en god lille intro til lex og yacc, to værktøjer der tilsammen kan lave en compiler til dit sprog:

http://www.control.aau.dk/~mvpe04/ACompactGuideToLexAndYacc.pdf
Avatar billede udvikler Nybegynder
29. december 2005 - 12:27 #6
Dit svar er accepteret arne, håber det er iorden mollevp?

Jeg vil gå igang med at lære BNF så i vil sikkert høre fra mig i forummet igen med et par spørgsmål om BNF.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester