Implementation of Object Oriented Languages
Implementace Objektově Orientovaných jazyků
Authors
Supervisors
Reviewers
Editors
Other contributors
Journal Title
Journal ISSN
Volume Title
Publisher
České vysoké učení technické v Praze
Czech Technical University in Prague
Czech Technical University in Prague
Date of defense
Abstract
Tato práce představuje tinyC+, rozšíření pro C-style programovací jazyk, který podporuje Objektově Orientované Programování. TinyC+ byl vytvořen jako učební pomůcka pro předmet Generování Kódu, který je vyučován na FIT CVUT, kde je tinyC+ použit jako demonstrátor předkladu high-level OOP konstrukcí. Proto hlavním cílem této práce bylo navrhnout minimální použitelný objektově orientovaný jazyk aby jeho přidání do vyučovaného předmětu nebylo časově náročné. TinyC+ je implementován pomocí transpileru do tinyC, jazyka podobného C, který je již v přredmětu používán. Z těchto důvodů tato práce přináší rozbor objektově orientovaných vlastností populárních programovacích jazyků, definuje a obhajuje jejich minimální výběr a popisuje implementaci tinyC+ transpileru.
This work presents tinyC+, a language extension over a C-like language that supports Object-Oriented Programming. TinyC+ has been developed to aid the Code Generation course taught at FIT CTU. It serves as a demonstration of how the high-level OOP features are compiled. Therefore the primary design goals of tinyC+ were to provide minimal, yet functional object-oriented language so that its addition to the course would take very little explanation. TinyC+ is then transpiled into tinyC, a C-like language already used in the class. Therefore this thesis surveys the object-oriented features of several common programming languages, defines and justifies their minimal viable selection, and describes the transpiler implementation in detail.
This work presents tinyC+, a language extension over a C-like language that supports Object-Oriented Programming. TinyC+ has been developed to aid the Code Generation course taught at FIT CTU. It serves as a demonstration of how the high-level OOP features are compiled. Therefore the primary design goals of tinyC+ were to provide minimal, yet functional object-oriented language so that its addition to the course would take very little explanation. TinyC+ is then transpiled into tinyC, a C-like language already used in the class. Therefore this thesis surveys the object-oriented features of several common programming languages, defines and justifies their minimal viable selection, and describes the transpiler implementation in detail.
Description
Citation
Underlying research data set URL
Permanent link
Rights/License
A university thesis is a work protected by the Copyright Act of the Czech Republic. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one`s own expense. The use of thesis should be in compliance with the Copyright Act.
Vysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem v platném znění.
Vysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem v platném znění.