Skip to main content

Python-Compiler and API for the Para language

Project description

paralang_base - The Python Module for the Para Compiler

License Lines of Code Py Versions Documentation Status

Introduction to paralang_base (as Python Module)

The para module serves the purpose of combining the entire compiler with lib into a simple module, which can be imported and used in ways that are not implemented in the standard CLI. This means both the preprocessor and compiler are available for customisable usage.

Installation

python3 -m pip install -U paralang_base

With specific version:

python3 -m pip install -U paralang_base==version

Para Language

Para (From Greek "para": Beside/Alongside) is a programming language that is designed to integrate other languages and allow for advanced management of embedded programs / code-bases inside a program, where the language will serve as a base for writing overhead and "connector" programs, which can manage instances, listen for events, stop and start processes and manage in- and out-data.

Runtime Info

There are two different usage (run) options where the compiler can be used:

  • Python module, which is either the source code execution or usage of the imported module
  • Compiled distribution, which is the compiled version of Para, which included the CLI. Due to the difference in implementation, only this version can be configured, since the python module is intended for customised behaviour, meaning the pre-configured runtime options are not available.

To differentiate between the two runtime modes, there are constant variables that are set during initialisation:

  • DIST_COMPILED_VERSION: bool - If True it's the distribution version, aka. called using the compiled binaries
  • MODULE_VERSION: bool - If True it's the module version

Para CLI - paralang_cli

The CLI itself is an extension to the base module, as it provides extended graphical logging and configuration options from the console. It includes the base Para compiler module, and extends its functionality and provides scripts that are added automatically to the path on installation.

This means after installation of paralang_cli, you can use the Para compiler directly with a CLI (command line interface).

To show the current Para installation version, you can use the following:

para --version

The PyPi release of the CLI can be found here.

Contributing and Development

Due to active and early development not available. (Can be expected with later versions, such as v0.1 or v0.2)

Reason for that is the there is not yet a lot that can be contributed to, since the project is in early build up. This means contributions are going to be limited until the basic structure is finished.

Copyright and License

License FOSSA Status

Copyright (C) 2021-2022 Luna Klatzer

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

See the LICENSE for information on terms & conditions for usage.

FOSSA License Report

FOSSA Status

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

paralang-base-0.1.dev7.tar.gz (140.0 kB view details)

Uploaded Source

Built Distribution

paralang_base-0.1.dev7-py3-none-any.whl (152.8 kB view details)

Uploaded Python 3

File details

Details for the file paralang-base-0.1.dev7.tar.gz.

File metadata

  • Download URL: paralang-base-0.1.dev7.tar.gz
  • Upload date:
  • Size: 140.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.26.0 setuptools/59.7.0 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.9.1

File hashes

Hashes for paralang-base-0.1.dev7.tar.gz
Algorithm Hash digest
SHA256 973dd40478b3cf0050c4103e1bf3fcec5924ca87cc6780a7366620adb6cc284d
MD5 1ca246c83805b78f1ab074d1635afa8b
BLAKE2b-256 db9702428c06018b915146d0aeefd24bc4e2e22cb3f5f68eca082402ad3c6261

See more details on using hashes here.

File details

Details for the file paralang_base-0.1.dev7-py3-none-any.whl.

File metadata

  • Download URL: paralang_base-0.1.dev7-py3-none-any.whl
  • Upload date:
  • Size: 152.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.26.0 setuptools/59.7.0 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.9.1

File hashes

Hashes for paralang_base-0.1.dev7-py3-none-any.whl
Algorithm Hash digest
SHA256 062b011f39a09bd6d5f4075b98ab485544c95b0b63461d1358c849084c4aa1eb
MD5 a797533ce732dc129d05f26bae5b061c
BLAKE2b-256 062f518adf52a5b8394cc986f99dbd16ff1b1e513c74750158e9df0debac841b

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