Original title:
Interpret dynamického programovacího jazyka pro vědecké výpočty
Translated title:
Interpreter of a Dynamic Programming Language for Scientific Computing
Authors:
Ocelík, Tomáš ; Orság, Filip (referee) ; Kněžík, Jan (advisor) Document type: Master’s theses
Year:
2012
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[cze][eng]
Práce se zabývá návrhem a popisem dynamického reflektivního jazyka, založeného na prototypování. Nejprve jsou vysvětleny principy typické pro tuto skupinu jazyků a jsou stručně popsáni známí představitelé. Dále je krátce pojednáno o jazycích pro matematické výpočty. Poté práce podrobně popisuje navržený programovací jazyk, jeho gramatiku a sémantiku. Jsou vysvětleny principy typové kontroly a dědičnosti. Je také ukázáno, jakým způsobem jsou implementovány základní řídící konstrukce známé z jiných jazyků. V další části je představen návrh virtuálního stroje pro vytvořený jazyk. Je vysvětlen použitý výpočetní model, organizace objektové paměti a interní reprezentace význačných struktur navrženého jazyka. Nakonec je rozebrána dynamická typová kontrola, překladač a způsob překladu typických konstrukcí do vnitřního kódu virtuálního stroje.
The master's thesis deals with design of a dynamic reflective prototype-based language. First, basic principles of this language group are explained and well known representatives are described. Then languages for scientific computing are shortly discussed. Next section of the thesis describes in detail the proposed programming language, its grammar and semantics. Principles of type checking and inheritance are explained. Thesis also demonstrates implementation of basic control structures known from other languages. Next section shows design of virtual machine for the language described before. Section explains used computational model, organization of the object memory and internal representation of important structures of the designed language. Finally, dynamic type checking, compiler and compilation of typical structures to the virtual machine internal code are discussed.
Keywords:
compiler.; Dynamic programming language; dynamic type checking; object-oriented programming languages; parallelism; prototype-based languages; virtual machine; dynamická typová kontrola; Dynamický programovací jazyk; jazyky založené na prototypech; objektové orientované jazyky; paralelismus; překladač.; virtuální stroj
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/53686