Hurl, a terrible (but cute) idea for a language
Or you can go all the way in the other direction (double- or triple-barreled CPS) and have functions that can&#x27;t return but only call other functions.<p><pre><code>    let fizzbuzz = func(ret, fizzbuzz, x, max) {
        (x == max)(ret, func() {
            let printed = false;
            (x % 3)(func (t0) {
                let k0 = func() {
                    (x % 5)(func (t1) {
                        let k1 = func() {
                            let k2 = func() {
                                (x + 1)(func (t2) {
                                    fizzbuzz(ret, fizzbuzz, t2, max);
                                })
                            };
    
                            (printed == false)(func () {
                                print(k2, x);
                            }, k2);
                        };
    
                        (t1 == 0)(func () {
                            print(func() {
                                printed = true;
                                k1();
                            }, &quot;buzz&quot;);
                        }, k1);
                    });
                };
    
                (t0 == 0)(func() {
                    print(func() {
                        printed = true;
                        k0();
                    }, &quot;fizz&quot;);
                }, k0); 
            });
        });
    }
    
    fizzbuzz($halt, fizzbuzz, 0, 100);</code></pre>