All Projects → dloscutoff → pip

dloscutoff / pip

Licence: MIT License
Pip: an imperative code-golf language

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to pip

Seriously
A golfing language that is probably terrible
Stars: ✭ 78 (+254.55%)
Mutual labels:  code-golf, golfing-language
Vyxal
A golfing language that has aspects of traditional programming languages - terse, elegant, readable.
Stars: ✭ 134 (+509.09%)
Mutual labels:  code-golf, golfing-language
paradoc
GolfScript/CJam-inspired stack-based programming language that can be golfed or written literately*
Stars: ✭ 71 (+222.73%)
Mutual labels:  code-golf, golfing-language
aya
Pocket sized programs
Stars: ✭ 39 (+77.27%)
Mutual labels:  code-golf, golfing-language
PYKE
Indev golfing language
Stars: ✭ 18 (-18.18%)
Mutual labels:  code-golf, golfing-language
snap
Snap Programming Language
Stars: ✭ 20 (-9.09%)
Mutual labels:  interpreter, interpreted-language
wazm
Web Assembly Zig Machine
Stars: ✭ 54 (+145.45%)
Mutual labels:  interpreter
chickadee
Chickadee is a minimal programming language implemented in TypeScript for teaching purposes.
Stars: ✭ 13 (-40.91%)
Mutual labels:  interpreter
oxide-lang
Oxide Programming Language, an interpreted scripting language with a Rust influenced syntax.
Stars: ✭ 106 (+381.82%)
Mutual labels:  interpreter
fakejava
嵌入式脚本语言 Lightweight embedded scripting language
Stars: ✭ 41 (+86.36%)
Mutual labels:  interpreter
zeta-lang
The Zeta Programming langauge
Stars: ✭ 34 (+54.55%)
Mutual labels:  interpreter
hopes
Higher Order Prolog with Extensional Semantics
Stars: ✭ 43 (+95.45%)
Mutual labels:  interpreter
boba-js
Toy programming language. Now being reimplemented in Rust: https://github.com/poteto/monkers
Stars: ✭ 22 (+0%)
Mutual labels:  interpreter
lust
A parser, compiler, and virtual machine evaluator for a minimal subset of Lua; written from scratch in Rust.
Stars: ✭ 120 (+445.45%)
Mutual labels:  interpreter
go-jdk
Run JVM-based code in Go efficiently
Stars: ✭ 61 (+177.27%)
Mutual labels:  interpreter
dragon
🐲 Object orientated, dynamically typed, interpreted programming language inspired by Python and Javascript.
Stars: ✭ 14 (-36.36%)
Mutual labels:  interpreter
retro12
This repo is retired. See http://forthworks.com:8000/
Stars: ✭ 18 (-18.18%)
Mutual labels:  interpreter
tranquility
Tranquility is an in-development programming language intended to replace Solidity
Stars: ✭ 17 (-22.73%)
Mutual labels:  interpreter
free-monads-functional-web-apps
Delving into Free Monads and using them to write pure functional web applications
Stars: ✭ 18 (-18.18%)
Mutual labels:  interpreter
monkers
Bytecode compiler and VM for the Monkeylang language, written in Rust
Stars: ✭ 34 (+54.55%)
Mutual labels:  interpreter

Pip

Pip is an interpreted, imperative code-golf language. See the GitHub wiki for an introduction to the language, or the documentation site 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, Pip scored slightly better than GolfScript and CJam, but not quite as good as Pyth.

Usage

You can run Pip at the following online interpreters:

  • Attempt This Online typically supports the latest release of Pip (but possibly not the latest commit). (Thanks to pxeger for adding Pip support to ATO!)
  • Try It Online supports version 0.18, aka Pip Classic, which is a few years out of date. (Thanks to Dennis for adding Pip support to TIO!)
  • Replit 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 for the idea of hosting Pip on Replit!)

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]

pip.py [flags] -e 'code' [args]

pip.py (interactive mode)

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

What does the name refer to?

This fellow, of course.

Actually, the name "Pip" originated as a recursive acronym, though exactly what it stands for is open to debate. For some possibilities, see The Tao of Pip. The name was also chosen for its connotations of smallness.

Pip is not to be confused with pip.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].