Simple Process REPL
A YAML datastore, a config file, a namespace manager, and an interpreter walk into a bar...
This has been changing a lot, the wiki is a bit chaotic. Important concepts are:
- datastore/appstate in the as namepace
- The With stack.
- The results stack.
Short-cuts:
- Read the Wiki
- Read all the help for all the namespaces.
Installation
pip install Simple_Process_REPL
You will also need to install dialog and zbar for the qrcode and barcode library. If you desire particle.io functionalities you will also need to install the particle.io cli.
on Arch Linux
sudo pacman -S dialog
or on Apple
brew install dialog
For Zbar follow the instructions here.
For particle.io functionalities follow the instructions here.
Start the REPL
To start the REPL;
SPR -r
What is it?
Many things.
In a way, SPR feels like python did in 1995. It was the glue that was easy to use to put things together with.
SPR is a fun to use tool to create applications which do processes. It's simple enough to be transparent and easy, and smart enough to be a pleasure. Anything serious and there is always python right there.
SPR can be used to interactively create and run a process as if it is an application. Possibly with nothing but a configuration file.
SPR is actually a very simple interpreter with an interactive REPL.
The code is data, and the data is code. Function parameters are automatically bound if they are needed and can be found.
SPR code is really simple. SPR only knows YAML, words, strings and numbers. If you give it a list, it will try to look up what you gave it and execute it. So you can make lists and give them names, and make lists of lists, all of which turns into a process which will try to do it's thing, and if any step fails, the whole process fails. All with nice error handling, logging, dialogs, configuration, integrated help, self introspection, a REPL, along with various methods of execution.
To sum up.
This is a really simple interpreter, think of it as a simple glue layer on top of python.
It's got some really handy extensions for making processes, and extensions are easy to make from a bit of spr or python code. It will even create an extension project template for you. That's one of it's many commands.
All with nice configuration and yaml datastore management, logging, and error handling. It runs like an application once it has a process, and it can repeat it interactively, reporting failures. And it has a REPL. So you can play with it interactively, building things.
There's a big yaml datastore Tree and whatever python functions you might want to use in your SPR functions.
Failures are expected. The REPL makes it easy.
The parts.
- The Interpreter/Repl
- Namespaces
- appstate/ as ie. the datastore.
- a with stack
- Automatic parameter binding.
- results stacks.
- yaml datastore data structure, configuration, state, etc...
- SPR/Python extensions that are built in.
- Any python module you care to import.
Metadata
Release files for Simple-Process-REPL 2.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| Simple_Process_REPL-2.0.4.tar.gz | 42.5 kB | Without provenance | Details for Simple_Process_REPL-2.0.4.tar.gz |
Release files / Simple_Process_REPL-2.0.4.tar.gz
| Download URL | Simple_Process_REPL-2.0.4.tar.gz |
|---|---|
| Size | 42.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f6cb3d08cafd8a7f8e70fec3d3e263dd2219c8b2ab05b640553a92419a20f06a
|
|
BLAKE2b-256 checksum How to use checksums |
472d4e9b87f7c4470e6b9b09b1c74df0c3ebff6ddecfe5bea2bda70ecaf6f8b4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
|
Security for Simple-Process-REPL 2.0.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.