amritrout / ArcaneScript

ArcaneScript is a custom programming language developed to explore language design and interpretation. This project includes the development of both the ArcaneScript language and its online Runner.
https://arcanescript.netlify.app/
6 stars 3 forks source link
css hacktoberfest hacktoberfest-accepted hacktoberfest2024 html java javascript language parser

ArcaneScript

ArcaneScript is a custom programming language developed to explore language design and interpretation. This project includes the development of both the ArcaneScript language and its online Code Runner. The grammar was written using GOLD Parser and the interpreter in Java, enabling users to write, test, and execute ArcaneScript code.

Features

Language Features

ArcaneScript is continuously evolving, with new features being added to enhance its capabilities. Here's an overview of the current and upcoming language features:

Currently Implemented Features - **Mathematical Operations**: Support for basic arithmetic and complex mathematical expressions. - **Comparison Operations**: Ability to compare values and expressions. - **Loops**: For & While loop. - **Arrays**: Support for one-dimensional arrays - **Functions**
Upcoming Features (Version 2) - **2D Arrays** - **Linked List** - **Stack** - Additional data structures

Technologies Used

Project Structure

The project is organized into the following directories:

Setup Instructions

Prerequisites

Backend Setup

  1. Clone the repository:

    git clone https://github.com/yourusername/arcane-script.git
    cd arcane-script/backend
  2. Build the backend projects:

    mvn clean install

    This command will build both the arcaneInterpreter and ArcaneHttpServer modules.

Frontend Setup

The frontend is a static HTML file that can be served directly. No additional setup is required.

Usage

Running Locally

To run the project locally:

  1. Start the backend server:

    cd arcane-script/backend/ArcaneHttpServer/target
    java -jar ArcaneHttpServer.jar
  2. Open the frontend HTML file in your web browser:

    cd arcane-script/frontend

    Open the HTML file in your preferred browser.

Live Version

You can access the live version of ArcaneScript without any local setup:

Use the Netlify-hosted frontend to write and run ArcaneScript code, which will be processed by the AWS-hosted backend.

Contributing

We welcome contributions to ArcaneScript! If you have suggestions for improvements or encounter any issues, please feel free to open an issue or submit a pull request. For significant changes, please open an issue first to discuss your proposed changes.

Acknowledgments