From 5907457907b864c084199929b8f04d3d5fa1f3cf Mon Sep 17 00:00:00 2001 From: Timerix22 <87668556+Timerix22@users.noreply.github.com> Date: Fri, 22 Dec 2023 23:59:52 +0600 Subject: [PATCH] Created README.md --- README.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..b1b69ae --- /dev/null +++ b/README.md @@ -0,0 +1,44 @@ +# FusionCalculator +The calculator written in [Fusion language](https://github.com/fusionlanguage/fut). Can be translated to C and C#. Can be compiled as executable or library. + +### Building +Requirements: fut, bash, dotnet8 (for c#), gcc (for C) + +Just generate C# source files: +```shell +./build_cs.sh --translate-only +``` +Build C# executable: +```shell +./build_cs.sh +``` +Build C executable: +```shell +./build_c.sh +``` +Build C executable with debug symbols: +```shell +./build_c.sh --debug +``` + +## Executable usage +Just call exe file in bin/ with math expression arguments: +```shell +bin/FusionCalculator.exe 1+2 +3 +bin/FusionCalculator.exe '11/(99-88)' +1 +bin/FusionCalculator.exe '-1+6*(-2)' +-13 +``` + +## Library usage +The public interface is very simple: +```cs +namespace FusionCalculator { + public static class Calculator { + public static double Calculate(string); + } +} +``` +Just call Calculate and get the result!