The J programming language, repackaged from official jsoftware.com binaries
Project description
jlanguage
The J programming language, installable with pip. This is an unofficial packaging, not affiliated with Jsoftware: J's home page is jsoftware.com and its official source is jsoftware/jsource. These wheels repackage the official J binary releases, unmodified, so that pip install jlanguage gives you a working J on Linux (x86_64, aarch64), macOS (Intel and Apple Silicon), and Windows (amd64, arm64).
Usage
pip install jlanguage
jconsole
That starts the standard J console REPL:
+/ % # 1 2 3 4
0.25
python -m jlang does the same thing, useful when scripts aren't on your PATH. From Python, jlang.path() returns the install directory (containing bin/, system/, addons/, tools/) and jlang.jconsole_path() the full path to the executable.
Versioning
The package version is the J version: jlanguage 9.7.1 installs J 9.7.1. Packaging-only fixes are released as post versions (9.7.1.post1).
How it's built
make_wheels.py downloads each platform's release archive from jsoftware.com, verifies it against the published sha256sums, and writes it into a platform-tagged wheel, following the approach of ziglang/zig-pypi. Nothing is compiled and the binaries are byte-identical to the official ones.
License
J is © Jsoftware Inc. and distributed under the GPLv3 (see jsoftware/jsource). This package redistributes the official binaries unmodified.
Releasing a new version
When Jsoftware publishes a new J release:
- Update
JVERinmake_wheels.py. The download URL is derived from it, so nothing else normally changes; do check the archive names against the install dir since the suffixes have changed between releases (9.6.3 usedlinux64, 9.7.1 useslinux). - Run
python make_wheels.py. It downloads each platform archive (cached indownloads/), verifies it against the published sha256sums, and writes the wheels todist/. - Run
pytest -q, thentwine upload dist/*.whl.
For a packaging-only fix to an already-released J version, append .postN to the version.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jlanguage-9.7.1-py3-none-win_arm64.whl.
File metadata
- Download URL: jlanguage-9.7.1-py3-none-win_arm64.whl
- Upload date:
- Size: 5.7 MB
- Tags: Python 3, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
af18b17a21ec55a1265a7c764f1c1293bb6b06744e8311c89d13f99ba2eb9a7b
|
|
| MD5 |
047c21d396c68df25cef8547c9d51b53
|
|
| BLAKE2b-256 |
0ab888544e14cbc74cc79dfb96e1c929f77abf33c64d75947be7a887e4cb19ed
|
File details
Details for the file jlanguage-9.7.1-py3-none-win_amd64.whl.
File metadata
- Download URL: jlanguage-9.7.1-py3-none-win_amd64.whl
- Upload date:
- Size: 6.6 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe15285ae072b7c548c34015ed6a052be174a974ed4cf71026e844a6cbd2eaab
|
|
| MD5 |
b284c414cff9921477200f813dec2de8
|
|
| BLAKE2b-256 |
7d61071b9bd4355bd7c39a9b0e5fda30012fcf06da6c67c6da74de7a889da1b8
|
File details
Details for the file jlanguage-9.7.1-py3-none-manylinux_2_38_aarch64.whl.
File metadata
- Download URL: jlanguage-9.7.1-py3-none-manylinux_2_38_aarch64.whl
- Upload date:
- Size: 4.6 MB
- Tags: Python 3, manylinux: glibc 2.38+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da9156a88b9e7a2ae7a449c7b020fcc9804ac3a00ab5c503aa7614d33e3ddacf
|
|
| MD5 |
2b60e20c5d99023b38bb6bcbc700b2f8
|
|
| BLAKE2b-256 |
c8d65f508079a6044fb6897144cc07b77bbd2fab76b1d194428999cbdcb7a612
|
File details
Details for the file jlanguage-9.7.1-py3-none-manylinux_2_34_x86_64.whl.
File metadata
- Download URL: jlanguage-9.7.1-py3-none-manylinux_2_34_x86_64.whl
- Upload date:
- Size: 5.2 MB
- Tags: Python 3, manylinux: glibc 2.34+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46f24784ae108f5f5eaea07f73b4df10829292f0cc668377e9fd9e054ebfb7d9
|
|
| MD5 |
aeee44b37b9e4ec0f46dd1a680001b86
|
|
| BLAKE2b-256 |
fa3b7ffe6e3a6be55688887969666e44732254927eedd675ca27859e329ff019
|
File details
Details for the file jlanguage-9.7.1-py3-none-macosx_10_9_universal2.whl.
File metadata
- Download URL: jlanguage-9.7.1-py3-none-macosx_10_9_universal2.whl
- Upload date:
- Size: 7.2 MB
- Tags: Python 3, macOS 10.9+ universal2 (ARM64, x86-64)
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e4e0b4e67dcf34d24a0bc6a132044e5681d28eb33ebe45185f2c7dba40c605d
|
|
| MD5 |
325a5d5ae521ad24b44a3726f908cccb
|
|
| BLAKE2b-256 |
0b31a45b1c754c654e8861c642041f487345c847787c7b6cfcf4bd9e59840923
|