I've Got N Words For You:
February 10, 2016 7:29 AM   Subscribe

"I've got eight words for you: I've got two words for you: Fuck off" A Python code implementation of the sequence presented by @extranapkins in this tweet.
posted by Greg Nog (24 comments total)

This post was deleted for the following reason: Poster's Request -- frimble



 
I've got one comment for you:
posted by Rock Steady at 7:37 AM on February 10, 2016


Oh, N Words, not N-Words. I was wondering how this was going to work.
posted by Room 641-A at 7:41 AM on February 10, 2016 [7 favorites]


Inspired by Douglas Hofstadter . . .

"I've got nine words for you: I've got three words for you. Fuck cabbage off."
posted by The Bellman at 7:45 AM on February 10, 2016 [3 favorites]


I did it using recursion. I like my solution better:
def generateComment(n):
    if (n==0):
        return "I've got 2 words for you: fuck off"
    else:
        return "I've got {} words for you:".format((n*6)+2)+generateComment(n-1)
        
print (generateComment(25))
posted by graymouser at 7:49 AM on February 10, 2016 [3 favorites]


No, my solution is best:
def generateComment(n):
    raise Error('fuck off')
posted by moonmilk at 7:54 AM on February 10, 2016 [7 favorites]


NASA should do shuttle launch countdowns like this.
posted by sylvanshine at 8:19 AM on February 10, 2016 [1 favorite]


This reminds me of a friend's observation that there was a Pope John, a Pope Paul, and a Pope John Paul, which suggests a Fibonacci Sequence.
Pope John
Pope Paul
Pope John Paul
Pope Paul John Paul
Pope John Paul Paul John Paul
Pope Paul John Paul John Paul Paul John Paul
and so on.
posted by moonmilk at 8:37 AM on February 10, 2016 [17 favorites]


That's 7 more words than the N you promised.
posted by scruss at 8:55 AM on February 10, 2016


Now make it a quine and we can get published.
posted by boo_radley at 9:23 AM on February 10, 2016


Best part? Finding out about the num2words module.

(Though according to my 7th grade math teacher, "nine hundred and twenty-one words" should not have the word "and" in it — "and" is used only to pronounce any decimal point the number may have. Then again, that's the same 7th grade where I took a class on typing on a manual typewriter so probably everything I learned is hopelessly 20th Century. Do the Latin Americans use vosotros now?)
posted by benito.strauss at 9:36 AM on February 10, 2016


graymouser, you can simplify the base case:
def generateComment(n):
    if n == 0:
        return "Fuck off."
    return "I've got {} words for you: ".format(n*6-4) + generateComment(n-1)
Incidentally, if someone references the white-supremacist fourteen words, generateComment(3) is an ideal reply.
posted by Rangi at 9:52 AM on February 10, 2016 [1 favorite]


I did it using recursion. I like my solution better:

RuntimeError: maximum recursion depth exceeded in comparison
posted by invitapriore at 10:24 AM on February 10, 2016


"Jack, you're a grown man. You have control over your own words."

"You're goddamn right I do, so here come two words for you: shut the fuck up."
posted by usonian at 10:33 AM on February 10, 2016


fun!
=> (pprint (take 10 (iterate #(clojure.pprint/cl-format nil "I've got ~r words for you: ~a" (count (clojure.string/split % #" ")) %) "Fuck Off")))
("Fuck Off"
 "I've got two words for you: Fuck Off"
 "I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got twenty words for you: I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got twenty-six words for you: I've got twenty words for you: I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got thirty-two words for you: I've got twenty-six words for you: I've got twenty words for you: I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got thirty-eight words for you: I've got thirty-two words for you: I've got twenty-six words for you: I've got twenty words for you: I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got forty-four words for you: I've got thirty-eight words for you: I've got thirty-two words for you: I've got twenty-six words for you: I've got twenty words for you: I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off"
 "I've got fifty words for you: I've got forty-four words for you: I've got thirty-eight words for you: I've got thirty-two words for you: I've got twenty-six words for you: I've got twenty words for you: I've got fourteen words for you: I've got eight words for you: I've got two words for you: Fuck Off")
nil
posted by idiopath at 12:12 PM on February 10, 2016 [1 favorite]


If used properly (eg. head holding discipline) the Clojure version above will keep creating iterations until it generates a string larger than the vm can represent, at which point it will fuck off.
posted by idiopath at 12:16 PM on February 10, 2016 [1 favorite]


Though according to my 7th grade math teacher, "nine hundred and twenty-one words" should not have the word "and" in it — "and" is used only to pronounce any decimal point the number may have. Then again, that's the same 7th grade where I took a class on typing on a manual typewriter so probably everything I learned is hopelessly 20th Century....

When I was temping a few years ago, every office I worked in that handled money or billing on a regular basis still followed that rule. Helps prevent embarrassing order-of-magnitude errors.
posted by nebulawindphone at 1:35 PM on February 10, 2016 [2 favorites]


The missing off the "and" bit is a North American thing, which I still can't bring myself to do. "Nine hundred twenty one" I'd take as 900×21, which is eighteen thousand and nine hundred, as any fule kno.
posted by scruss at 2:02 PM on February 10, 2016 [1 favorite]


Hang around MetaFilter long enough and someone will make a Molesworth reference. That's why, for all my griping, I'm never really going to leave MetaFilter.
posted by The Bellman at 2:10 PM on February 10, 2016 [1 favorite]


If used properly (eg. head holding discipline) the Clojure version above will keep creating iterations until it generates a string larger than the vm can represent, at which point it will fuck off.

You don't mean this in contrast to the Python version in the link, do you? It has the same property.
posted by invitapriore at 3:18 PM on February 10, 2016


invitapriore: right, python generators are lazy just as clojure lazy-seqs are, the contrast was to the stack overflow above in this thread.
posted by idiopath at 3:26 PM on February 10, 2016


> "and" is used only to pronounce any decimal point the number may have

Oh good, I'm not the only person who learned this. Question is, were we classmates in 7th grade, or at least blessed with the same crackpot math teacher? (I was in two schools in 7th, both in Virginia, and I have no recollection of either math teacher.)
posted by Sunburnt at 5:54 PM on February 10, 2016


Southern California, Mrs. Sterck, though I think her name changed due to marriage half way through the year, but she didn't move away. Nice woman, not crackpot at all.

I think everyone taught from the same Addison Wesley textbooks back then. Were you also taught to put two spaces after each period when typing?
posted by benito.strauss at 6:43 PM on February 10, 2016


Widest Roman Prime (via)
posted by kliuless at 11:00 AM on February 11, 2016


what word is I've? oh that's right, it's TWO WORDS.
posted by gorgor_balabala at 10:27 PM on February 11, 2016


« Older This is going to be he YOOOOOGEST FPP that this...   |   Wears flannel shirts (inconsistent with city... Newer »


This thread has been archived and is closed to new comments