generic-github-user / turquoise

My programming language

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Turquoise

Features

  • Infix notation for a variety of mathematical operators
  • Shorthand functions for common operations and expressions
  • Seamless integration of calculations involving numbers, symbols, strings, booleans, lists, and more

Several tools for debugging and development are also under development or planned:

Design Philosophy

Brevity

Turquoise draws on the object-oriented principles of languages like Python and JavaScript, but emphasizes concision to accelerate the development workflow.

Flexibility

Turquoise's data structures and operators are structured to be infinitely reconfigurable to the needs of your task.

Efficiency

A core part of Turquoise's design philosophy revolves around making the planning -> development -> feedback loop as seamless and pain-free as possible. The language is dynamic and meant to be interacted with as a key part of the development process.

Interoperability

This is currently a (very) new and feature-limited programming language, so it is intended to work cohesively with other technologies, libraries, and modules while maintaining a reasonable dependency scope for the language's core features. Eventually, Turquoise will be able to run arbitrary Python code on representations of its data structures and likewise, snippets of Turquoise code will be able to be executed with a Python library. Transpiling (transcompiling) is also being explored as a way to bridge the gap between Turquoise's methodology and Python's massive ecosystem of modules and libraries.

Intuitiveness

Everything in the language should, to a reasonable extent, do what you expect it to. When confusion arises, efficient strategies for clarifying the language's behavior will be available.

Consistency

Exceptions to rules and principles should be minimized wherever possible in order to make the language's basic concepts universally applicable.

Contributing

Turquoise is not accepting contributions at this time. If there is a feature you want considered for the language, please feel free to open a new issue. Contributions of pull requests and specific functionality may be accepted in the future once the core features of the language have been built out and it is reasonably stable.

This document was generated from turquoise.ipynb at 2021-06-04 20:18:52

About

My programming language


Languages

Language:Jupyter Notebook 89.5%Language:Python 10.5%