A Programming Language That Lets You Code With Pixels

This programming language gives you programs that resemble modern art. It’s fortunately a feature of the language, dubbed Piet after the famed abstract painter Piet Mondrian.

The language uses 20 distinct colors, with the colors cycling from red to yellow to green to cyan to blue to magenta and the lightness cycling from light to normal to dark. The code is formed from graphics made of the recognized colors, with individual pixels holding much of the information. Stacks are used for storing data values, that can exist as integers or as Unicode characters with the proper commands applied.

Numbers in the program are represented by colors, while black blocks indicates edges and white blocks indicate free zones. The interpreter physically slides through blocks in the direction of the Direction Pointer (DP), with hue changes indicating different commands based on the steps of the change.

To execute a program, the Piet language interpreter begins in the upper left codel (or individual code block) of the program, maintaining a DP initially pointed to the right and a Codel Chooser (CC) initially pointed to the left. The DP and CC turn right, left, down, or up depending on the execution.

There is currently a small community of coders developing sample programs, interpreters, IDEs, and compilers for the language. You can check out some of the sample programs here.

23 thoughts on “A Programming Language That Lets You Code With Pixels

    1. So I looked. This is interesting. The ease with which a 10-key adding machine was implemented caught my interest. The presentation as a 3d-rendered thing was also impressive; unfortunately this makes use of tricks (axons transferring their labels to others) that would make a physical implementation ..difficult. Thanks for the reference, though.

      1. Actually, it isnt brainf*ck at all, it ascii control characters (+, -=}), etc. I do remeber a similar graphical based language that worked similar to this, but you know – weed.

    1. Maybe, but most of us unimaginative conventional coders need to be reminded of these interesting projects from time to time. It could be just an interesting diversion… or it could inspire some new projects and insights. I like this sort of article in HaD.

Leave a Reply to Daniel Scott MatthewsCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.