Skip to main content

Introduction

This is the Python version of EasyCoder, a high-level English-like scripting language suited for prototyping and rapid testing of ideas. It operates on the command line.

The JavaScript version of EasyCoder, which provides a full set of graphical features to run in a browser, is at https://easycoder.github.io

Quick Start

1: Install EasyCoder in your Python environment:

pip install easycoder@git+https://github.com/easycoder/easycoder.git

2: Write a test script, 'hello.ecs':

print `Hello, world!`

This is traditionally the first program to be written in virtually any language. To run it under REPL, launch Python and type the following commands:

from easycoder import Program
Program(['hello.ecs'])

The script is passed in as a list because it could be just one of a number of command-line arguments.

The output will look like this:

Compiled <anon>: 1 lines (2 tokens) in 0 ms
Run <anon>
1-> Hello, world!

To avoid having to use REPL you can set up a simple executable command such as this Python script. On Linux the first line will ensure it runs as a command if given execute permission. You can name it 'easycoder' - there's no need for a '.py' extension.

#!/bin/python3

from sys import argv
from easycoder import Program

if (len(argv) > 1):
    Program(argv[1:])
else:
    print('Syntax: easycoder <scriptname> [plugins]')

With this you can run your script with the command easycoder hello.ecs. You can place easycoder anywhere on your system execution path, such as in a local bin directory.

It's conventional to add a program title to a script:

!   Test script

    script Test

    print `Hello, world!`

The first line here is just a comment and has no effect on the running of the script. The second line gives the script a name, which is useful in debugging as it says which script was running. When run, the output is now

Compiled Test: 5 lines (4 tokens) in 0 ms
Run Test
5-> Hello, world!

As you can guess from the above, the print command gives the line in the script it was called from. This is very useful in tracking down debugging print commands in large scripts.

In the repository is a folder called tests containing a couple of sample scripts. benchmark.ecs allows the performance of EasyCoder to be compared to other languages if a similar program is written for each one. tests.ecs is a test program containing many of the EasyCoder features.

The EasyCoder programming language

There are three primary components to the language: 1 Keywords 2 Values 3 Conditions

All program lines start with a keyword - a command to EasyCoder to do something

(Under construction)

Metadata

Release files for easycoder 1

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

Source distribution (sdist)

Source distribution for easycoder 1
File Size Uploaded Provenance
easycoder-1.tar.gz 24.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for easycoder 1
File Interpreter ABI Platform
easycoder-1-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 47.9 kB

Release files / easycoder-1.tar.gz

Download URL easycoder-1.tar.gz
Size 24.1 kB
Tags Source
SHA-256 checksum
How to use checksums
63e8dea370f70b44a90e3e4ee963c4196f66b46a4765ee281e66c63da7f95c42
BLAKE2b-256 checksum
How to use checksums
c7d58de2b7a5371bb67ce617732cb16512a1cd839560696fc5533130c9fec58e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.31.0

Release files / easycoder-1-py2.py3-none-any.whl

Download URL easycoder-1-py2.py3-none-any.whl
Size 23.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
38915120eb9ddfd92233191ca26615ef07a0713d4ad1cec64224c0257688e9df
BLAKE2b-256 checksum
How to use checksums
f88c794d80186a2ec660292a41d60a3a7ca219a724e640fc4fce9e316199fbf9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.31.0

Security for easycoder 1

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.

Release history Release notifications | RSS feed

This release

1 This release

2 release files No provenance

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