/Tunga

Primary LanguageJava

Tunga Programming Language

Tunga is a programming language written in Java 11. The project utilizes several technologies, including:

  • Java 11
  • Gradle (project builder)
  • Guava
  • Junit
  • Logger
  • Truth
  • NullPointerTester
  • Spark
  • GSON

Features

Data types and operations:

  • Tunga provides robust support for number operations, including basic arithmetic operations such as addition, subtraction, multiplication and division. Additionally, it handles complex mathematical expressions using the Shunting Yard algorithm. Tunga has a library of math functions including sqrt, pow, sin, cos, pi, tan and abs. In addition, the max and min functions are supported, with a flexible number of arguments.
  • Tunga supports string variables and expressions. Added support for concatenating strings.
  • Tunga supports the boolean constants true and false. Also added supports boolean variables and relational expression.

Procedures:

  • Tunga supports procedures for displaying content on the screen, namely the print/println.

While Loop:

  • Tunga supports while loop as well as nesting of loops.

Operators:

  • Tunga supports binary operators for all data types.
  • Tunga includes support for unary operators for numbers and booleans
  • Tunga simplifies conditional expressions with the ternary operator, providing a concise syntax for built-in conditional statements.

How to run web server

To run the Tunga web server, follow these steps:

  1. Clone the repository to your local machine: git clone https://github.com/dmytkach/Tunga
  2. Build the project using Gradle: ./gradlew build
  3. Run the web server: ./gradlew :WebServer:run
  4. Once the server is running, you can access it in your web browser at [http://localhost:8080].

Installation

To install Tunga, clone the repository using Git