Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/abdur-rahmaanj/greenberry

A one-line statement language with grammar and infinite look-ahead
https://github.com/abdur-rahmaanj/greenberry

cli compiler hacktoberfest interpreter lexer-parser new-language

Last synced: 13 days ago
JSON representation

A one-line statement language with grammar and infinite look-ahead

Awesome Lists containing this project

README

        

[![first-timers-only](https://img.shields.io/badge/first--timers--only-friendly-blue.svg?style=flat-square)](https://www.firsttimersonly.com/)
![Open Source Love](https://img.shields.io/badge/Open%20Source-%E2%9D%A4-pink.svg)
![MadeinMoris](https://img.shields.io/badge/Made%20in-Moris-green.svg)

# greenberry

A one-line statement programming language, complete with classes, cli and file compatible.

![logo](https://github.com/Abdur-rahmaanJ/greenberry/raw/master/docs/favicon.ico 'greenberry')

```
python -m pip install greenberry
greenberry file.gb
```

## contributing countries

🇲🇺 🇲🇾 🇸🇮 🇰🇪 🇺🇸 🇮🇳

🇨🇦 🇧🇳

## 🔗 links

- [website](https://abdur-rahmaanj.github.io/greenberry/)
- [lang reference](https://abdur-rahmaanj.github.io/greenberry/syntax.html)
- [we have a Discord channel!](https://discord.gg/pffxfQE) - Join for questions!

## 📖 contributing guidelines

Read [greenberry/theory_notes_simple.py](https://github.com/Abdur-rahmaanJ/greenberry/blob/master/src/greenberry/theory_notes_simple.py)

```
python -m pip install -e .
python -m pip install -r reqs/dev.txt
pre-commit install
```

## 🌄 contribution areas

- syntax : propose new syntax or suggest improvements for existing one
- language : in the way python code is written so as to be more clear, efficient for example
- gui : either ide or others, add new functionalities or improve UX
- cli : improve cli experience, add new features
- compiling engine : improve parser, add new areas of usage (of greenberry, like on arduino? an electronics library?). also add support for approved new syntax
- website : improve website, update changelog (or implement changes to do this automatically)

## 🍂 python version

3.4 (moving to 3.7 if you PR a change using a 3.7 feature)

## 🏢 structure notes

- engine : [greenberry/greenberry.py](https://github.com/Abdur-rahmaanJ/greenberry/blob/master/greenberry/greenberry.py)
- website : [docs/](https://github.com/Abdur-rahmaanJ/greenberry/tree/master/docs)

## 🌊 run files

Read [here](https://github.com/Abdur-rahmaanJ/greenberry/blob/master/code_running_instructions.md) or follow below

### REPL 🔧

Just run `python gb_repl.py`

### .gb file 📁

Write in _main.gb_ and then save and run `python gb_main.py`

### IDE 🖥️

Run `python gb_ide.py` write and run or load a _.gb_ file!

## 📋 TODO

- [ ] Refining print
- [ ] Add more support for eval
- [x] Add parameters to functions and classes
- [ ] Allow non-static referencing of function and classes
- [ ] New syntax and implementation
- [ ] Expand use

## 📧 quick contact

[Abdur-Rahmaanj](https://github.com/TimThuma) : [email protected]

[TimThuma](https://github.com/TimThuma) : [email protected]

## credits

[@arwinneil](https://github.com/arwinneil) for opensource and madeinmoris badges