Christmas Lights

I had made this C# poem about Christmas, and lights shorting. It is human readable.

/* .      *    *           *.       *   .                      *     ..   .                   __   *    .     * .     */
using System.Linq;//ing tiny bulbs in circuit;

class icSceneOf : ChristmasStringLights
{
	string ingALiveWire, inMyHand = "&& pray that it all lights";
	dynamic lights, ladder = "&& the still of a winter's night";

	short detected;
	
	static short edNowNoLights; 
	
	class icWinterStringLights : ChristmasStringLights {
		//  (I'm whispering to myself, pleading) : 
		(Light, Light, short) PleaseLight() {
			Light[] inMyHands = {new Light()};
			this.PleaseLight();
			Light.Hum(); //!
			Light.Sing(); //!
			
			short? detected; 
			// so
			foreach(Light? thatIs in inMyHands) {
				string.Join('*', new Light().ToString());
				inMyHands.Where(eachLight => eachLight.ToString() is "unlit");
				if(Light.Hum() && Light.Sing()) {
					continue;
				} 
			}
			
			new Light();

			int erwovenLights; // Now sing!
			int winedWithMe; // I sing!
				
			dynamic humming;
			dynamic bright;
			
			// at last, altogether we
			return (new Light(), new Unlight(), 0);
			// fuck, whole house dark
		}
	}
}
	
class Light {
	public override string ToString() {
		return "-*-";
	}
	public static bool Hum() { return true ;}
	public static bool Sing() { return true ;}
}
class Unlight : Light { }
class ChristmasStringLights {}
/* .      *    *           *.       *   .                      *     ..   .                   __   *    .     * .     */

Infinite falling Astronaut

https://jsbin.com/cosowabubu/1/edit?html,css,js,output

Riley Sketch

function setup() { createCanvas(900, 900); for (let i = 0; i < 40; i++) { if (i > 10 && i < 26) { wavesarr.push(new Wave(i * 50, map(i * 55, 0, 2200, 0, 255) - random(i))); } else { wavesarr.push(new Wave(i * 50, random(30, 40))); } } } function draw() { background(240, 234, 214); wavesarr.forEach(wave => { wave.calculate(); wave.render(); }); } class Wave { constructor(h, a) { this.alpha = a ?? 150; this.xspacing = 5; this.w; this.theta = 0.0; this.amplitude = 40.0; this.period = 350.0 + random(3); this.dx; this.yvalues; this.h = h; this.w = width + 16; this.dx = (TWO_PI / this.period) * this.xspacing; //this.dx = (TWO_PI / this.period) * this.xspacing + random(10); this.yvalues = new Array(floor(this.w / this.xspacing + random(10))); } render() { noStroke(); fill(0, 0, 0, this.alpha); for (let x = 0; x < this.yvalues.length; x++) { ellipse(x * this.xspacing, this.h / 2 + this.yvalues[x], 12, 12); } } calculate() { this.theta += 0.02; let x = this.theta; for (let i = 0; i < this.yvalues.length; i++) { this.yvalues[i] = sin(x) * this.amplitude; x += this.dx; } } }

Row Expanding Canvas

let baseRows = 1;

function setup() {
  createCanvas(600, 600);
  noStroke();
  frameRate(10);
}

function draw() {
  background(0);
  let totalRows = baseRows;
  let unitSize = height / totalRows;
  for (let y = 0; y < totalRows; y++) {
    let startX = 0;
    let firstColor = (y % 2 === 0) ? color(20, 60, 60) : color(30, 90, 90);
    let secondColor = (y % 2 === 0) ? color(30, 90, 90) : color(20, 60, 60);
    let extension = y + 1;
    fill(firstColor);
    rect(startX, y * unitSize, extension * unitSize, unitSize);
    startX += extension * unitSize;
    let tgl = false;
    while (startX < width) {
      fill(tgl ? firstColor : secondColor);
      rect(startX, y * unitSize, unitSize, unitSize);
      startX += unitSize;
      tgl = !tgl;
    }
  }
  baseRows += 1; // Increase complexity over time
  if(baseRows === 200) {
    baseRows = 1;
  }
}

Note

Curious thing about this. On my display, an emergent apparent moire pattern appears from the the application of actually existent squares. It’s a strange effect, feeling hyperdimensional, despite being a simple sketch.