Skip to main content

PyScript

PyScript is a programming language built on top of Python. It combines some syntax from Python and JavaScript, so if you're already familiar with Python, JavaScript or both, it should be quite easy to learn.

Introduction 📖

The name of "PyScript" was previously used by a well-known framework designed to run Python directly in the browser. Designed from the outset with inspiration from both Python and JavaScript, this language emphasizes human readability. Its name was derived by combining Python and JavaScript. Please note that this language is an independent programming language project written in Python and has no affiliation with the aforementioned PyScript framework.

This language wasn't designed to compete with other modern programming languages, but rather as a learning for understanding how programming languages ​​work and how human written code can be understood by machines. Furthermore, this language was created as a relatively complex project. Using Python as the foundation for PyScript, it's easy to understand how the language is built without having to understand complex instructions like those in C, C++, and other low-level languages.

To learn more about PyScript, you can see on PyScript documentation or PyScript repository for full source code.

Try PyScript ▶️

Try PyScript Shell (REPL) inside your browser directly (no installation required).

Installation ⬇️

First, you'll need to download Python. Make sure you're using the latest version above 3.10, to ensure the code runs correctly. Visit the official Python website to download it.

Next, after downloading and configuring the Python application, you can download the PyScript from PyScript releases or from PIP with this command (Recommended):

pip install -U pyscript-programming-language

[OPTIONAL] You can download additional libraries that PyScript requires with this command:

pip install -U pyscript-programming-language[other]

And also, you can download PyScript with git:

git clone https://github.com/azzammuhyala/pyscript
cd pyscript
pip install .

After that, you can run the PyScript shell (REPL) with this command:

python -m pyscript

If successful, you can see the version, release date, and a >>> like Python shell (REPL).

Example 📜

Familiar? There it is!

# get a number and operator with input()
a = float(input("Enter a first number : "))
b = float(input("Enter a second number: "))
operation = input("Enter an operation (+, -, *, /): ")

# define a functions
func add(a, b) {
return a + b
}

func sub(a, b) {
return a - b
}

func mul(a, b) {
return a * b
}

func floordiv(a, b) {
# check b is zero
return b != 0 ? a / b : none
}

# operation matching
switch (operation.strip())
{
case '+':
result = add(a, b)
print("Result of {:,} + {:,} = {:,}".format(a, b, result))
break

case '-':
result = sub(a, b)
print("Result of {:,} - {:,} = {:,}".format(a, b, result))
break

case '*':
result = mul(a, b)
print("Result of {:,} * {:,} = {:,}".format(a, b, result))
break

case '/':
result = floordiv(a, b)
print("Result of {:,} / {:,} = {}".format(
a, b,
result is not none ? format(result, ',') : "Cannot be divided by 0")
)
break

default:
print("Unknown operation")
}

Library Requirements 📓

No Name Status
1 argparse required
2 builtins required
3 cmath required
4 collections.abc required
5 difflib required
6 functools required
7 html required
8 importlib required
9 inspect required
10 io required
11 itertools required
12 json required
13 operator required
14 os required
15 pkgutil required
16 re required
17 subprocess required
18 sys required
19 types required
20 typing required
21 unicodedata required
1 ast required (library)
2 msvcrt required (library)
3 pprint required (library)
4 shutil required (library)
5 stat required (library)
6 termios required (library)
7 time required (library)
8 tty required (library)
1 _colorize optional
2 beartype optional
3 prompt_toolkit optional
4 pygments optional
5 readline optional
6 threading optional
7 tkinter optional
8 IPython optional

Status Explanation

  • required: Required by PyScript entirely.
  • required (library): Required by PyScript optional library. PyScript is not affected, unless you import it.
  • optional: Not required, but if it is present, some features can be used without issue.

Highlights 🎨

Behind It 🕰️

This language created from based up on a YouTube tutorial (check more on GitHub here by @davidcallanan). At least, it takes about 6 months to learn it, and also need to learn general things that exist in other programming languages.

Metadata

Release files for pyscript-programming-language 1.14.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyscript-programming-language 1.14.0
File Size Uploaded
pyscript_programming_language-1.14.0.tar.gz 105.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyscript-programming-language 1.14.0
File Interpreter ABI Platform
pyscript_programming_language-1.14.0-py3-none-any.whl Python 3 none any Details

Total release size: 222.3 kB

Release files / pyscript_programming_language-1.14.0.tar.gz

Download URL pyscript_programming_language-1.14.0.tar.gz
Size 105.4 kB
Tags Source
SHA-256 checksum
How to use checksums
d5040e5ff9bcdc742aa4b92a23536d2dc8ec49dc289994d0d687d08f0d166b50
BLAKE2b-256 checksum
How to use checksums
9e47f96a0d4aa4b6644f20d9f52ce638ec6d9bd6fa4b35d0d3271ade8cafc0d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release files / pyscript_programming_language-1.14.0-py3-none-any.whl

Download URL pyscript_programming_language-1.14.0-py3-none-any.whl
Size 116.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e43a6400bf7cab2b5b4f2b3cd97fa2a8e5b14147f24957535053d16949984ba6
BLAKE2b-256 checksum
How to use checksums
275af9aca0e14c4c22763cfa82cc9e8fdb18c660ba121814f4ec6fcbce5a18cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.0

Release history Release notifications | RSS feed

This release

1.14.0 This release

2 release files

1.13.3

2 release files

1.13.2

2 release files

1.13.1

2 release files

1.13.0

2 release files

1.12.9

2 release files

1.12.8

2 release files

1.12.7

2 release files

1.12.6

2 release files

1.12.5

2 release files

1.12.2

2 release files

1.12.1

2 release files

1.12.0

2 release files

1.11.3

1 release file

1.11.2

1 release file

1.11.1

1 release file

1.11.0

1 release file

1.10.4

1 release file

1.10.3

1 release file

1.10.2

1 release file

1.10.1

1 release file

1.10.0

1 release file

1.9.0

1 release file

1.8.1

1 release file

1.8.0

1 release file

1.7.3

1 release file

1.7.2

1 release file

1.7.1

1 release file

1.7.0

1 release file

1.6.1

1 release file

1.6.0

1 release file

1.5.1

1 release file

1.5.0

1 release file

1.4.0

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.3

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page