--------------------
sm_calculator (SM Calculator) tool - is a multi-platform (Windows/Linux) open-source console calculator,
implementing simple language for processing of mathematical expressions.
--------------------
features of the SM Calculator:
- Multi-platform application: there are builds for Windows 64/32 (.zip) and Linux 64/32 (.tar.gz);
- Various types of values (64 bits integers, 64 bits floats, strings);
- Various float constants (pi, exp,...);
- Solving of mathematical expressions, using basic arithmetic operators;
- Solving of mathematical expressions, using bracket delimiters
'(' and ')' (in one expression) and delimiters ';', '\n';
- Solving using suite of mathematical (including trigonometric, logarithm, exponentiation)
functions;
- Solving using bitwise functions and operators;
- Various types of entering and output formats of integers (decimal, octal, hexadecimal,
binary formats);
- Various values of unit for measuring of angles (radians, degrees, gradians), which are used
by trigonometric functions;
- Support of output properties (precision) of float values;
- Suite of converting functions (various values of unit for measuring of angles, various
types of entering and output formats of integers);
- Suite of commands, which provide setup of configuration of SM Calculator;
- Several modes of execution (processing of files, processing of expressions, obtained via command line,
processing of expressions in interactive mode, using standard input/output devices);
- Control/administration the creation/start of the log of the sm_calculator (SM Calculator) tool:
start without log output (command line option: -q, --no_log)
changing the path of the created/opened log file (command line option: -l, --log_file);
- Access to the sm_calculator (SM Calculator) tool can be included into $PATH (Windows/Linux) and
the sm_calculator (SM Calculator) tool can be launched from any current directory;
- Detailed processing of syntax error(s);
- Restoring of syntax parsing after error(s);
- Reentrant implementing of the parser, i.e. the parser can work in multi-thread mode;
- Help (command: help[;] or command line option: -h, --help);
SM Calculator supports follow modes of execution:
- processing of file, that contains expression(s);
- processing of command line expression(s);
- interactive mode (user enters expression(s), using standard input device/console).
User can use same expressions in all these modes (processing of file,
processing of command line expression(s), interactive mode);
--------------------
Technologies and tools:
- Windows Platform: C/C11, CMake, Visual Studio 2019 (including NMake tool), flex, bison,
diff tool, Python 3, Git, Windows Batch scripts, Tortoise Git client;
- Linux Platform: C/C11, CMake, gcc, Make Tool, Kdbg, flex, bison,
diff tool, Python 3, Git, Bash scripts, Git;
- Virtual Box (Virtualization Software), Various distros of Linux (Debian 9/10, OpenSUSE, Ubuntu,
Mint);
--------------------
Links:
sm_calculator on GitHub:
https://github.com/smansoft/sm_calculator
Version 0.2.0.4:
http://smansoft.com/sm_calculator/0.2.0.4/
http://smansoft.com/sm_calculator/0.2.0.4/License.txt
http://smansoft.com/sm_calculator/0.2.0.4/ChangeLog.txt
http://smansoft.com/sm_calculator/0.2.0.4/ReadMe.txt
http://smansoft.com/sm_calculator/0.2.0.4/Install.txt
http://smansoft.com/sm_calculator/0.2.0.4/Help.txt
http://blog.smansoft.com/2021/01/24/multi-platform-open-source-sm-calculator-sm-calculator-tool-0.2.0.4/
http://blog.smansoft.com/2020/06/28/building-the-sm-calculator-sm-calculator-solution-0.1.0.2/
http://blog.smansoft.com/products/sm-calculator/
Examples, screenshots (.jpeg), video demo (.mp4), demo log files (.log):
http://smansoft.com/sm_calculator/0.2.0.4/examples/
Version 0.1.1.3:
http://smansoft.com/sm_calculator/0.1.1.3/
http://smansoft.com/sm_calculator/0.1.1.3/ReadMe.txt
http://smansoft.com/sm_calculator/0.1.1.3/Install.txt
http://smansoft.com/sm_calculator/0.1.1.3/License.txt
http://blog.smansoft.com/2020/08/10/multi-platform-open-source-sm-calculator-sm-calculator-tool-0.1.1.3/
http://blog.smansoft.com/2020/06/28/building-the-sm-calculator-sm-calculator-solution-0.1.0.2/
Examples, screenshots (.jpeg), video demo (.mp4), demo log files (.log):
http://smansoft.com/sm_calculator/0.1.1.3/examples/
Version 0.1.0.2:
http://smansoft.com/sm_calculator/0.1.0.2/
http://smansoft.com/sm_calculator/0.1.0.2/ReadMe.txt
http://smansoft.com/sm_calculator/0.1.0.2/Install.txt
http://smansoft.com/sm_calculator/0.1.0.2/License.txt
http://blog.smansoft.com/2020/06/28/multi-platform-open-source-sm-calculator-sm-calculator-tool-0.1.0.2/
http://blog.smansoft.com/2020/06/28/building-the-sm-calculator-sm-calculator-solution-0.1.0.2/
Examples, screenshots (.jpeg), video demo (.mp4), demo log files (.log):
http://smansoft.com/sm_calculator/0.1.0.2/examples/
Version 0.0.1.1:
http://smansoft.com/sm_calculator/0.0.1.1/
http://smansoft.com/sm_calculator/0.0.1.1/ReadMe.txt
http://smansoft.com/sm_calculator/0.0.1.1/Install.txt
http://smansoft.com/sm_calculator/0.0.1.1/License.txt
http://blog.smansoft.com/2020/06/24/multi-platform-open-source-sm-calculator-sm-calculator-tool-0.0.1.1/
http://blog.smansoft.com/2020/06/25/building-the-sm-calculator-sm-calculator-solution-0.0.1.1/
--------------------
Copyright (C) 2020-2021 SManSoft
Sergey Manoylo