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

Knuth's up-arrow notation

Name: Anonymous 2007-08-07 11:37 ID:ywrNHFyl

(defun knuth (x n)
  (if (= n 2)
      (return-from knuth (expt x x))
    (return-from knuth (expt x (knuth x (- n 1))))
    )
)


Yes, an implementation in 6 lines of Lisp. What is Knuth's up-arrow notation? Wikipedia that shit. Don't try this with anything greater than (knuth 3 3), or you will overflow. (knut 3 3) == 3^3^3. (knuth 3 4) == 3^3^3^3.

Name: Anonymous 2007-08-08 4:33 ID:GDribYI2

>>23
You don't.

    Occurs check: cannot construct the infinite type: a = a -> a
    Probable cause: `**' is applied to too few arguments
    In the first argument of `iterate', namely `(**)'
    In the first argument of `(!!)', namely `(iterate (**) x)'


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