You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A comprehensive, user-friendly math parser for Lua, featuring support for variables, functions and customizable operators and operator precedence.
8
8
@@ -16,40 +16,40 @@ A comprehensive, user-friendly math parser for Lua, featuring support for variab
16
16
17
17
</div>
18
18
19
-
## 🎯 Introduction
19
+
## Introduction
20
20
21
21
Welcome to MathParser.lua, a comprehensive math parser tailored specifically for Lua. With its structured design and well-commented code, this parser is accessible to both newcomers and seasoned developers alike.
22
22
23
23
MathParser.lua is capable of handling a wide array of mathematical problems, providing a reliable solution for your computational needs. But it doesn't stop there. It offers a high degree of customization, allowing you to extend its functionality by adding your own functions, variables, and operators. You even have the flexibility to alter the precedence of operations to suit your needs. For instance, you can configure the parser to prioritize addition over multiplication - a level of customization that truly sets MathParser.lua apart from other math parsers.
24
24
25
25
One of the defining features of MathParser.lua is its thorough test coverage. We've ensured that every line of code is put through rigorous testing, guaranteeing its reliability and robustness. Furthermore, it's compatible with various Lua versions, starting from Lua-5.1, including LuaJIT. It's even compatible with Luau, making it a viable choice for your Roblox projects.
26
26
27
-
## 📖 Table of Contents
27
+
## Table of Contents
28
28
29
-
-[🚀 MathParser.lua - A Robust Lua Math Parser](#-mathparserlua---a-robust-lua-math-parser)
30
-
-[🎯 Introduction](#-introduction)
31
-
-[📖 Table of Contents](#-table-of-contents)
32
-
-[🎁 Features](#-features)
33
-
-[🛠 Usage](#-usage)
34
-
-[🔰 Getting Started](#-getting-started)
35
-
-[🔱 Advanced Usage](#-advanced-usage)
36
-
-[🛣️ Roadmap](#️-roadmap)
37
-
-[📜 License](#-license)
29
+
-[MathParser.lua - A Robust Lua Math Parser](#mathparserlua---a-robust-lua-math-parser)
1.**User-Friendly**: MathParser.lua boasts an intuitive API, making it a breeze to integrate into your projects. Its comprehensive documentation provides clear examples and explanations, while its error messages are designed to pinpoint the exact location of issues, reducing debugging time.
44
44
2.**Safe and Secure**: Safety is a priority with MathParser.lua. It avoids the use of the `load` function, which can execute any Lua code. Instead, it employs a custom parser to process input expressions, ensuring only valid mathematical operations are executed. If an input is invalid or potentially harmful, MathParser.lua throws an error, providing detailed information about the issue.
45
45
3.**Compact and Efficient**: MathParser.lua is a lean project with no external dependencies, making it easy to incorporate into your codebase. Its compact size doesn't compromise its functionality, offering a powerful tool that's easy to understand and modify.
46
46
4.**Highly Customizable**: MathParser.lua offers extensive customization options. You can add custom functions, variables, and operators, and even change the order in which operations are done. This flexibility allows you to tailor MathParser.lua to your specific needs, making it a versatile tool for a wide range of applications.
47
47
48
-
## 🛠 Usage
48
+
## Usage
49
49
50
50
MathParser.lua is a versatile tool that can handle everything from simple arithmetic to complex mathematical expressions. Whether you're integrating it into a large project or using it for quick calculations, here's a comprehensive guide to get you started.
51
51
52
-
### 🔰 Getting Started
52
+
### Getting Started
53
53
54
54
Using MathParser.lua is as easy as 1-2-3. Here's a quick example to get you started:
It was just a simple example. For more advanced usage, let's move on to the next section.
72
72
73
-
### 🔱 Advanced Usage
73
+
### Advanced Usage
74
74
75
75
MathParser.lua is not just a simple math parser, it's a powerful tool that can be customized to suit your needs. It supports the addition of custom functions, variables, and operators, allowing you to extend its functionality beyond basic math operations. Let's use all these features to demonstrate how you can use MathParser.lua in more advanced scenarios.
For more details, refer to the [documentation](docs/Documentation.md), the [API source](src/MathParser.lua), or the [full example usage file](./example.lua).
115
115
116
-
## 🛣️ Roadmap
116
+
## Roadmap
117
117
118
118
MathParser.lua is just getting started. Here are some of the enhancements and features we're planning for future releases:
119
119
120
120
-[ ] Introduce support for internal functions that can modify the evaluator's state at runtime. This includes setting variables and jumping to different parts of the expression.
121
-
-[] Package MathParser.lua into a single file for easy distribution and usage. We also plan to make it available on LuaRocks and the project's GitHub releases.
121
+
-[x] Package MathParser.lua into a single file for easy distribution and usage. We also plan to make it available on LuaRocks and the project's GitHub releases.
122
122
-[ ] Implement full support for Luau to cater to the Roblox developer community.
123
123
-[ ] Expand the mathematical function library to include advanced functions not available in the standard Lua math library, such as factorial, permutations, and combinations.
124
124
-[ ] Incorporate support for complex numbers to handle more sophisticated mathematical problems.
@@ -128,6 +128,6 @@ MathParser.lua is just getting started. Here are some of the enhancements and fe
128
128
129
129
We welcome feature requests and suggestions for improvements. Feel free to open an issue or a pull request. Your feedback is highly appreciated!
130
130
131
-
## 📜 License
131
+
## License
132
132
133
-
MathParser.lua is (re)licensed under the [MIT License](LICENSE).
133
+
MathParser.lua is (re)licensed under the [MIT License](LICENSE).
0 commit comments