Sou estudante de ciência da computação. Quero criar minha própria linguagem de programação (uma linguagem básica com poucas instruções).
Eu sei como fazer um analisador sintático, eu já fiz isso no Perl. Em um artigo, li algo sobre o compilador, um compilador é feito por si só.
Por exemplo, o compilador C é escrito em C. Como é possível? Eu posso criar meu próprio idioma, mas não sei como executá-lo. Qualquer ideia?
É realmente uma boa pergunta e posso escrever um blog para o projeto.
programming-languages
compilers
BaptisteL
fonte
fonte
Respostas:
O truque é a inicialização . Você primeiro escreve um compilador para o seu idioma (ou um subconjunto dele) em outro idioma. Em seguida, você escreve um compilador para o seu idioma (ou um subconjunto grande do que você já pode manipular) no seu idioma. Você usa o compilador anterior para compilar o novo compilador e, em seguida, o novo compilador pode se compilar.
fonte
Um compilador que pode compilar suas próprias fontes é chamado de compilador auto-hospedado . Os primeiros compiladores foram escritos em outro idioma. Por exemplo, o primeiro compilador C provavelmente foi escrito em assembler. Todo o truque ao usar um compilador de nível inferior anterior é chamado de inicialização.
fonte