Skip to content

Commit

Permalink
Added ATO link to readme.
Browse files Browse the repository at this point in the history
  • Loading branch information
dloscutoff committed Dec 30, 2021
1 parent 9b5a110 commit d5d4f3b
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,21 @@

Pip is an interpreted, imperative code-golf language. See the [GitHub wiki](https://github.com/dloscutoff/pip/wiki) for an introduction to the language, or the [documentation site](https://dloscutoff.github.io/pipdoc/) for a language reference.

### Why Pip?

Unlike most golfing languages, but like many practical languages, Pip is an imperative language with infix operators. It also uses plain ASCII instead of a custom codepage. These features make it a great introduction to golflangs for users of imperative languages like Python, JavaScript, and Perl.

In [a survey of Code Golf StackExchange submissions](https://codegolf.meta.stackexchange.com/a/8891/16766), Pip scored slightly better than GolfScript and CJam, but not quite as good as Pyth.

### Usage

The quickest way to get started using Pip is at [Try It Online!](https://tio.run/##K8gs@P8/3Sv7////Hqk5Ofn/w/OLclIUAQ) (Thanks, [Dennis](http://codegolf.stackexchange.com/users/12012/dennis)!) Note, however, that the version of Pip on TIO is [Pip Classic](https://github.com/dloscutoff/pip/releases/tag/v0.18), which doesn't have any of the updates and new features since 2018.
You can run Pip at the following online interpreters:

An up-to-date version of Pip is hosted at [Replit](https://replit.com/@dloscutoff/pip). Clicking the run button will drop you into an interactive mode session, which prompts for arguments and code and then executes the program.
- [Attempt This Online](https://ato.pxeger.com/run?1=m724ILNgwYKlpSVpuhaL072yISyowOZoJY_UnJx8JR0FpfD8opwURaVYqBQA) typically supports the latest release of Pip (but possibly not the latest commit). *(Thanks to [pxeger](https://github.com/pxeger) for adding Pip support to ATO!)*
- [Try It Online](https://tio.run/##K8gs@P8/3Sv7////Hqk5Ofn/w/OLclIUAQ) supports [version 0.18](https://github.com/dloscutoff/pip/releases/tag/v0.18), aka [Pip Classic](https://dloscutoff.github.io/pipdoc/pip-classic), which is a few years out of date. *(Thanks to [Dennis](https://github.com/DennisMitchell) for adding Pip support to TIO!)*
- [Replit](https://replit.com/@dloscutoff/pip) hosts the latest commit of Pip, with the downside that it uses a command-line interface and doesn't allow permalinking. Clicking the run button will drop you into an interactive session, which prompts for arguments and code and then executes the program. *(Thanks to [razetime](https://github.com/razetime) for the idea of hosting Pip on Replit!)*

Pip is implemented in Python 3. The main interpreter is the `pip.py` file. It should run on most systems with Python 3 installed simply by invoking `pip.py` in the directory where you put it (for *nix systems, use `./pip.py`). You may also wish to modify the `PATH` environment variable to include the path to Pip, so that you can invoke it from anywhere. Typical invocation patterns:
You can also clone the Pip repository and run it from the command line. Pip is implemented in Python 3. The main interpreter is the `pip.py` file. It should run on most systems with Python 3 installed simply by invoking `pip.py` in the directory where you put it (for *nix systems, use `./pip.py`). You may also wish to modify the `PATH` environment variable to include the path to Pip, so that you can invoke it from anywhere. Typical invocation patterns:

`pip.py [flags] path/to/codefile.pip [args]`

Expand All @@ -18,10 +26,6 @@ Pip is implemented in Python 3. The main interpreter is the `pip.py` file. It sh

Execute `pip.py --help` for more detailed information.

### Why Pip?

Pip's main reason for existence is to be a golfing language that 1) is imperative, and 2) uses infix operators. I do enjoy the challenge of stack-based programming from time to time, but I find the imperative paradigm much easier to think in, and therefore better. In [a survey of Code Golf StackExchange submissions](https://codegolf.meta.stackexchange.com/a/8891/16766), Pip scored slightly better than GolfScript and CJam, but not quite as good as Pyth.

### What does the name refer to?

[This fellow](http://en.wikipedia.org/wiki/Pip_(Great_Expectations)), of course.
Expand Down

0 comments on commit d5d4f3b

Please sign in to comment.