Skip to content

Latest commit

 

History

History
56 lines (48 loc) · 1.48 KB

README.md

File metadata and controls

56 lines (48 loc) · 1.48 KB

(=​`ω´=) MEWA

A simple Math EWAluator written on C.

Installation

git clone /~https://github.com/mandriota/mewa
cd mewa
make build
sudo ln -n ./bin/mewa /usr/local/bin

Featchers

  • Basic arithmetic operators
  • Basic logical operators
  • Operators priority and associativity
  • Type inference
  • Functions
  • Function specialization
  • Function ranged specialization
  • Command-line arguments and redirects handling
  • REPL
  • REPL: multiline input
  • REPL: history
  • REPL: escape handling
  • Calculation of maximal relative error

Naming Conventions

Constants, Enums, Defines

All caps, snake case.

Structs

Title, camel case.

Functions, local variables

All script, snake case.

Methods

Same as functions. First word is an abbreviation of struct name.

Names abbreviations list

Name Abbreviation
Primitive PM/PRIM
Reader RD
Token TK
TokenType TT
Lexer LX
Node ND
NodeType NT
Parser PR
Priority PT
Interpreter IR

Acknowledgements