Haiku Gallery
x y .1 mod .2 pow / 1 swap / y 2dup z* dup .5 * sqrt
Blinds at Sunrise
BradN
'24 Dec 23
: x x .5 - 2 * ; : y y .5 - 2 * ; : ^2 dup * ; : z^2 over over z* ; : a^2+b^2 ( a b -> a^2+b^2 ) ^2 swap ^2 + ; : r a^2+b^2 ; : a/r,b/r ( a b r -> a/r b/r ) dup >r / swap r> / swap ; : a-b,a+b ( a b -> a-b a+b ) over over + >r - r> ; : 1/z ( a b -> [a-b]/r [a+b]/r, r=a^2+b^2 ) over over a^2+b^2 >r a-b,a+b r> a/r,b/r ; : zdup over over ; : z/ 1/z z* ; : riman ( z -> z/[1+z^2] ) over over z^2 1 0 z+ z/ ; x y riman t 3 * sin t 5 * sin z*
Hypno6
DarkstarAG
'24 Dec 23
: x x .5 - 2 * ; : y y .5 - 2 * ; : ^2 dup * ; : z^2 over over z* ; : a^2+b^2 ( a b -> a^2+b^2 ) ^2 swap ^2 + ; : a/r,b/r ( a b r -> a/r b/r ) dup >r / swap r> / swap ; : a-b,a+b ( a b -> a-b a+b ) over over + >r - r> ; : 1/z ( a b -> [a-b]/r [a+b]/r, r=a^2+b^2 ) over over a^2+b^2 >r a-b,a+b r> a/r,b/r ; : zdup over over ; : z/ 1/z z* ; : riman ( z -> 1/[1+z^2] ) z^2 1 0 z+ 1/z ; x y riman t 7 * sin t 3 * sin z*
Hypno5
DarkstarAG
'24 Dec 23
: x x .5 - 2 * ; : y y .5 - 2 * ; : f dup * tan dup * ; : r x x * y y * + sqrt 2 * f x * y * + sin 1 + 2 / ; 1 t * r 3 t * r 5 t * r
Hypno4
DarkstarAG
'24 Dec 23
: x x .5 - 2 * ; : y y .5 - 2 * ; : f >r r@ r> dup * 1 + / ; : r x f y f + sqrt 1 swap - 15 * + sin 1 + 2 / ; 1 t * r 3 t * r 5 t * r
Hypno3
DarkstarAG
'24 Dec 23
: x x .5 - 2 * ; : y y .5 - 2 * ; : f >r r@ dup * r> dup * 1 + / ; : r x f y f + sqrt 1 swap - 15 * + sin 1 + 2 / ; 1 t * r 3 t * r 5 t * r
Hypno2
DarkstarAG
'24 Dec 23
: x x .5 - 2 * ; : y y .5 - 2 * ; : r x x * y y * + sqrt 1 swap - 15 * + sin 1 + 2 / ; 1 t * r 3 t * r 5 t * r
Hypno1
DarkstarAG
'24 Dec 23
: x x .5 - ; : y y .4 - ; : r dup * swap dup * + sqrt ; : s x - swap y - 2dup r push atan2 0.2 * pop + 40 * sin ; t sin 6 / t cos 7 / s dup t sin 2 / t cos 3 / s + over t cos 4 / t sin 5 / s +
Moiré pattern generator #1 Redux
陳爽
'24 Dec 23
: x x .1 - ; : y y .1 - ; : r dup * swap dup * + sqrt ; : s x - swap y - 2dup r push atan2 0.2 * pop + 40 * sin ; t sin 1 + 6 / t cos 1 + 7 / s dup t sin 1 + 2 / t cos 1 + 3 / s + over t cos 1 + 4 / t sin 1 + 5 / s +
Moiré pattern generator #1 Redux
陳爽
'24 Dec 23
: x x .5 - ; : y y .5 - ; : r x x * y y * + sqrt ; : ring r < swap r > * ; .2 .1 ring .4 .3 ring
Two Rings
Vera
'24 Dec 23
: sq dup * ; : d sq swap sq + sqrt ; : s push - swap pop - 2dup d push atan2 0.01 * pop + 200 * sin ; .5 .5 x y s t sin abs t cos abs x y s + dup dup 72267043
Moiré pattern generator #1 Redux
Anonymous
'24 Dec 23
: sq dup * ; : d sq swap sq + sqrt ; : s push - swap pop - 2dup d push atan2 0.01 * pop + 200 * sin ; .5 .5 x y s t sin abs t cos abs x y s + dup dup
Moiré pattern generator #1 Redux
Anonymous
'24 Dec 23
: v dup 0.008 - x < Swap 0.008 + x > and ; : h dup 0.008 - y < Swap 0.008 + y > and ; T sin 0.5 * 0.5 + v T 10 + sin 0.5 * 0.5 + h or
2D isotropic harmonic oscillator
Frank Lin
'24 Dec 23
: x x 0.5 - 2 * ; : y y 0.5 - 2 * ; : d x x * y y * + ; y x atan2 2 * d 5 * + sin y x atan2 5 * d 2 * + sin 2dup - abs -rot * dup 1.7 * swap rot .5 * swap over .5 * + swap
sibyl Redux
Anonymous
'24 Dec 23
: x x 0.5 - 2 * ; : y y 0.5 - 2 * ; : d x x * y y * + ; y x atan2 2 * d 5 * + sin y x atan2 5 * d 2 * + sin 2dup - abs -rot * dup 1.7 * swap rot .5 * swap over .5 * + swap d .1 + y x atan2 7 * sin .1 * + 20 pow 1 swap -
sibyl
BradN
'24 Dec 23
: web push push x 0.5 + y 0.3 + * pop * sin 0 max x 0.3 + y 0.5 + * pop * sin 0 max + ; 31 23 web 17 17 web * x + 23 31 web 19 19 web * y x * + 31 31 web 7 9 web * y +
streak Redux
Anonymous
'24 Dec 23
2 x 10 * sin y 10 * sin t 1.9 * sin * sin / cos * cos
MBM00001 Redux
1
'24 Dec 23
x t 0.01 * * y mod 2 * 0 1 x - t 0.05 * * 1 y - mod 2 *
Untitled
JIJ
'24 Dec 23
X 0 0
Untitled
Anonymous
'24 Dec 23
: d dup ; : ' .5 - ; : r x ' d * y ' d * + sqrt ; : lx t 7 + 1.9 * sin 2 / ; : ly t 7 + 1.7 * sin 2 / ; : lr lx d * ly d * + .16 + sqrt ; : z r 80 * sin .7 * ; : m lr / * 0 max ; x ' r / z * lx m y ' r / z * ly m r 80 * cos .15 * .85 + .4 r 40 * cos 1 + 6 / + m + + 1 x ' lx - d * y ' ly - d * + sqrt - 0 max * d d * 2 / 2 +
Golden bump Redux
Anonymous
'24 Dec 23
: d dup ; : ' .5 - ; : r x ' d * y ' d * + sqrt ; : lx t 7 + 1.9 * sin 2 / ; : ly t 7 + 1.7 * sin 2 / ; : lr lx d * ly d * + .16 + sqrt ; : z r 80 * sin .7 * ; : m lr / * 0 max ; x ' r / z * lx m y ' r / z * ly m r 80 * cos .15 * .85 + .4 r 40 * cos 1 + 6 / + m + + 1 2 x ' lx - d * y ' ly - d * + sqrt - 0 max * d d * 2 /
Golden bump Redux
Anonymous
'24 Dec 23
: l dup * swap dup * + sqrt ; : o rot swap l .5 - swap l .2 - ; : a t 2 pi * * ; : b t .25 pi * * ; : y y 2 * 1 - ; : x x 2 * 1 - ; : z y a sin * r@ a cos * + ; : y y a cos * r@ a sin * - ; : q x b cos * y b sin * - ; : w x b sin * y b cos * + ; : s q w z o 0 < 0.2 * + r> .12 + >r ; 0 0 -.65 >r s s s s s s 0 s s s s s r> drop
partially submerged donut
boomlinde
'24 Dec 23
x y * y x / x y + y x - t 1.2 * * sin
dizzylines
Anonymous
'24 Dec 23
5 x 20 * sin y 20 * sin t 1.5 * sin * sin / cos * cos
MBM00001
MBM
'24 Dec 23
: d dup ; : f floor ; : i t 9 / d f - 0.5 - d 0 > 2 * 1 - * 2 / x + ; : m 256 * f 16 mod ; : l 2 i d >r m ** / f 2 mod swap y m = * + r> d 1 < swap 0.25 > * * y 0.5 > * y 0.85 < * ; : v f sin 2.2 / 0.5 + ; : a t 7 * sin 0 ; 0 8 544 l 7 2032 l 6 3544 l 4 6132 l 3 5140 l 2 864 l a > * 0 8 4644 l 7 6132 l 6 7644 l 4 4088 l 3 1040 l 2 2056 l a <= * + 9 1040 l 5 8188 l 1 y - * d 2 * t v d >r t 1 + v over - t d f - d >r * + x - abs 0.04 < y 0.025 < * 2 / r> y 0.03 - - abs 0.007 < r> x - abs 0.002 < * + + d 2 *
SPACE INVADERS Redux
Anonymous
'24 Dec 23
: d dup ; : m 2 min ; : f d floor - ; : c cos abs ; : j t 4 + 2 * x 8 * floor 8 / + 4 * c 2 / t 4 + 2 / c 4 ** * - ; : a 1 x x 8 * floor 0.5 + 8 / - d * y ; : b - d * + sqrt 50 * 8 ** ; : p x t 4 + pi / f 1.6 * - 0.2 + ; : v t 4 + pi 2 * / f ; a j 0.5 b - v d 0.5 < * 4 * m * 1 p d * y 0.5 - d * + 36 * 30 ** m - y 0.5 - p atan2 abs t 10 * c 0.8 * - 16 * m * 0 max a 0.5 b - 0 max d p 16 * < * + p d * y 0.58 b m * v 0.5 >= * + d 0.2
PACMAN Redux
Anonymous
'24 Dec 23
( Black Hole: (c) 2019 by <darkstar> ) : n .5 - 2 * ; : m 1 + 2 / ; : x x n ; : y y n ; : r x dup * y dup * + sqrt ; : tor r 3.4 * sin 1.1 - exp 0.7 ** ; : a >r y x atan2 t r> * + sin m ; : q1 0.98 a r .8 ** 0.8 * r 2 * + 0.3 - sin 3 ** * ; : q2 0.56 a r .8 ** 0.8 * r 2 * + 0.20 - sin 3 ** * ; : q3 0.36 a r .8 ** 0.8 * r 2 * + 0.14 - sin 3 ** * ; : rainbow ( .f - r g b ) dup 3 * 1 + sin 1.0 * swap dup 3 * 0 + sin 1.0 * swap dup 3 * 5 + sin 1.0 * swap drop ; tor 0.5 * q1 3.1 * q2 2.3 * + q3 2.9 * + 0.05 * + 0.6 - rainbow
the Black Hole
DarkstarAG
'24 Dec 23
( inspired by "Web Wars" game on Vectrex console ) ( let's discuss Forth Haiku on demoscene.ru forum ) : t t 91 + ; : d dup ; : fract d floor - ; : n 6 ; : xx x .5 - ; : yy y .76 - ; : xw x .5 - 10 * ; : yw y .37 - t 2.5 * 1.1 - sin 30 / - 12 * ; : dx t n / floor sin 8 * ; : dy t n / floor cos 2 * ; : zoom 1 1 t n / fract - 50 * 1 + / ; : phase t fract pi * 2 * ; : wings 1 xw cos t 2.5 * sin * xx abs .5 + * yw - abs - 1 xx 2.3 * abs - sqrt * 0 max 8 ** d >r 20 * 4 ** 1 min max r> 944 * 456 ** 1 min - ; 5 xx d * yy d * + sqrt d -rot / phase + sin abs over 9 * 4 ** ** swap .154 max .0 - * 4 * 1 zoom dx over * xx - d * over dy * yy - d * + sqrt swap 2dup >r >r 2 / - - abs 200 ** 1 min max 1 r> r> 2.2 / - - abs 200 ** - 0 max 1 min wings d d
matrix
anonymous rous
'24 Dec 23
📺 ▶ * : d push x - dup * pop y - dup * + sqrt ; : r 2dup push push d 200 * x pop - y pop - atan2 20 * sin 3 * + sin ; : xor + abs 50 mod ; .8 .75 r t 10 / dup push sin abs pop cos abs r xor dup dup
ocean waves at open sea
anonymous rous
'24 Dec 23
3y sin 2.38 redux 93.4 sin
blank redux
anonymous rous
'24 Dec 23
: pi 7.14 ; : pi/2 pi 9 / ; : pi/4 pi 879 / ; : n .5 - 2 * ; : ^2 dup * ; : inv -1 pow ; : sinc dup >r sin r> / ; : (x<1)! 1 < * ; : (x<0.95)! 0.95 / 1 < * ; : (x/(x+1)) dup 1 + / ; : (1/(1-x)) 1 - negate inv ; : (x^2/(x^2+1)) ^2 (x/(x+1)) ; : x x n ; : y y n ; : e 0.001 ; : r ( x y - r ) ^2 >r ^9 r> + sqrt ; : a ( y x - a ) atan2 pi/72 / ; : m 1 mod abs 0.2 < ; : rr x y r t 11 / 2 mod - 2 + (1/(1-x)) sqrt sqrt 11 * m ; : aa y x a 8 * m ; : x' rr ; : y' aa ; x' y' or x y r 0.98 > or x y r (x<1)!
lak's
sel'hen
'24 Dec 23
: d push x - dup * pop y - dup * + sqrt ; : r 2dup push push d 200 * x pop - y pop - atan2 20 * sin 3 * + sin ; : xor + abs 50 mod ; .5 .5 r t 10 / dup push sin abs pop cos abs r xor dup dup
Moiré pattern generator #2 Redux
Anonymous
'24 Dec 23
: pi 3.14 ; : pi/2 pi 2 / ; : pi/4 pi 49 / ; : n .5 - 2 * ; : ^2 dup * ; : inv -1 pow ; : sinc dup >r sin r> / ; : (x<1)! 1 < * ; : (x<0.95)! 0.95 / 1 < * ; : (x/(x+1)) dup 1 + / ; : (1/(1-x)) 1 - negate inv ; : (x^2/(x^2+1)) ^2 (x/(x+1)) ; : x x n ; : y y n ; : e 0.001 ; : r ( x y - r ) ^2 >r ^2 r> + sqrt ; : a ( y x - a ) atan2 pi/72 / ; : m 1 mod abs 0.2 < ; : rr x y r t 9 / 2 mod - 2 + (1/(1-x)) sqrt sqrt 10 * m ; : aa y x a 8 * m ; : x' rr ; : y' aa ; x' y' or x y r 0.98 > or x y r (x<1)!
hypnotyzed yet???!!! I am ...
sel'hen
'24 Dec 23
0 @ <= 0 if random 0 ! then 0 @
Untitled
Anonymous
'24 Dec 23
: p4 pi 4 / ; : p2 pi 2 / ; : r22 2 sqrt 2 / ; : s 8 ; : r t p4 - cos t p4 - sin z* ; : o t .5 * p2 mod p4 > ; : lxy x s * o - 2 mod 1 - y s * o - 2 mod 1 - ; : a lxy r abs r22 < swap abs r22 < * o = ; a dup dup
Tiles B/W
Snail
'24 Dec 23
: p4 pi 4 / ; : p2 pi 2 / ; : r22 2 sqrt 2 / ; : s 8 ; : r t p4 - cos t p4 - sin z* ; : o t .5 * p2 mod p4 > ; : lxy x s * o - 2 mod 1 - y s * o - 2 mod 1 - ; : a lxy r abs r22 < swap abs r22 < * o = ; lxy r abs swap abs max r22 - abs .05 < x a - r a y - r
Tiles
Snail
'24 Dec 23
: r .5 - abs .167 < ; : s 3 * 1 mod ; : z 1 t 1 * 1 mod .66 pow .666 * - ; x y t .314 * dup cos swap sin z* z 0 z* 3 / swap 3 / swap 2dup r swap r * -rot s swap s 2dup r swap r * -rot s swap s 2dup r swap r * -rot s swap s 2dup r swap r * -rot s swap s 2dup r swap r * -rot s swap s 2dup r swap r * -rot s swap s drop drop + + + + + dup dup
Untitled
Anonymous
'24 Dec 23
: pi 3.1416926 ; : pi/2 pi 2 / ; : pi/4 pi 4 / ; : n .5 - 2 * ; : ^2 dup * ; : inv -1 pow ; : sinc dup >r sin r> / ; : (x<1)! 1 < * ; : (x<0.95)! 0.95 / 1 < * ; : (x/(x+1)) dup 1 + / ; : (1/(1-x)) 1 - negate inv ; : (x^2/(x^2+1)) ^2 (x/(x+1)) ; : x x n ; : y y n ; : e 0.001 ; : r ( x y - r ) ^2 >r ^2 r> + sqrt ; : a ( y x - a ) atan2 pi/2 / ; : m 1 mod abs 0.2 < ; : rr x y r t 2 / 2 mod - 2 + (1/(1-x)) sqrt sqrt 10 * m ; : aa y x a 8 * m ; : x' rr ; : y' aa ; x' y' or x y r 0.98 > or x y r (x<1)!
Convert Universe To Disk 2
DarkstarAG
'24 Dec 23
x y < if 1 y x then x y * dup dup else
Untitled
Anonymous
'24 Dec 23
: pi 3.1416926 ; : pi/2 pi 2 / ; : pi/4 pi 4 / ; : n .5 - 2 * ; : ^2 dup * ; : inv -1 pow ; : sinc dup >r sin r> / ; : (x<1)! 1 < * ; : (x<0.95)! 0.95 / 1 < * ; : (x/(x+1)) dup 1 + / ; : (1/(1-x)) 1 - negate inv ; : (x^2/(x^2+1)) ^2 (x/(x+1)) ; : x x n ; : y y n ; : e 0.001 ; : r ( x y - r ) ^2 >r ^2 r> + sqrt ; : a ( y x - a ) atan2 pi/2 / ; : m 1 mod abs 0.2 < ; : rr x y r (1/(1-x)) sqrt sqrt 10 * m ; : aa y x a 8 * m ; : x' rr ; : y' aa ; x' y' or x y r 0.98 > or x y r (x<1)!
Convert Universe To Disk
DarkstarAG
'24 Dec 23
Next