Voglio leggere e imparare dal codice sorgente dell'interprete/compilatore di un linguaggio di scripting. Quale interprete/compilatore del linguaggio di scripting ha il codice sorgente più semplice, pulito e facile da leggere? Preferirei che fosse scritto in C/C++ (cos'altro scrivono i compilatori in ogni caso?) Perché sto pianificando di scrivere un compilatore in C.Codice sorgente interprete linguaggio di scripting per imparare da
risposta
Dai uno sguardo allo lua, puoi passare attraverso le prime versioni del linguaggio di programmazione e vedere come si è evoluto. È scritto in C e ha un codice pulito e piacevole. Puoi scrivere un compilatore in quasi tutti i linguaggi di programmazione, ma C è stato quello che la maggior parte dei programmatori ha scelto.
È possibile ottenere il codice sorgente per tutte le versioni in un unico pacchetto all'indirizzo http://www.lua.org/ftp/lua-all.tar.gz. Stanno tutti bene. – lhf
Il codice sorgente per alcune versioni recenti di Lua può essere consultato con i collegamenti su http://www.lua.org/source/. Vedi anche http://lua-users.org/wiki/LuaSource. – lhf
L'interrutore CPython è in circolazione da un po 'di tempo e vorrei immagina che sarebbe molto utile per te.
Il richiedente domanda non era chiaro su cosa volesse. Ora che ha chiarito, ho modificato la mia risposta. –
un linguaggio famoso, ma non semplice (codice sorgente PHP). È possibile usufruire del codice sorgente.
Dato che 'semplice' è il criterio _primario_ dell'OP, se la fonte PHP non è semplice, allora come è questa una risposta? – ildjarn
@ildjarn: il codice sorgente PHP non è semplice, ma puoi anche trarre vantaggio dal codice sorgente –
Date un'occhiata sul V8 JavaScript. Ogni interprete ha un componente chiamato tokenizer. GNU ne ha uno il cui nome è bisonte. Dai un'occhiata anche a questo. Può essere utile. Chromium utilizza alcuni tokenizer per interpretare html anche sul Webkit, ma V8 è l'interprete javascript.
Claudio M. Souza Junior
AngelScript è una buona opzione per conoscere compilatori. Questo è un linguaggio con sintassi familiare C/C++, garbage collection, è orientato agli oggetti con ereditarietà e polimorfismo, multipiattaforma e compila in byte-code.
La mia seconda scelta sarebbe Lua.
Consiglierei, come introduzione gentile, di dare un'occhiata allo LLVM Tutorial.
Chris Lattner crea un semplice linguaggio giocattolo Kaleidoscope per mostrare le varie fasi di compilazione:
Ha poi spiegato come add JIT capabilities (essenziale per un interprete).
Il linguaggio del giocattolo è estremamente semplice, quindi il codice risultante è semplice e dimostra perfettamente l'architettura senza affogarvi nei dettagli dell'implementazione.
Non sono sicuro che il tutorial sia completamente aggiornato e possa essere utilizzato come è contro una versione recente di LLVM, ma consiglio almeno di leggerlo.
(E, naturalmente, leggendo il Dragon Book).
- 1. linguaggio di scripting per C++
- 2. provenienti da bash, quale linguaggio di scripting di Windows per imparare?
- 3. Rifattore codice C++ per usare un linguaggio di scripting?
- 4. Perché dovrei incorporare un linguaggio di scripting?
- 5. linguaggio di scripting universale per Windows
- 6. Un linguaggio di scripting per Windows?
- 7. C# come linguaggio di scripting
- 8. Codice sorgente di libri realizzati con TeX/LaTeX per imparare
- 9. linguaggio di scripting in qlikvew
- 10. Linguaggio di scripting per lo sviluppo della strategia di trading
- 11. IronRuby come linguaggio di scripting in .NET
- 12. modo più efficiente per analizzare questo linguaggio di scripting
- 13. Python come linguaggio di scripting web?
- 14. Creazione di un linguaggio di scripting
- 15. Utilizzo di C# come linguaggio di scripting per un'applicazione C#
- 16. tutorial o introduzioni per scrivere un semplice linguaggio di scripting?
- 17. C# è adatto per un linguaggio di scripting?
- 18. Ruby vs Lua come linguaggio di scripting per C++
- 19. Linguaggio di scripting semplice e sicuro implementato in JavaScript?
- 20. Codice sorgente per app Android?
- 21. Scripting per l'utente finale
- 22. C# Lingua di scripting
- 23. Buon codice open source per imparare la programmazione Web
- 24. Qual è il tuo linguaggio di scripting preferito in java world (linguaggio di scripting su JVM) e modo?
- 25. Ruby sandboxing vs. integrazione di un linguaggio di scripting
- 26. Vale la pena imparare il linguaggio assembly?
- 27. Racchetta come linguaggio di scripting in un motore di gioco
- 28. Interprete JavaScript in Bash
- 29. Come implementare un linguaggio di scripting in un'applicazione C?
- 30. Progetti Javascript per imparare da
Prova quello che ti piace di più. – hari
Sembra che alcune persone abbiano interpretato male la domanda. Si prega di rileggere: p – slartibartfast