Building yourself a compiler
Computers are a very powerful machine that can solve problems in a short time with a huge of calculations. Computers are one of the greatest inventions of the 20th century. It will be great if we can ask a computer to solve our problem. Programming languages such as Java or C++ has been a key facto...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Final Year Project |
Language: | English |
Published: |
2018
|
Subjects: | |
Online Access: | http://hdl.handle.net/10356/74039 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
id |
sg-ntu-dr.10356-74039 |
---|---|
record_format |
dspace |
spelling |
sg-ntu-dr.10356-740392023-03-03T20:37:43Z Building yourself a compiler Ngo, Trung Le Bao Ta Nguyen Binh Duong School of Computer Science and Engineering DRNTU::Engineering Computers are a very powerful machine that can solve problems in a short time with a huge of calculations. Computers are one of the greatest inventions of the 20th century. It will be great if we can ask a computer to solve our problem. Programming languages such as Java or C++ has been a key factor for people to communicate and interact with computers. Today, more and more programming languages are created for many specific purposes like Go for microservices, R for statistics. However, these programming languages are so hard to learn and so complicated to install a compiler. For example, to use Java, you need to install a JDK or JRE with multiple steps and many configurations which are error-prone and hard to debug. These languages are not suitable for a simple program with a small number of code lines. Luckily, the core principle to create a new language is not so complicated. People only need a basic understanding of lexical, syntax and semantic specifications to create a simple programming language. Users can use their own simple programming languages to meet their requirements. However, one of the current challenges is that we lack tools for beginners to create a language on their own. In this project, an online compiler generator was developed so that create a compiler with declared lexical and syntax specifications. Specifically, users will key in the keywords and rules of syntax, then the generator will generate a compiler respect to provided tokens and rules. Users can run their script on the online editor or offline editor by downloading the generated compiler. This report was written to discuss every aspect of all the work, including the way of what I have done, the challenges I have met and comment on them. Moreover, remaining problems and future features are also mentioned so that this project can be continued in the next years and become a useful tool not only for NTU students but also for other engineers who want to create a programming language for their need. Bachelor of Engineering (Computer Science) 2018-04-23T14:27:26Z 2018-04-23T14:27:26Z 2018 Final Year Project (FYP) http://hdl.handle.net/10356/74039 en Nanyang Technological University 49 p. application/pdf |
institution |
Nanyang Technological University |
building |
NTU Library |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
NTU Library |
collection |
DR-NTU |
language |
English |
topic |
DRNTU::Engineering |
spellingShingle |
DRNTU::Engineering Ngo, Trung Le Bao Building yourself a compiler |
description |
Computers are a very powerful machine that can solve problems in a short time with a huge of calculations. Computers are one of the greatest inventions of the 20th century. It will be great if we can ask a computer to solve our problem. Programming languages such as Java or C++ has been a key factor for people to communicate and interact with computers. Today, more and more programming languages are created for many specific purposes like Go for microservices, R for statistics. However, these programming languages are so hard to learn and so complicated to install a compiler. For example, to use Java, you need to install a JDK or JRE with multiple steps and many configurations which are error-prone and hard to debug. These languages are not suitable for a simple program with a small number of code lines.
Luckily, the core principle to create a new language is not so complicated. People only need a basic understanding of lexical, syntax and semantic specifications to create a simple programming language. Users can use their own simple programming languages to meet their requirements. However, one of the current challenges is that we lack tools for beginners to create a language on their own.
In this project, an online compiler generator was developed so that create a compiler with declared lexical and syntax specifications. Specifically, users will key in the keywords and rules of syntax, then the generator will generate a compiler respect to provided tokens and rules. Users can run their script on the online editor or offline editor by downloading the generated compiler.
This report was written to discuss every aspect of all the work, including the way of what I have done, the challenges I have met and comment on them. Moreover, remaining problems and future features are also mentioned so that this project can be continued in the next years and become a useful tool not only for NTU students but also for other engineers who want to create a programming language for their need. |
author2 |
Ta Nguyen Binh Duong |
author_facet |
Ta Nguyen Binh Duong Ngo, Trung Le Bao |
format |
Final Year Project |
author |
Ngo, Trung Le Bao |
author_sort |
Ngo, Trung Le Bao |
title |
Building yourself a compiler |
title_short |
Building yourself a compiler |
title_full |
Building yourself a compiler |
title_fullStr |
Building yourself a compiler |
title_full_unstemmed |
Building yourself a compiler |
title_sort |
building yourself a compiler |
publishDate |
2018 |
url |
http://hdl.handle.net/10356/74039 |
_version_ |
1759855494557597696 |