Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

No captcha?

Name: Brian Brixman 2021-02-01 16:33

Hello,
I am learning programming and just discovered this website. But I am curious, how does it protect its users from spammers (people who post illegal or annoying things) without a reCaptcha? I thought clicking this blue box is required to prove that you are not a robot, can you please share any javascript that you use for this purpose?
Thank you and have a nice day,
Brian

Name: Competitive Disadvantage 2021-04-06 13:27

766 buzz=766 Name: Anonymous 2021-01-20 3:00 nextperm=20210123000
💑 🂽 💛 💘 💚 die +0m #150 fizz=ThreeFive inhour=3 inday=60 prime=863 💚 💘 💛 🂽 💑
gcd = 2 = (-28)*766 + 143*150
fib = 6161314747715278029583501626149
e ~ 854328256748876 / 314289801669749 = 2.7182818284590452353602874713_15949022391644386202079029556367

Added a processing step >>115 to upgrade one of the tokens into a link to successive photos/rms-working images for the 362 >>8 "die" posts. https://dis.tinychan.net/read/prog/1582047203 Currently the "die" post counter becomes the link. [parsetime, buttonnum, rmslinks, timedelta, count, rmsimages, fizzbuzz, hourdaily, primes, hearts, gcd, fibonacci, broccoli, nextperm]

posts code in /prog/

(processors => Array.from (document.querySelectorAll ("div.post > div.body")).filter (e => "die" == e.innerText).forEach (e => (elemstate => processors.forEach (p => p (e, elemstate))) ({}))) ([
(e, estate) => (m => { estate['posttime'] = m [0]; estate['day'] = parseInt (m [1], 10); estate['hour'] = parseInt (m [2], 10); estate['min'] = parseInt (m [3], 10); }) (e.parentNode.querySelector ('span.post_time').innerText.match (/^2021-01-(\d+) (\d+):(\d+)$/)),
(e, estate) => (btn => { estate['button'] = btn; estate['buttonnum'] = parseInt (btn.innerText, 10); }) (e.parentNode.querySelector ('button.num')),
(rmsarray => (e, estate) => { e.innerHTML = "<a class='die-link' href='#" + rmsarray [Math.floor (rmsarray.length * Math.random ())].parentNode.getAttribute ("id") + "'>" + e.innerHTML.trim () + "</a>"; }) (Array.from (document.querySelectorAll ("div.post > div.body")).filter (e => /https?:\/\/(www[.])?stallman[.]org\/archives\//.test (e.innerHTML))),
(procstate => (e, estate) => ((t, last) => { if (last >= 0) { ((h, m) => { e.innerHTML += ' +' + (h > 0 ? h + 'h' : '') + m + 'm'; }) ((t - last - (t - last) % 60) / 60, (t - last) % 60); } procstate['last'] = t; }) ((estate['day'] * 24 + estate['hour']) * 60 + estate['min'], procstate['last'])) ({last: -1}),
(procstate => (e, estate) => { e.innerHTML += ' #' + (estate['diecount'] = (++procstate['count'])); }) ({count: 0}),
((makelink, mod) => (e, estate) => { e.innerHTML = e.innerHTML.replace (/ (\S+)$/, makelink (estate['diecount'], mod)); }) ((count, mod) => (match, p1) => [' <a class="image-link" target="_blank" href="https://www.stallman.org/photos/rms-working/pages/', ((count - 1) % mod) + 1, '.html">', p1, '</a>'].join (''), 149),
((cycle, fbval, spec) => ((fb, fbn) => (e, estate) => { e.innerHTML += ' fizz=' + fb.next ().value; estate['button'].innerHTML += ' buzz=' + fbn (estate['buttonnum']); }) (function* () { const gens = spec.map (cycle); for (let k = 1; ; k++) { yield fbval (k, gens.map (g => g.next ().value)); } } (), n => fbval (n, spec.map (([div, s]) => n % div == 0 ? s : "")))) (function* ([n, s]) { for (;;) { for (let k = 1; k < n; k++) { yield ""; } yield s; } }, (n, vals) => { const s = vals.join (""); return s === "" ? n.toString () : s; }, [[3, "Three"], [5, "Five"], [7, "Seven"], [11, "Eleven"]]),
((procstate, spec) => (e, estate) => { e.innerHTML += spec.map (([label, keyfun]) => (key => (count => { procstate[key] = count + 1; return ' ' + label + '=' + (count + 1); }) (procstate[key] ?? 0)) (keyfun (estate))).join (''); }) ({}, [['inhour', estate => 'd' + estate['day'] + 'h' + estate['hour']], ['inday', estate => 'd' + estate['day']]]),
((base, filter, hasmod) => (primes => (e, estate) => { e.innerHTML += ' prime=' + primes.next ().value; }) (function* () { for (let p = base (2), x = p.next ().value; ; p = filter (hasmod (x), p), x = p.next ().value) { yield x; } } ())) (function* (start) { for (let x = start; ; x++) { yield x; } }, function* (pred, iter) { for (let x = iter.next (); !x.done; x = iter.next ()) { if (pred (x.value)) { yield x.value; } } }, div => x => x % div != 0),
((chars, n) => (narray => (e, estate) => (pick => { e.innerHTML = pick.join (' ') + ' ' + e.innerHTML + ' ' + pick.reverse ().join (' '); }) (narray.map (k => chars [Math.floor (chars.length * Math.random ())]).map (s => '&#x' + s + ';'))) (Array.from (Array (n).keys ()))) ('2619 2661 2665 2763 2764 2765 2766 2767 2E96 2E97 2F3C 1F0B1 1F0B2 1F0B3 1F0B4 1F0B5 1F0B6 1F0B7 1F0B8 1F0B9 1F0BA 1F0BB 1F0BC 1F0BD 1F0BE 1F394 1F491 1F493 1F494 1F495 1F496 1F497 1F498 1F499 1F49A 1F49B 1F49C 1F49D 1F49E 1F49F 1F5A4 1F60D 1F63B'.split (' '), 5),
((step, paren) => ((gcd, show) => (e, estate) => ((a, b) => { e.innerHTML += '<br/>' + show (a, b, gcd (a, b)); }) (estate['buttonnum'], estate['diecount'])) ((a, b) => { const state = [a, b, 1, 0, 0, 1]; while (state[1] != 0) { step (state); } return [state[0], state[2], state[3]]; }, (a, b, [g, x, y]) => ['gcd = ', g, ' = ', paren (x), '*', a, ' + ', paren (y), '*', b].join (''))) (state => { const [a, b, fa, fb, ga, gb] = state; const m = a % b, d = (a - m) / b; state[0] = b; state[1] = m; state[2] = ga; state[3] = gb; state[4] = fa - d * ga; state[5] = fb - d * gb; }, a => a < 0 ? '(' + a + ')' : a.toString ()),
(fibs => (e, estate) => { e.innerHTML += '<br/>fib = ' + fibs.next ().value; }) (function* () { let a = BigInt (0), b = BigInt (1); yield a; yield b; for (;;) { [a, b] = [b, a + b]; yield b; } } ()),
(procstate => ((tobig, matmul, tofrac, show1, show2, diff, marker, lr4e) => ((S, L, R) => (mstream => (estream => (e, estate) => ((prev, tfnow) => (snow => { e.innerHTML += '<br/>e ~ ' + show1 (tfnow) + (prev === '' ? snow : marker (snow, diff (prev, snow))); procstate['prev'] = snow; }) (show2 (tfnow))) (procstate['prev'], tofrac (estream.next ().value))) (mstream (lr4e ()))) (function* (lrstream) { let m = S; for (let x = lrstream.next ().value; ; x = lrstream.next ().value) { m = matmul (m, x == 'L' ? L : R); yield m; } })) (tobig ([0, 1, 1, 0]), tobig ([1, 1, 0, 1]), tobig ([1, 0, 1, 1]))) (m => m.map (x => BigInt (x)), (m1, m2) => [m1 [0] * m2 [0] + m1 [1] * m2 [2], m1 [0] * m2 [1] + m1 [1] * m2 [3], m1 [2] * m2 [0] + m1 [3] * m2 [2], m1 [2] * m2 [1] + m1 [3] * m2 [3]], m => [m [0] + m [1], m [2] + m [3]], ([a, b]) => a.toString () + ' / ' + b.toString () + ' = ', (digits => (power => ([a, b]) => (a / b).toString () + '.' + (a % b * power / b).toString ().padStart (digits, '0')) (BigInt (10) ** BigInt (digits))) (60), (s1, s2) => { let n = Math.min (s1.length, s2.length); for (let k = 0; k < n; k++) { if (s1 [k] !== s2 [k]) { return k; } } return n < s2.length ? n : -1; }, (s, pos) => pos < 0 ? s : (s.substring (0, pos) + '_' + s.substring (pos)), function* () { let count = 0; yield 'R'; for (;;) { count += 2; yield* 'RL'; yield* 'R'.repeat (count); count += 2; yield* 'LR'; yield* 'L'.repeat (count); } })) ({prev: ''}),
((sortend, minover, swap) => (next => (e, estate) => { e.parentNode.children [0].innerHTML += ' nextperm=' + next (Array.from (estate['posttime'].replace (/\D/g, ''))).join (''); }) (arr => { if (arr.length < 2) { return arr; } for (let k = arr.length - 2; k >= 0; k--) { let over = minover (arr, k); if (over >= 0) { return sortend (swap (arr, k, over + k + 1), k + 1); } } return arr.sort (); })) ((arr, pos) => { arr.splice (pos, arr.length - pos, ...arr.slice (pos).sort ()); return arr; }, (arr, pos) => arr.slice (pos + 1).reduce ((acc, item, idx, sli) => (arr [pos] < item) && ((acc < 0) || (item < sli [acc])) ? idx : acc, -1), (arr, a, b) => { let x = arr [a]; arr [a] = arr [b]; arr [b] = x; return arr; }),
])

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List