Metadata-Version: 2.1
Name: pybex
Version: 0.0.2
Summary: Python code analyzer.
Home-page: https://github.com/0dminnimda/pybex
Author: 0dminnimda
Author-email: 0dminnimda.contact@gmail.com
License: MIT
Project-URL: Bug tracker, https://github.com/0dminnimda/pybex/issues
Platform: UNKNOWN
Classifier: Development Status :: 1 - Planning
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Pre-processors
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Requires-Python: >=3.6
Description-Content-Type: text/markdown
License-File: LICENSE

# **Py**thon **B**ot **EX**pression (PyBEX)

A simple Interpreted Dynamic Programming Language for describing chat bot commands and behavior.

## Installing PyBEX

PyBEX is available on PyPI:

```console
python -m pip install -U pybex
```

## Language Elements

### String

```
"Hello, World"

'single or double - doesn\'t matter'

"""multiline
ones"""

'''are
supported'''
```

### Number

```
# integers
69
420
1_000_000  # 1000000

# and floats
3.1415
5e-10
```

### Variable

```
args
sender
_underscore
```

### Funcalls

```
f()
f(g())
f(69, 420, 3.1415)
f("can take in any other language element")
```

## Interactive mode

use command:
```console
python -m pybex
```

```
bex> say(99,
 ... "bottles of beer",
 ... "on the wall.")
99 bottles of beer on the wall.
bex> if(1, "pi", 3.1415)
'pi'
```

## Interpret from the file

use command:
```console
python -m pybex <file_path>
```

(replace <file_path> with path of your script file)

```
say(if(
    int(input()),
    "non-zero input",
    "zero input"
))
```

---

[Inspiration for the project](https://gitlab.com/tsoding/bex)


