Překladač z jazyka Scheme do C/C++
Název práce v češtině: | Překladač z jazyka Scheme do C/C++ |
---|---|
Název v anglickém jazyce: | Compiler from Scheme to C/C++ |
Klíčová slova: | překladač, Scheme, C, C++, knihovna |
Klíčová slova anglicky: | compiler, Scheme, C, C++, library |
Akademický rok vypsání: | 2013/2014 |
Typ práce: | bakalářská práce |
Jazyk práce: | čeština |
Ústav: | Katedra softwarového inženýrství (32-KSI) |
Vedoucí / školitel: | RNDr. Jakub Yaghob, Ph.D. |
Řešitel: | skrytý - zadáno a potvrzeno stud. odd. |
Datum přihlášení: | 29.10.2013 |
Datum zadání: | 08.11.2013 |
Datum potvrzení stud. oddělením: | 21.11.2013 |
Datum a čas obhajoby: | 07.09.2015 00:00 |
Datum odevzdání elektronické podoby: | 30.07.2015 |
Datum odevzdání tištěné podoby: | 30.07.2015 |
Datum proběhlé obhajoby: | 07.09.2015 |
Oponenti: | RNDr. David Bednárek, Ph.D. |
Zásady pro vypracování |
Cílem tohoto projektu je implementovat překladač jazyka Scheme podle standardu R5RS [1] do jazyka C-C++.
Scheme je programovací jazyk, který se vyznačuje čistou syntaxí a jednoduchou sémantikou. Jazykových konstruktů má sice málo, ale jsou poměrně silné a většinou nemají žádná omezení na to, jak mohou být použity. Z toho vznikají různé komplikace při překladu či interpretaci programu. Prototypovou implementaci překladače lze dále rozšířit o knihovnu vestavěných funkcí. Dalším možným rozšířením je statická analýza toku dat a běhu programu s možností implementace optimalizací. |
Seznam odborné literatury |
[1] R. Kelsey, W. Clingerand, J. Rees. Revised 5 Report on the Algorithmic Language Scheme, 1998
[2] Ch. Queinnec. Lisp in Small Pieces, Cambridge University Press, 2003. ISBN 521545668 [3] O. Shivers. Control-Flow Analysis of Higher-Order Languages -or- Taming Lambda, 1991 [4] M. Might. Environment Analysis of Higher-Order Languages, 2007 [5] J. M. Siskind. Flow-Directed Lightweight Closure Conversion, 1999 |