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.
ArcaneScript is continuously evolving, with new features being added to enhance its capabilities. Here's an overview of the current and upcoming language features:
The project is organized into the following directories:
/backend
: Contains the backend services.
/arcaneInterpreter
: The core interpreter for the ArcaneScript language./ArcaneHttpServer
: HTTP server to handle requests and interactions./frontend
: Contains the frontend HTML file and associated assets.Clone the repository:
git clone https://github.com/yourusername/arcane-script.git
cd arcane-script/backend
Build the backend projects:
mvn clean install
This command will build both the arcaneInterpreter and ArcaneHttpServer modules.
The frontend is a static HTML file that can be served directly. No additional setup is required.
To run the project locally:
Start the backend server:
cd arcane-script/backend/ArcaneHttpServer/target
java -jar ArcaneHttpServer.jar
Open the frontend HTML file in your web browser:
cd arcane-script/frontend
Open the HTML file in your preferred browser.
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.
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.
goldengine
library, which provides the foundation for the ArcaneScript interpreter.