Skip to content

Puneeth-A-R/Simplr

Repository files navigation

Simplr

An interpreted programming language created from scratch using the python programming language.
I've very creatively named this language as Simplr :)

I worked on this project over a period of 4 months (From mid of December 2021 to about the mid of April 2022).
Simplr programming language currently supports the following features:

  • Handles simple and complex mathematical expressions (Along with Algebraic precedence and associativity).
  • Runtime error handling mechanisms.
  • Helpful error messages (Points the row and column number of the error).
  • Generates entire Traceback for the errors encountered.
  • Handles variables, comparision operators (==, !=, <, >, <=, >=), logical operators (and, or, not) and boolean operators (0, True, 1, False).
  • Has support for conditionals (IF THEN and ELSE).
  • Has support for loops (FOR TO and WHILE THEN).
  • Has the RETURN, CONTINUE and BREAK statements.
  • Allows for user defined functions (Also handles errors such as passing too many or too few arguments etc...)
  • Simplr has String type and also supports common operations on strings (Concatination, multiplication etc...)
  • Simplr allows for creation of Lists and supports common opperations on it (Adding/appending elements, removing elements, merging lists, indexing lists, iterating over a List's elements).
  • Supports a host of intrinsic functions (print(), clear(), cls(), input(), input_int(), is_num(), is_str(), is_list(), append(), extend(), pop()).
  • Simplr can be used in an interactive shell-like interface and also by running a pre-written .myopl file.
  • The RUN() statement allows you to run a .myopl file.

About

An interpreted programming language created from scratch by me.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages