Mrya is a dynamic, object-oriented scripting language with a clean and approachable syntax. It's designed to be easy to learn for beginners while being powerful enough for building applications, from command-line tools to web servers.
- Object-Oriented Programming: Full support for
class, inheritance (<), and special methods (_start_,_out_). - Built-in Web Framework: Create web servers with an elegant decorator-based routing system (
%web.route). - HTML Templating: Dynamically render HTML templates with the native
htmlpackage. - Rich Standard Library: Includes modules for file system operations (
fs), time, string manipulation, and more. - Modern Syntax: Features like H-Strings for formatting (
#"Hello <name>!"#), lists ([]), and maps ({}). - Robust Error Handling: Gracefully manage errors with
try/catch/endblocks. - First-Class Functions: Use functions as variables and enhance them with decorators (
%).
The complete language syntax, features, and a list of all built-in functions are documented in COMMANDS.md.
For building web applications, see the Web Package Guide.
This roadmap outlines the planned features and goals leading up to the Mrya 1.0.0 stable release.
- JSON Module: A crucial native module with
json.parse()andjson.stringify()to make the web framework's API capabilities much more powerful. - Multi-line Comments: Add support for C-style block comments (
/* ... */) for better code documentation. - Dynamic URL Paths: Enhance the web package to support routes with parameters, like
%web.route("/users/<id>").
- Switch Statement: Implement a
switchstatement for cleaner, more efficient handling of multiple conditions, as an alternative to longif-else ifchains. - POST Request Body Parsing: Automatically parse
application/x-www-form-urlencodedandapplication/jsonrequest bodies in the web framework, making them available in therequestobject.
- Package Manager (Alpha): Introduce a basic command-line tool for fetching and managing third-party Mrya packages from Git repositories.
- Standard Library Expansion: Add more utility functions to the
string,fs, andmathmodules based on community feedback. - Performance Profiling: Analyze and optimize the interpreter for common bottlenecks before the stable release.
- Bug Squashing: Focus entirely on fixing any remaining bugs and ensuring maximum stability. No new features will be added.
- Complete Documentation Review: Ensure
COMMANDS.md,web_package.md, and all other documentation are complete, accurate, and ready for a stable release. - Official Version 1 Release!
Versions Check the wiki for information on how to setup and use Mrya.
Mrya is licensed under a custom License.
Created by SharkBlocks00
GitHub: https://github.com/sharkblocks00
Website: https://sharkblocks00.com