semvec/pypi-packages huggingface dataset:
flang 0.1.1
A simple stack-based language for teaching programming concepts.
License: MIT
Keywords: stack programming teach

# Flang

A stack-based programming language for teaching basic concepts.

---

Flang is an overly-simple programming language.

It's intended for teaching, but isn't quite complete yet.

For now, this is the feature list.

- [X] Number type: Int
- [X] Number type: Float
- [ ] Number type: Rational
- [X] Function type
- [X] String type (UTF-8)
- [X] Human-readable error messages, designed for beginners.
- [-] As much parse-time safety as is possible.
- [ ] Loops? (This may not happen, as we can push functions to the stack)
- [ ] Conditionals
- [ ] Swap function, to rearrange the stack
- [ ] Slice function, to more easily rearrange large parts of the stack
- [X] Print function, including using special characters inside strings
- [X] Print/literal function, not including using special characters inside strings
- [X] Print/stack function, for displaying the stack
- [X] Exit function
- [X] Reset function, to set the stack back to nothing
- [X] Reverse function, to rearrange the stack
- [X] Push function, for placing typed objects on the stack
- [X] Add function, for mathematics or combining strings
- [X] Take function, for mathematics
- [X] Times function, for mathematics
- [X] Divide function, for mathematics
- [X] Pop function, for executing functions on the stack
- [X] Peek function, for executing functions on the stack
- [X] Drop function, for not executing functions on the stack
- [X] Read-Eval-Print-Loop
- [X] Ability to execute a file
- [X] Comments. Can be nested.
- [ ] User functions.
- [ ] String Library for working with strings.
- [ ] Help function
- [ ] Interactive Tutorial function
- [ ] Documentation

## Decisions to make:

- [ ] Case insensitivity. Should Flang be case-sensitive or not?
- [X] Indexing. Flang will be 1-indexed, to make new adoption easier.
- [ ] User Functions. What kind of shape should these take? How could they be written?
- [ ] Hash Table Type. Do we need it? How would it be used?
- [ ] Mini-Stack Type. Do we need it? How would it be used? (Think Linked-List)
- [ ] A library of tools for strings is needed. But, it needs to be defined.
- [ ] Semantic Versioning. What API will be covered by semver?

---

## Install

Don't.

This is alpha-software, and breaking is going to happen a lot.

The documentation that is vitally needed, isn't anywhere near ready for the public.

Right... So, if you're insisting on ignoring all that:

The latest release can be installed via pip:

    pip install flang

Or, you can install from the git repository to get all the very latest changes:

    git clone https://gitlab.com/shakna-israel/flang.git
    cd flang
    python3 setup.py install

---

## Usage

You can explore Flang in two ways:

If you have a file filled with Flang commands:

    flang filename

Or, you can enter the interactive Read-Evaluate-Print Loop:

    flang repl
madbot-meta 3
Meta package to MADBOT, installs all dependancies.
License: MIT

MADBOT is a python3 framework to use if you want to program IRC or XMPP bot.

PROVIDES

| CLI, IRC and XMPP bots.
| Object that can save/load json file.
| ReST server.
| RSS fetcher.
| UDP to channel forwarding.
| Scan email into MADBOT objects.
| easy programmable 

Purpose is to make an event logger (logbook) that can also register the blood and urine tests with yet to be sensors that can measure things like neurotransmitter levels, medicine bloodlevels, hormone leves, etc.

This program should be able to log those sensor data and be able to match logbook events with measured "internals".

CONTACT

| Bart Thate
| botfather on #dunkbot irc.freenode.net
| bthate@dds.nl, thatebart@gmail.com


| MADBOT is code released onder een MIT compatible license.
| MADBOT is een event logger.