AARGHV = ARGV AARGHray = Array Aye = true class AarghYeSunkMeShip < RuntimeError; end module Enumerable alias_method :aye?, :any? alias_method :treasure_map, :map end module PirateSpeak def method_missing(id,*args,&block) msg = id.to_s msg.sub!(/^(gimme_)?yer?((_stinkin)|_cursed)?_/,'') msg.sub!(/^(gimme_)?me?((_stinkin)|_cursed)?_/,'') msg.sub!(/^(avast_with_)?yer?((_stinkin)|_cursed)?_/,'') msg.sub!(/^yo_ho_ho_and_a_bottle_of_/,'') msg.sub!(/^ye_old_salty_/,'') send(msg,*args,&block) rescue super end end module Kernel def avast! exit end def blow_me_down raise AarghYeSunkMeShip, "Yarr! Ye Stinkin' Lubber!!!" end end class AARGHray alias_method :plunder, :clear alias_method :dungbie, :last alias_method :fore, :first alias_method :skewer, :slice end class String alias_method :maroon, :split end class Object include PirateSpeak def me_onsies class << self; self; end end def self.ahoy(*args,&block) new(*args,&block) end def hail(*args,&block) send(*args,&block) end alias_method :me_matey?, :kind_of? def mebbe(symbol,*args) hail(symbol,*args) rescue NoMethodError nil end alias_method :has_black_spot?, :tainted? alias_method :savvy?, :respond_to? end require "stringio" class IO alias_method :furl, :rewind end class StringIO alias_method :furl, :rewind end