I don't know what "folding" is supposed to mean in this context and it's not defined elsewhere on the page. Is there a common usage of the term when describing a programming language that I'm not familiar with? I first thought of a functional fold but that doesn't appear to be the intended meaning here.
He talks about it in a blog post [1] and uses Steve Yegge's definition [2] of "code that writes code that writes code". Ioke is homoiconic and seems to contain fexprs (functions which allow you to pass it unevaluated code to be evaluated (or not) later, thus capturing dynamic scope), like Io, and unlike most modern lisps.
In functional programming, fold – also known variously as reduce, accumulate, aggregate, compress, or inject – refers to a family of higher-order functions that analyze a recursive data structure and through use of a given combining operation, recombine the results of recursively processing its constituent parts, building up a return value. Typically, a fold is presented with a combining function, a top node of a data structure, and possibly some default values to be used under certain conditions. The fold then proceeds to combine elements of the data structure's hierarchy, using the function in a systematic way.
I don't get it. The page mentions what goals ioke is trying to achieve, but then offers no meaningful demonstration whatsoever of the language's compelling features. I'm left with the impression that "it's good because I say so."
I'm really intrigued, but I don't even know what I'm looking at. The language guide didn't help either.
I haven't looked at it recently, but a couple of years ago, the idea seemed to be (explicitly) "I'm willing to give up run time to reduce program length and coding time", but (implicitly) without straying far from Ruby+IO.
The "what's different" examples back at the time showed a few Ioke programs that were half the length of the equivalent Java and Ruby ones and running at 5 times as slow; Coming from an APL/K/J background, I was unimpressed by this tradeoff.
Have no idea if things are different with Ioke today, and not enough time to look at it again right now, sadly.