Haiku Gallery
: << 1 < swap 1 < * ; : >> 0 > swap 0 > * ; : z 2dup << -rot >> * * ; : x0 x 5 * 2 - ; : y0 y 5 * 0.5 - ; : z0 x0 y0 z ; : x1 x 5 * 2 - ; : y1 y 5 * 1.5 - ; : z1 x1 y1 z ; : x2 x 5 * 2 - ; : y2 y 5 * 2.5 - ; : z2 x2 y2 z ; : x3 x 5 * 2 - ; : y3 y 5 * 3.5 - ; : z3 x3 y3 z ; : x4 x 5 * 1 - ; : y4 y 5 * 2.5 - ; : z4 x4 y4 z ; : x5 x 5 * 3 - ; : y5 y 5 * 2.5 - ; : z5 x5 y5 z ; : ' 1 swap - ; x0 z0 x1 z1 + x2 z2 + x3 z3 + 0 z4 + 1 z5 + y0 z0 1 z1 + y2 ' z2 + 0 z3 + y4 ' z4 + y5 ' z5 + 0 z0 y1 z1 + 1 z2 + y3 ' z3 + x4 z4 + x5 ' z5 +
Color Cube Cross 221 words
Christer Nilsson
'25 Jul 09
x 0.5 - dup * y 0.5 - t 0.5 * sin 0.2 * + dup * + sqrt dup x 0.5 - y 0.5 - t 0.5 * sin 0.2 * + atan2 pi / t 0.05 * + swap 1 swap / t + 1 * 2 mod floor swap 8 * 2 mod floor and 1 swap - * 0.8 swap -
tunnel
cce
'25 Jul 09
x 2 t sin + * 1.0 mod 0.5 - dup * y 2 t sin + * 1.0 mod 0.5 - dup * + sqrt 50 * t 4 * - sin dup y * dup x *
zuumer
cce
'25 Jul 09
x 2 t sin + * 1.0 mod 0.5 - dup * y 2 t sin + * 1.0 mod 0.5 - dup * + sqrt 50 * t 4 * - sin dup y * dup x *
Untitled
Anonymous
'25 Jul 09
: z .5 - 2.5 pow ; x z y z + 0.15 <
Sergels Torg 14 words
Christer Nilsson
'25 Jul 09
: z .5 - 3 * 2.5 pow ; x z y z + sqrt 1 <
Sergels Torg (haiku)
Christer Nilsson
'25 Jul 09
: s t floor 60 mod ; : m t 60 / floor 60 mod ; : h t 720 / floor 60 mod ; : ts s 7 <= 280 s + * 8 s <= s 22 <= * 271 17 s 8 - * - * + 23 s <= s 37 <= * 38 s - * + 38 s <= s 52 <= * s 37 - 17 * * + 53 s <= 220 s + * + ; : tm m 7 <= 280 m + * 8 m <= m 22 <= * 271 17 m 8 - * - * + 23 m <= m 37 <= * 38 m - * + 38 m <= m 52 <= * m 37 - 17 * * + 53 m <= 220 m + * + ; : th h 7 <= 280 h + * 8 h <= h 22 <= * 271 17 h 8 - * - * + 23 h <= h 37 <= * 38 h - * + 38 h <= h 52 <= * h 37 - 17 * * + 53 h <= 220 h + * + ; : ix x 17 * floor ; : iy y 17 * floor ; : i ix iy 17 * + ; : f i 17 mod 16 = i 17 mod 0 = or i 16 < or i 272 > or ix 3 <> * ix 8 <> * ix 13 <> * iy 3 <> * iy 8 <> * iy 13 <> * ix 0 = iy 0 = * not * ix 0 = iy 16 = * not * ix 16 = iy 0 = * not * ix 16 = iy 16 = * not * 0.15 * ; : marker i 275 = i 280 = + i 285 = + i 237 = + i 152 = + i 67 = + i 13 = + i 8 = + i 3 = + i 51 = + i 136 = + i 221 = + 0.25 * ; ts i = marker + f + tm i = marker + f + th i = marker + f +
Matrix Clock 384 words
Christer Nilsson
'25 Jul 09
: s dup >r mod r> / dup >r swap y 3 * floor = * r> 60 * floor x 60 * floor = * ; 0 t 60 s 1 t 60 / 60 s 2 t 3600 / 24 s
Simple RGB Clock 2
DarkstarAG
'25 Jul 09
: s dup >r mod r> / swap y 3 * floor = * ; 0 t 60 s 1 t 60 / 60 s 2 t 3600 / 24 s
Simple RGB Clock
DarkstarAG
'25 Jul 09
: z mod floor x 8 * floor y 8 * floor 8 * + = ; t floor 60 z t 60 / 60 z t 3600 / 24 z
Minimal Clock 31 words
Christer Nilsson
'25 Jul 09
: z mod floor 0.87 x - 8 * floor 2 swap ** / floor 2 mod 0.92 y - 8 * floor pop = and ; 5 push t floor 60 z 3 push t 60 / 60 z 1 push t 3600 / 24 z
Binary Clock 47 words
Christer Nilsson
'25 Jul 09
: z 0.87 x - 8 * floor 2 swap ** / floor 2 mod 0.92 y - 8 * floor ; t floor 60 mod z 5 = and t 60 / 60 mod floor z 3 = and t 3600 / 24 mod floor z 1 = and
Binary Clock 50 words
Christer Nilsson
'25 Jul 09
: h t 3600 / 24 mod floor ; : m t 60 / 60 mod floor ; : s t floor 60 mod ; : z 0.87 x - 8 * floor 2 swap ** / floor 2 mod 0.92 y - 8 * floor ; s z 5 = and m z 3 = and h z 1 = and
Binary Clock 62 words
Christer Nilsson
'25 Jul 09
: h t 3600 / 24 mod floor ; : m t 60 / 60 mod floor ; : s t floor 60 mod ; : w 8 * floor 6 - negate ; : d 2 swap ** / floor 2 mod ; : z x w d y w ; s z 5 = and m z 3 = and h z 1 = and
Binary Clock 67 words
Christer Nilsson
'25 Jul 09
: h 0.66 t 3600 / floor ; : m 0.50 t 60 / floor 60 mod ; : s 0.34 t floor 60 mod ; : x5 0.10 32 ; : x4 0.26 16 ; : x3 0.42 8 ; : x2 0.58 4 ; : x1 0.74 2 ; : x0 0.90 1 ; : circle y - 2.5 pow swap x - 2.5 pow + sqrt 0.04 < ; : bit ( x0 b y0 n -- bool ) rot / floor 2 mod -rot circle and ; : hb h bit + ; : mb m bit + ; : sb s bit + ; x5 h bit x4 hb x3 hb x2 hb x1 hb x0 hb x5 m bit x4 mb x3 mb x2 mb x1 mb x0 mb x5 s bit x4 sb x3 sb x2 sb x1 sb x0 sb
BitClock Sergel
Christer Nilsson
'25 Jul 09
: z dup push mod 2 * pi * pop / dup sin swap cos ; : circle ( r cx cy -- bool ) 2.5 / 0.5 + y - 2.5 ** swap 2.5 / 0.5 + x - 2.5 ** + sqrt > ; 0.04 t 60 z circle 0.03 t 60 / 60 z circle 0.02 t 3600 / 12 z circle
Sergel Clock 4.0
Christer Nilsson
'25 Jul 09
: z dup push mod pi * pop 2 / / dup sin swap cos ; : circle ( r cx cy -- bool ) 2.5 / 0.5 + y - 2.5 ** swap 2.5 / 0.5 + x - 2.5 ** + sqrt > ; 0.04 t 60 z circle 0.03 t 60 / 60 z circle 0.02 t 3600 / 12 z circle
Sergel Clock 3.0
Christer Nilsson
'25 Jul 09
: z mod pi * 30 / dup sin swap cos ; : circle ( r cx cy -- bool ) 2.5 / 0.5 + y - 2.5 ** swap 2.5 / 0.5 + x - 2.5 ** + sqrt > ; 0.04 t 60 z circle 0.03 t 60 / 60 z circle 0.02 t 3600 / 12 mod pi * 6 / dup sin swap cos circle
Sergel Clock 2.0
Christer Nilsson
'25 Jul 09
: h 0.74 t 3600 / floor ; : m 0.58 t 60 / floor 60 mod ; : s 0.42 t floor 60 mod ; : x5 0.17 32 ; : x4 0.33 16 ; : x3 0.49 8 ; : x2 0.65 4 ; : x1 0.81 2 ; : x0 0.97 1 ; : check 2dup > -rot 0.14 + < and ; : bit rot / floor 2 mod -rot y check swap x check and and ; : hb h bit + ; : mb m bit + ; : sb s bit + ; x5 h bit x4 hb x3 hb x2 hb x1 hb x0 hb x5 m bit x4 mb x3 mb x2 mb x1 mb x0 mb x5 s bit x4 sb x3 sb x2 sb x1 sb x0 sb
BitClock Redux Redux 2
Christer Nilsson
'25 Jul 09
: h ( -- n ) t 3600 / floor ; : m ( -- n ) t 60 / floor 60 mod ; : s ( -- n ) t floor 60 mod ; : yh 0.74 ; : ym 0.58 ; : ys 0.42 ; : x5 0.17 ; : x4 0.33 ; : x3 0.49 ; : x2 0.65 ; : x1 0.81 ; : x0 0.97 ; : check ( y y0 -- bool ) 2dup > -rot 0.14 + < and ; : bit ( y0 x0 n b -- bool ) / floor 2 mod -rot x check swap y check and and ; yh x5 h 32 bit yh x4 h 16 bit + yh x3 h 8 bit + yh x2 h 4 bit + yh x1 h 2 bit + yh x0 h 1 bit + ym x5 m 32 bit ym x4 m 16 bit + ym x3 m 8 bit + ym x2 m 4 bit + ym x1 m 2 bit + ym x0 m 1 bit + ys x5 s 32 bit ys x4 s 16 bit + ys x3 s 8 bit + ys x2 s 4 bit + ys x1 s 2 bit + ys x0 s 1 bit +
BitClock Redux
Christer Nilsson
'25 Jul 09
: z 60 mod pi * 30 / dup sin swap cos ; : circle ( r cx cy -- bool ) 2.5 / 0.5 + y - 2.5 ** swap 2.5 / 0.5 + x - 2.5 ** + sqrt > ; 0.04 t z circle 0.03 t 60 / z circle 0.02 t 1800 / z circle
Sergel Clock
Christer Nilsson
'25 Jul 09
x .5 - 3 * 2.5 pow y .5 - 3 * 2.5 pow + sqrt 1 <
Sergels Torg
Christer Nilsson
'25 Jul 09
: xor + 2 mod ; : tile 8 * floor ; x tile y tile xor
Haiku Chessboard
Christer Nilsson
'25 Jul 09
: s t 1 mod ; : z s 0.2 + < and ; x s > x z y s > y z and
Untitled
Anonymous
'25 Jul 09
: v t 3600 / floor ; ( hour ) : u t 60 / floor 60 mod ; ( minute ) : s t floor 60 mod ; ( second ) : z swap / floor 2 mod 0 <> ; : x0 x 0.20 > x 0.25 < * * * * ; : x1 x 0.30 > x 0.35 < * * * * ; : x2 x 0.40 > x 0.45 < * * * * ; : x3 x 0.50 > x 0.55 < * * * * ; : x4 x 0.60 > x 0.65 < * * * * ; : x5 x 0.70 > x 0.75 < * * * * ; : x6 x 0.80 > x 0.85 < * * * * ; : x7 x 0.90 > x 0.95 < * * * * ; : y1 y 0.1 > y 0.15 < ; : y2 y 0.2 > y 0.25 < ; : y3 y 0.3 > y 0.35 < ; : q7 1 v z ; ( hour ) : q6 2 v z ; : q5 4 v z ; : q4 8 v z ; : q3 16 v z ; : q2 32 v z ; : q1 64 v z ; : q0 128 v z ; : c0 q0 y3 x0 ; : c1 q1 y3 x1 ; : c2 q2 y3 x2 ; : c3 q3 y3 x3 ; : c4 q4 y3 x4 ; : c5 q5 y3 x5 ; : c6 q6 y3 x6 ; : c7 q7 y3 x7 ; : p7 1 u z ; ( minute ) : p6 2 u z ; : p5 4 u z ; : p4 8 u z ; : p3 16 u z ; : p2 32 u z ; : p1 64 u z ; : p0 128 u z ; : b0 p0 y2 x0 ; : b1 p1 y2 x1 ; : b2 p2 y2 x2 ; : b3 p3 y2 x3 ; : b4 p4 y2 x4 ; : b5 p5 y2 x5 ; : b6 p6 y2 x6 ; : b7 p7 y2 x7 ; : o7 1 s z ; ( second ) : o6 2 s z ; : o5 4 s z ; : o4 8 s z ; : o3 16 s z ; : o2 32 s z ; : o1 64 s z ; : o0 128 s z ; : a0 o0 y1 x0 ; : a1 o1 y1 x1 ; : a2 o2 y1 x2 ; : a3 o3 y1 x3 ; : a4 o4 y1 x4 ; : a5 o5 y1 x5 ; : a6 o6 y1 x6 ; : a7 o7 y1 x7 ; c0 c1 c2 c3 c4 c5 c6 c7 + + + + + + + ( hour ) b0 b1 b2 b3 b4 b5 b6 b7 + + + + + + + ( minute ) a0 a1 a2 a3 a4 a5 a6 a7 + + + + + + + ( second )
BitClock
Christer Nilsson
'25 Jul 09
X y t 3. 1. 0
Untitled
Anonymous
'25 Jul 09
0 0.5 0
Untitled
Anonymous
'25 Jul 09
0 0.5 0
Untitled
Anonymous
'25 Jul 09
: rand random 0.5 - t sin * ; : x0 x 0.5 - 4 * rand + ; : y0 y 0.5 - 4 * rand + ; : r t 15 mod 1 + 3 / ; : dist x0 r ** y0 r ** + 1 r / ** ; dist 1 < random * dup random * dup random * 3 * x 3 and
Shape Shifter Redux
vim
'25 Jul 09
t random mod x 2
randomblue
Anonymous
'25 Jul 09
t : skin over z* ; y x t tan skin over sin sin over tan skin /
raderchek
vim
'25 Jul 09
t : trail t 4 * x + + sin y 2 * 1 - - abs 1 swap - ; t y + trail t sin x - trail t cos trail mod
Rainbowred
Anonymous
'25 Jul 09
y t - x y mod mod pi * x 12
blumpixle
vim
'25 Jul 09
t : d dup ; : m 1 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 mod
PACMAN hac
vim
'25 Jul 09
t x t + y mod dup
redusin
vim
'25 Jul 09
t ( inspired by "Web Wars" game on Vectrex console ) ( let's discuss Forth Haiku on demoscene.ru forum ) : t t 11 + ; : d dup ; : fract d floor - ; : n 6 ; : xx x .5 - ; : yy y .5 - ; : xw x .5 - 10 * ; : yw y .37 - t 2.5 * 1.1 - sin 30 / - 12 * ; : dx t n / floor sin 2 * ; : 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> 9 * 4 ** 1 min - ; 5 xx d * yy d * + sqrt d -rot / phase + sin abs over 9 * 4 ** ** swap .15 max .15 - * 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 mod
Vectrex fix Redux red
vim
'25 Jul 09
t ( greetings to BradN, Boomlinde, Digimind, DarkstarAG, Ivanq, Vort, Frag_, Stainless, demoscene.ru ) : zoom t 5 / sin 10 / ; : xx x .5 - .8 zoom - * t cos 5 / negate + ; : yy y .3 - .8 zoom - * zoom + ; : a t sin 3 / + ; : line 2dup sin * negate xx + swap a tan * swap yy + swap - 160 * 1 min 0 max ; : wings .025 .12 line .025 -.12 line * -.025 .12 line - -.025 -.12 line - ; : flaps 0.045 .8 line 0.006 .4 line - 0.045 -.8 line 0.006 -.4 line - + + 0 max ; : tail -0.057 0 line xx .065 - yy atan2 a 0 > - xx .065 + yy atan2 a 0 < - 0 max + xx .0065 + yy atan2 a 55 * 1 min 0 max xx .0065 - yy atan2 a 55 * 1 min 0 max - + ; : cut 1 -0.064 0 line - * 0.019 0 line * ; : circle dup 0 a cos * xx - 2 ** swap 0 a sin * yy - 2 ** + - 3999 * 0 max 1 min ; : engine 0.0008 .05 circle + 0.0008 -.05 circle + ; : fire 0.0002 random 8000 / + dup >r .05 circle r> -.05 circle + 5 * ; : run 4 1 y 1.3 * - / t dup floor - 6 * + floor 2 mod dup y 1.6 * + 1 min .6 * swap 0 = y 1.6 * + 1 min .5 * ; : sun 1 x .5 - 2 ** y .94 - 2 ** + .2 ** - ; run sun + wings flaps tail cut engine dup -rot - -rot - dup 0 > fire dup dup >r >r + rot r> + rot r> .65 * + 0 max .27 ** dup .05 < .36 * + mod
Planet in de sune
vim
'25 Jul 09
t ( greetings to BradN, Boomlinde, Digimind, DarkstarAG, Ivanq, Vort, Frag_, Stainless, demoscene.ru ) : zoom t 5 / sin 10 / ; : xx x .5 - .8 zoom - * t cos 5 / negate + ; : yy y .3 - .8 zoom - * zoom + ; : a t sin 3 / + ; : line 2dup sin * negate xx + swap a tan * swap yy + swap - 160 * 1 min 0 max ; : wings .025 .12 line .025 -.12 line * -.025 .12 line - -.025 -.12 line - ; : flaps 0.045 .8 line 0.006 .4 line - 0.045 -.8 line 0.006 -.4 line - + + 0 max ; : tail -0.057 0 line xx .065 - yy atan2 a 0 > - xx .065 + yy atan2 a 0 < - 0 max + xx .0065 + yy atan2 a 55 * 1 min 0 max xx .0065 - yy atan2 a 55 * 1 min 0 max - + ; : cut 1 -0.064 0 line - * 0.019 0 line * ; : circle dup 0 a cos * xx - 2 ** swap 0 a sin * yy - 2 ** + - 3999 * 0 max 1 min ; : engine 0.0008 .05 circle + 0.0008 -.05 circle + ; : fire 0.0002 random 8000 / + dup >r .05 circle r> -.05 circle + 5 * ; : run 4 1 y 1.3 * - / t dup floor - 6 * + floor 2 mod dup y 1.6 * + 1 min .6 * swap 0 = y 1.6 * + 1 min .5 * ; : sun 1 x .5 - 2 ** y .94 - 2 ** + .2 ** - ; run sun + wings flaps tail cut engine dup -rot - -rot - dup 0 > fire dup dup >r >r + rot r> + rot r> .65 * + 0 max .27 ** dup .05 < .36 * + mod
Planet in de sune
Anonymous
'25 Jul 09
t : z^2 2dup z* ; : layer push push z^2 pop pop 2dup push push z+ pop pop ; : many layer layer layer layer layer layer layer layer layer layer ; : len dup * swap dup * + ; : mant y 0.7 - 3 * x 0.5 - 3 * many drop drop len dup 1 < * ; 0 0 mant 0.1 0.1 mant 0.2 0.2 mant
blaming
Anonymous
'25 Jul 09
t x y t sin 2 / 0.5 + mod
rader
vim
'25 Jul 09
Next