Nick Montfort has implemented a text-creating program called "The IBM Poem" written by Emmett Williams in 1966. I am not entirely sure I can describe the algorithm clearly, but basically you seed the program with a bit of text, and then the program expands the text by looking at each letter of the text and adding something to the end of the text based on what that letter is.
OK, that wasn't clear. But you start with a word like "IBM". You then start with the first letter in the text, "I". You look up on your table that when you have an "I" you add, say, "ibis" to the end. Now your text is "IBM ibis". Then the next letter is "B", which your table says gets "bib": "IBM ibis bib". Then M, which maybe the table says leads to "bistro": "IBM ibis bib bistro". Then you've got a space, which you skip, and then the "i" in "ibis": "IBM ibis bib bistro ibis".
So you can see that the text you're creating creates itself, in some sense.
I have been working with this idea, off an on, for years now. I found the idea for it in Jackson Mac Low's poems, and in particular in those written around 1960 for what would become the book Stanzas for Iris Lezak. Take, for instance, the "3rd Asymmetry for Iris", which is reproduced in the new selected Mac Low, Thing of Beauty, but which doesn't seem to be online, so here are the first few lines:
Public understood by "logic" its childEtc. Mac Low here is, I believe, working through a source text, so he does not always get the same word for each instance of "u", which makes it a somewhat different computer program than Williams's. But what I'm most interested in here is this idea of expansion-by-alphabet.
upon NICKEL descent, endowed Republican source, to only orange duality.
long. Ordnance gives invalidates cost.
ICE to spent
cave human in lessons "different."
Us photosynthesis. On name
Negroes, Iowa come Kausika embarrass life
do explain steady contempts each not to
Of course, there's no reason why this method has to only connect a letter to a word -- the letter "a" could lead to an entire phrase, or to some other rule -- an "x" could lead to a rule of deleting the last three words, or a "h" could cause a switch to an entirely different table of correspondences. And the table dictates the frequency of the events in that table -- in most situations, an "e" is going to come up more often than a "q", but if you stack the table in a certain way, that might not be the case at all. So I've found it to be a very dynamic and useful tool for creating texts, and I'm glad that Nick brought to my attention another part of the history of this idea, and if there are other examples of work done along these lines, let me know.