HTML5 Installations

This is a list of games, platforms, automata, languages, and gewgaws which have HTML5 installations hosted online on Cat's Eye Technologies' website, catseye.tc.

It contains some instructions for using each of these installations.

Note: some of the properties on the installation entries are meant to be more machine-read than human-read, but you can just skip over those.

Cosmos Boulders

Try it online

Cosmos Boulders is an arcade-style HTML5 minigame built with reducers and immutable data in ES5 JavaScript.

It is playable with keyboard only. (It will therefore not be playable on most mobile devices, as they lack keyboards.) The key mappings are:

If your keypresses seem to be ignored, try clicking inside the canvas to make sure it's got the keyboard focus.

Super Wumpus Land

Try it online

It is playable with keyboard only. It will therefore not be playable on most mobile devices, as they lack keyboards.

If your keystrokes aren't going into the "terminal", make sure you click in it first (it's focusable.)

The New Gamerly Realism

Try it online

Background

Only when the conscious habit of coding culture's little interactions, Marios and Lara Crofts in games disappears will we witness a purely gamerly work of gamedev.

I have transformed myself in the zero of gameplay and have fished myself out of the rubbishy slough of mainstream gaming...

Only dull and impotent gamedevs veil their work with sincerity. Gaming requires truth, not sincerity.

Levels have vanished like smoke; to attain the new gamerly paradigm, gamedev advances towards creation as an end in itself and towards reification of the interactions of culture.

Instructions

Use the arrow keys to guide the protagonist (represented by a black square) around the playfield (represented by a black square) to collect all the treasures (represented by black squares) while avoiding the pits (represented by black squares.) Each treasure collected earns the player 10 points; the score is shown in the upper-left (in black). The player begins the game with three lives; succumbing to a pit costs a life; the number of lives is displayed in the lower-left (in black). When the game is over, left-click the canvas to start a new game.

Detractors and other peasants may satisfy themselves that this is actually a game and not just an entirely black gif or something by opening a JavaScript console and typing BACKGROUND_COLOR='green'.

Cheshire Text

Try it online

As if there aren't enough remixes of Lewis Carroll's works already.

Instructions:

Just read the text from beginning to end, at a normal reading rate, and you may be pleasantly surprised.

BefOS

Try it online

It runs on a web page thanks to the HTML5-based IBM PC compatible emulator, v86.

The system is delivered on a 1.44M floppy image, which contains the BefOS boot block, kernal, and the handful of sample pages which are included in the default build.

If v86 doesn't work in your browser, you can download the disk image and use it in an emulator such as QEMU or DOSBox or, wonder of wonders, a real IBM PC compatible — if you can write it onto a floppy disk somehow...

Backtracking Wang Tiler

Try it online

For more information on Wang tiles, see the Wikipedia article on Wang tiles.

For more information on this automaton and its implementation, see the entry for Backtracking Wang Tiler.

Braktif

Try it online

Instructions:

Select an example program from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example program, or create your own program.

You may wish to read the definition of this cellular automaton: braktif.alp.

Chzrxl

Try it online

Instructions:

The percentage of balls held fixed can be changed by the slider, and the "Restart" button can be used to scatter the balls and restart their movements. You can try out different values and see which one you like the best.

Background:

The original idea was this: each ball travels on a sine-wave path (kind of like a spring) between a randomly-chosen pair of two other balls.

It was soon discovered that if all balls are free to move like this, they all quickly collapse to a single point. Thus, some number of balls are held fixed (5% by default). The result is a slightly organic-seeming emergent motion.

Circute

Try it online

Instructions:

Select an example configuration from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example, or create your own.

You may wish to read the definition of this cellular automaton: circute.alp.

Cyclobots

Try it online

Instructions:

When a revolution occurs, every cyclobot picks a new cyclobot to follow at random.

In case the cyclobots leave the viewable area of the playfield, dragging on the playfield will scroll it. (Possibly not working right now)

Jaccia

Try it online

Instructions:

Select an example configuration from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example, or create your own.

You may wish to read the definition of this cellular automaton: jaccia.alp.

You may also wish to check out this automaton's close relative, Jacciata.

Jacciata

Try it online

Instructions:

Select an example configuration from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example, or create your own.

You may wish to read the definition of this cellular automaton: jacciata.alp.

You may also wish to check out this automaton's close relative, Jaccia.

REDGREEN

Try it online

Instructions:

Select an example configuration from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example, or create your own.

You may wish to read the definition of this cellular automaton: redgreen.alp.

Schrödinger's Game of Life

Try it online

Instructions:

Select a example configuration from the "Preset:" dropdown, and click "Start" to watch it evolve. Or click "Edit" to provide your own configuration.

noit o' mnain worb

Try it online

Instructions:

Select an example configuration from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example, or create your own.

Burro

Try it online

Technically, it is Burro.lhs (the reference implementation of Burro, written in Literate Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Burro programming language.

Carriage

Try it online

Technically, it is Language.Carriage (the reference implementation of Carriage, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Carriage programming language.

Emmental

Try it online

Technically, it is Emmental.hs (the reference implementation of Emmental, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

Some programs take input. When running one of these programs, you should type all the input into the input box before running the program.

You might also want to read the description of the Emmental programming language.

Equipage

Try it online

Technically, it is Language.Equipage (the reference implementation of Equipage, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Equipage programming language.

Etcha

Try it online

It is implemented in JavaScript, using yoob.js.

Instructions:

Click "Start" to run the supplied example program. Or click "Edit" to modify it, and create your own program.

Flobnar

Try it online

Technically, it is Flobnar.hs (the reference implementation of Flobnar, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Flobnar programming language.

Gemooy

Try it online

It is implemented in JavaScript, using yoob.js.

Select an example program from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example program, or create your own program.

Note that the rendering of the program may be larger than the viewport it is displayed in, and on mobile, said viewport might not display scrollbars to indicate this. You can still scroll the program display.

ILLGOL

Try it online

Instructions:

The system that v86 runs is delivered on a 720K floppy image, which contains a minimal bootable FreeDOS install, the ILLGOL distribution, plus various tools such as the TED3 text editor. License and distribution information is included on the disk image.

You can use these tools to build and run ILLGOL programs. See the welcome message, shown after FreeDOS boots, for more details.

If v86 doesn't work in your browser, you can download the disk image and use it in an emulator such as QEMU or DOSBox or, wonder of wonders, a real IBM PC compatible — if you can write it onto a floppy disk somehow...

Mascarpone

Try it online

Technically, it is Mascarpone.hs (the reference implementation of Mascarpone, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

Some programs take input. When running one of these programs, you should type all the input into the input box before running the program.

You might also want to read the description of the Mascarpone programming language.

Matchbox

Try it online

Instructions:

Select an example configuration from the dropdown box, click "Run" to run either of the programs individually, or "Find Race Conditions" to compute all interleavings of the two programs and look for race conditions between them.

This JavaScript implementation of Matchbox uses the Web Workers facility of your browser to run the evaluation process. So, if your browser does not support Web Workers, it may not function correctly.

Oxcart

Try it online

Technically, it is Language.Oxcart (the reference implementation of Oxcart, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Oxcart programming language.

Pail

Try it online

Technically, it is Pail.lhs (the reference implementation of Pail, written in Literate Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Pail programming language.

Pixley

Try it online

Instructions:

Select an example program from the dropdown box, then click "Start" to run it. Or click "Edit" to modify an example program, or create your own program.

Background:

This is a web-based implementation of Pixley which, as a bonus, also depicts the Pixley program as a set of coloured, nested rectangles.

This JavaScript implementation of Pixley uses the Web Workers facility of your browser to run the evaluation process. So, if your browser does not support Web Workers, it may not function correctly.

For the Pixley project, a Pixley interpreter was implemented in Pixley itself ("meta-circularly") and in this installation, the Wrap in Pixley Interpreter button will take the Pixley program that has been loaded and put it inside this Pixley-interpreter-in-Pixley.

Evaluating a program wrapped in a Pixley interpreter will result in the same result as the unwrapped program. It will just take longer.

Evaluating a program wrapped in a Pixley interpreter wrapped in a Pixley interpreter will also result in the same result as the unwrapped program. It will just take quite a bit longer.

In theory, this "tower" of wrapped interpreters could go on forever, and they should all produce the same result.

However, in physical reality, computers have limitations, such as a finite amount of memory available. In my installation of Firefox, for example, wrapping a program in three levels of interpreters results in a "stack overflow" error being displayed in the JavaScript console, and the evaluation process never finishing.

PL-{GOTO}

Try it online

Technically, it is PL-{GOTO}.NET (written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select a PL-{GOTO} program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the PL-{GOTO}.NET compiler.

Quylthulg

Try it online

Technically, it is Qlzqqlzuup.hs (the reference implementation of Quylthulg, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Quylthulg programming language.

Robin

Try it online

Technically, it is Language.Robin (the reference implementation of Robin, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Robin programming language.

Note that the instrinsics defined by the language are available, but the standard libraries are not -- if desired, they would need to be pasted into the textbox above the Robin code that uses them.

Shelta

Try it online

It is running under FreeDOS running on a web page via the HTML5-based IBM PC compatible emulator, v86 — so you can bootstrap it right in your browser.

Instructions:

The system that v86 runs is delivered on a 720K floppy image, which contains a minimal bootable FreeDOS install, the Shelta distribution, plus various tools such as the TED3 text editor, and YASM. License and distribution information is included on the disk image.

You can use the pre-built Shelta compiler (whose source is written in NASM) to build the example programs, or to bootstrap the Shelta compiler written in Shelta. See the welcome message, shown after FreeDOS boots, for more details.

Documentation for Shelta is also on the disk image, and can be viewed with TYPE or EDIT, but you may find it more convenient to browse these files online:

If v86 doesn't work in your browser, you can download the disk image and use it in an emulator such as QEMU or DOSBox or, wonder of wonders, a real IBM PC compatible — if you can write it onto a floppy disk somehow...

Tandem

Try it online

Technically, it is Language.Tandem (the reference implementation of Tandem, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Tandem programming language.

Velo

Try it online

Technically, it is velo.lua (an implementation of Velo in Lua) running under Fengari (an implementation of the Lua VM in JavaScript) running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Velo programming language.

Wanda

Try it online

Technically, it is wanda.lua (the reference implementation of Wanda, in Lua) running under Fengari (an implementation of the Lua VM in JavaScript) running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Wanda programming language.

Wagon

Try it online

Technically, it is Language.Wagon (the reference implementation of Wagon, written in Haskell) compiled to JavaScript by the Haste compiler, running in an HTML5 document.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the Wagon programming language.

Whothm

Try it online

Whothm is a simple language for describing infinite two-colour bitmapped graphics. It is described fully in the documentation in the Whothm distribution.

Technically, this installation is whothm.lua (an implementation of Whothm in Lua) running under Fengari (an implementation of the Lua VM in JavaScript) running in an HTML5 document.

Instructions:

Click "Run" to run the program. The result is displayed in the canvas on the right.

Syntax errors should result in an error message in the status bar, but might not in all cases. In these cases, consulting your browser's console, might elucidate the cause of the error. Or it might not.

Obviously, this implementation does not support generating or displaying the entire infinite drawing. In fact, it only runs the loop for a couple of hundred iterations. The full shape is left up to your imagination.

Wierd (John Colagioia)

Try it online

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

Wunnel

Try it online

Instructions:

Select an example program from the drop-down (or click Edit and compose your own,) then click Run.

When INP is highlighted in the instruction matrix, the program is waiting for input. Click on the Input text box and input some 0s and 1s (Wunnel programs take bits as input.) The program will consume them in order, and continue running.

ZOWIE

Try it online

Technically, it is zowie.py (the reference implementation of ZOWIE, written in Python,) running under Skulpt (a Python interpreter written in JavaScript) running in an HTML5 document.

Note, input is not yet supported, and errors are not yet handled in a user-friendly way.

Instructions:

Select an example program from the dropdown box and click "Run" to run it. You can also edit the program before running it. Or you could clear the textbox and write an entirely new program there and run it.

You might also want to read the description of the ZOWIE programming language.

Zzrk

Try it online

It is running on OpenZz under FreeDOS running on a web page via the HTML5-based IBM PC compatible emulator, v86.

NOTE: this installation is presently INOPERABLE as v86 does not correctly emulate some of the instructions in the compiled OpenZz executable.

However, Zzrk can still be experienced online, in the Zzrk entry on the Internet Archive.

Instructions:

The system that v86 runs is delivered on a 720K floppy image, which contains a minimal bootable FreeDOS install, the OpenZz interpreter (compiled for MS-DOS using djgpp), and the zzrk.zz file that implements the game Zzrk.

You can play the game as you would a typical text adventure game. If you use a word that is not understood, however, it will become clear that OpenZz is treating your input as something to be compiled, and will produce for you a syntax error message. After 10 such errors, the "compilation" of your game will abort and you will be returned to the MS-DOS Command Prompt.

If v86 doesn't work in your browser, you can download the disk image and use it in an emulator such as QEMU or DOSBox or, wonder of wonders, a real IBM PC compatible — if you can write it onto a floppy disk somehow...

A Minimalist Critique of Tetris

Try it online

Instructions:

Just sit back and watch the animation that the computer generates.

A Non-Random Walk

Try it online

Pick a card, any card. Half are red, half are black. Each time a card is picked, the wheel moves. The distance moved is always half the distance from the wheel to the origin (the black dot), but the direction depends on the colour of the card: red moves left, black moves right.

Because the cards are shuffled, the picks are random, and you might think that it's not possible to tell where the wheel will stop, once all cards have been turned over. However, that's not the case. The wheel always stops at a distance a - a × 0.75^n from the origin, where a is the starting position of the wheel, and n is the number of red (or black) cards.

On a mobile device, the experience will be better if you zoom out to see the entire page first.

Art Restoration Simulator

Try it online

Use your mouse (or your finger, on a touch device) to restore the artwork.

On a mobile device, the experience will be better if you zoom out to see the entire page first.

Bézier Knots

Try it online

Changing the number of segments or rings will automatically re-roll the knots.

Black Hole Poem

Try it online

Darker-beige squares can be dragged with your mouse or your finger (for what good it will do you.)

(Yes, you can't see the whole poem. Yes, that's the point. Yes, unless you look at the JavaScript source. Yes, that's the point too.)

The background colour is beige because it's based on Illuminant E because that is our best guess at what colour the universe is.

Canvas Feedback

Try it online

Note: on a mobile device, the experience will be better if you zoom out to see the entire page first.

To begin exploring, we suggest you first try different presets from the Presets drop-down in the control panel on the right.

You can also paste the URL of an image in the Image URL text box, and click "Load", to try a different image.

If you want to get your hands dirty, you can open the Adjustments panel, in which you will find various sliders with which you can control all the parameters.

How can I save an image?

In Firefox, you can right-click on the canvas and select "View image", and save that. In other browsers, the easiest way may be to click the Pause button and take a screenshot. (You can thank the security model used in the HTML5 canvas for this.)

The animation isn't perfectly smooth.

This is an unavoidable consequence of conventional operating systems — your web browser isn't the only thing that's running, and may not get a chance to run until it's too late to display the next animation frame.

In other HTML animations, this can be worked around — the animation still drops frames, but intermediate steps can be computed so that it doesn't look excessively jerky. However, that may not be a realistic option here, due to how the feedback process works.

You can minimize frame-dropping by:

Now my desktop is twisting counter-clockwise!

You've just been staring at it too long.

Wait, I see five-fold symmetry. Where is that coming from?

To be honest, I really don't know.

Background

The idea came about while discussing Nam June Paik, and video art in general, with Gareth Jackson.

It was noted by one of us that, before digital video technology, there were a number of analogue effects that were employed in video art that aren't seen as frequently these days. A notable one was the use of feedback, the simplest version being training a camera on a monitor that is displaying the feed from that same camera. More sophisticated applications are of course possible; a relatively famous example is the 1970's version of the Doctor Who title sequence.

The question arose: could something analogous could be done with digital video, and if so, how?

And I came up with this as a simple technique which is similar to video feedback and which can be implemented straightforwardly in an HTML5 canvas element.

The default image used when Canvas Feedback starts up was designed by Gareth Jackson specifically to be a pleasing subject for this feedback process.

Circus Xamulus

Try it online

Simply wait, and the rectangle will fill up with randomly-sized circles (although it will not become entirely full).

Colourring

Try it online

Select a mode from from the MODE dropdown to see the different styles that are available. Once you have picked a style, try changing the numeric parameters. Not all parameters apply in all styles. Changing a parameter will cause a new instance of the ring to be generated.

Eine kleine Glitchfraktal

Try it online

Select a mode from from the MODE dropdown to see different styles of glitching applied to the rectangles.

Erratic Turtle Graphics

Try it online

It's turtle graphics, except there's a small margin of error. You might ask for "Turn right 90 degrees" but you might get only "Turn right 89.91 degrees".

It uses a faint pen, so if you repeat the drawing instructions many times over, you get a nice pencilly noisy effect.

There is support for a rudimentary command language similar to Logo, for user-created designs. The commands are:

fd NUM move forward this many pixels rt NUM rotate right this many degrees lt NUM rotate left this many degrees setxyr NUM NUM set the coordinates, as a percentage of the width and height of the canvas shiftxyr NUM NUM adjust the coordinates, as a percentage of the width and height of the canvas seterr NUM NUM set the error rate for rotations and movements respectively shifterr NUM NUM adjust the error rate for rotations and movements respectively

Note that the canvas may be larger than the viewport that it is displayed in, and that on mobile, the viewport may not display scrollbars to indicate this. You can still scroll the canvas.

Fibonacci Spiral

Try it online

The semicircles alternate being on the left and the right. The first two terms of the Fibonacci sequence are 1, 1 and these make up the unit circle in the center of the spiral.

The animation is simply a zooming out and back in on the spiral.

Fingerspelling

Try it online

If you have a touchscreen, prod the lavender area of the screen with your finger. If you don't have a touchscreen, you may simulate this action with your mouse pointer.

Heronsis hermnonicii

Try it online

Warning: the following may contain tedious and/or glib background and/or analysis.

Casting a negative space of knowledge. Calling itself a "plate" frames it as a work of learning, like some kind of 19th-century anthropology text. Yet it only raises questions — what are these entities? what kind of world do they inhabit? what are they protecting? who is Clarkson? — without providing answers, leaving it up to the observer to either imagine their own answers, or decide that answers to these questions are not necessary.

Plus it's fun to click on the red balls.

Hirsute Miasma

Try it online

The animation will eventually cycle if you're patient (although it won't of course cycle exactly, as there is a random element.) You may enable the "terminal" option to prevent this cycling.

Hypongtrochoid

Try it online

Each box moves with a constant velocity relative to the box it is contained in, and bounces around inside it in a simple fashion. Yet the path traced out by the innermost box is not very simple at all.

Kolakoski Kurve

Try it online

The segment length can be changed while a curve is being drawn. Changing the draw mode will reset the drawing. Changing the start or end of a curve while it is being drawn might result in glitching in XOR mode (depending on your browser's implementation of the HTML5 canvas -- I don't really know why this happens.)

Latcarf

Try it online

Most recursive fractals are created top-down: start with a big thing, add some smaller things to it, add some even smaller things to those things, etc.

I was curious about what it would be like if a fractal was generated bottom-up: start with many small things, connect them to larger things, then connect those to even larger things, etc.

This is the result of implementing that method.

Lexeduct

Try it online

By default it is in "live mode", meaning, whenever you change the text in the left-side textbox, or whenever you change one of the filters, the text in the right-side textbox will automatically be updated with the new input text and settings.

When you select a filter, inputs will appear below it allowing you to configure it. Several filters need to know the set of characters that they should operate on, for example.

Markov Font

Try it online

Wait a few seconds while it analyzes the characters in the C64 character set. Then it will generate some of its own.

Maze Clouds

Try it online

It implements a simple generative technique to generate mazy, cloudy forms.

Instructions:

The "Re-roll" button will cause a new maze cloud to be generated. The other controls will only affect the appearance of the current maze cloud.

Multicolouralism

Try it online

Each frame, the colour of each cell is chosen randomly from the set {cyan, magenta, yellow, white}. The probability of each of the colours is determined by the distance from the cell to each corner of the square, raised to a power (the "field strength") which can be selected by the slider.

Do you see false colours at the "borders" between the "fields"? You certainly can, but how much you see them seems to depend on several factors (your computer, monitor, lighting, persistence of vision, focus and peripheral vision...)

Noise to Signal No. 1

Try it online

The two panels are constructed by randomly distributing the pixels from a source image randomly onto either panel.

Pixed-Point

Try it online

As you adjust the parameters, the computer will attempt to make the displayed image self-describing.

There are some combinations where the numbers will "settle down", but there's no guarantee, you see.

Prairie

Try it online

Instructions:

Just sit back and watch the animation that the computer generates. It will continue indefinitely.

Progression

Try it online

Instructions:

Just sit back and watch the animation that the computer generates. It will eventually become a static form, but it will take a long time to do so.

Radialjective

Try it online

Instructions:

Just sit back and watch the animation that the computer generates. It will continue indefinitely.

Rigamaroads

Try it online

Instructions:

Just sit back and watch as the computer generates the form. It will stop when it is finished.

Semicircle Jam

Try it online

Instructions:

Just sit back and watch as the computer generates the form. It will stop when it is finished. You can then select to restart it, continue it, or close it off.

Spadgets

Try it online

Instructions:

Just sit back and watch as the computer generates the form. (It is nearly instantaneous.) It will stop when it is finished.

Tentacles, Undamped

Try it online

Instructions:

Just sit back and watch the animation that the computer generates. It will continue indefinitely.

Text Uniquifier

Try it online

Copy some text of your choosing (from a web page, a local document, etc.) and paste it into the text area in the top half of the page. Then click "Uniquify" and see the uniquified text in the bottom half of the page.

Case-sensitive means that THIS, This, and this are treated as different words for uniquification purposes.

Punctuation-sensitive means that this, this?, "this" and (this are treated as different words for uniquification purposes.

You can also select to retain paragraph breaks only (output will look fairly similar to the input text), all line breaks (output tends to resemble free verse), or no breaks at all (output is one long unbroken stream of text.)

The Frame

Try it online

Note 1. Green things can be dragged. Note 2. Due to technical limitations, things cannot be dragged off of the computer screen.

The Judgment of Paris

Try it online

Instructions:

Just sit back and watch the animation that the computer generates. It will continue indefinitely.

Two Fifty Six

Try it online

Try adjusting the Speed, Variety, and Noise settings to affect how the gewgaw is displayed. Varieties that are powers of two (2, 4, 8, 16...) look more orderly than ones that aren't. The palette can also be changed.

Uncle Ankur

Try it online

Instructions:

Just sit back and watch the animation that the computer generates. It will continue indefinitely.

Woman on Film

Try it online

Use the navigation buttons to traverse the space of the work.

On a mobile device, the experience will be better if you zoom out to see the entire page first.