Skip to main content

python with braces.

Project description

nestPython

"what if python, with braces, one line?"

SETUP

Install nestPython by executing:

$ pip install nestpython

After importing;

  • In order to compile a string from nestPython to python, use nestpython.ncompile(string)

  • In order to execute a nestPython string, use nestpython.nexec(string)

    For both, optional argument indent-level determines the indentation increment in the resulting python file. It is set to 1 by default.

  • To execute and compile files and folders, use the nestpython.files module:

    • nestpython.files.ncompile(file) compiles the given file to a string
    • nestpython.files.nexec(file) executes the file
    • nestpython.files.build(dir, new_dir) builds an entire golder
    • arguments can be provided.

Use .npy for nestPython files, .npx for nestCython files.

FEATURING:

braces

Use {, ; and } instead of indentation! Indentation and newlines in the source files will be ignored. e.g.:

n = input('Enter Number: ');
if (n % 2 == 0) {
	print('n is even')
} else {
	print('n is odd')
}

Use ~{ as a shorthand for while True {.

syntactical changes

Several keywords are altered:

Python nestPython Python nestPython
def := del ~>
return => and &&
in -> or ||
not in !> := <-
is =& assert ?!
is not !=& case ?
lambda ;= ; ,,
-> >: // ~/
+= 1 ++ -= 1 --
{ -{ } }-

A variable like return will be replaced with return_ on transpilation. pass is not required: simply use {}. Note that one-liner functions can still be written with colons: := foo(): => bar

Cython keywords are also altered for .npx:

Cython nestCython
cdef $=
cpdef ~$=

comments

  • For block comments, use /*, */.
  • For line comments, use //.
  • Block and line comments will be ignored during compilation.
  • For comments that need to be transpiled into python ones, use /|, |\ .

(to be continued)


github : https://github.com/slycedf/nestpy

pypi : https://pypi.org/project/nestpython

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nestpython-0.3.14.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

nestpython-0.3.14-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file nestpython-0.3.14.tar.gz.

File metadata

  • Download URL: nestpython-0.3.14.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.14

File hashes

Hashes for nestpython-0.3.14.tar.gz
Algorithm Hash digest
SHA256 d24c80814b14c4166c1d8384f42f6ca36dd47a8605b35d6d40ce889870a5ab1e
MD5 fe745a486f366549936aa8a3a2cea613
BLAKE2b-256 4f3640a3377d61f4a15b748408ef36ea92efbd77e0f5f854778b8ea2adef57bf

See more details on using hashes here.

File details

Details for the file nestpython-0.3.14-py3-none-any.whl.

File metadata

  • Download URL: nestpython-0.3.14-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.14

File hashes

Hashes for nestpython-0.3.14-py3-none-any.whl
Algorithm Hash digest
SHA256 317a39dbdd54c9b2e90e0ce2669d7af6f2be9688aabf83a49897c62af8f066b2
MD5 759a34132f25241427691e9041176d22
BLAKE2b-256 1bf62c47ca958bf0e91e8b8b28767188890db496f53de963862a615a2cbb185e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page