Skip to content

Instantly share code, notes, and snippets.

@Gpx
Last active December 17, 2015 06:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Gpx/5563161 to your computer and use it in GitHub Desktop.
Save Gpx/5563161 to your computer and use it in GitHub Desktop.
require 'memoist'
class Footnote
extend Memoist
def footnote(statement, number)
if number == 1
"Ignore this"
elsif number == 2
statement.to_i + 2
elsif number == 3
footnote(false, footnote(3, 2))
elsif number == 4
false
elsif number == 5
footnote(true, footnote(2, footnote(6, 3)))
elsif number == 6
footnote(statement, footnote(1, footnote(2, footnote(2))))
end
end
memoize :footnote
end
fn = Footnote.new
puts fn.footnote(true, fn.footnote(1, 2))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment