inline-ook: a library that allows you to embed Ook! program in Ruby script

In RubyKaigi 2010, Chad Fowler introduced Ook! which is a programming language designed for orang-utans.

Ook! program is just like Ruby program, isn't it? Ook. Ook! Ook. Ook? can be interpreted as Ook.Ook!(Ook.Ook?) in Ruby. Thus I tried to embed Ook! program into Ruby program, and succeeded:

require "inline-ook"

puts "Hello, Ruby!"  #=> Hello, Ruby!

ook begin
  Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook. Ook? Ook. Ook.
  Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook.
  Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook! Ook? Ook! Ook. Ook?
  Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook.
  Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook.
  Ook. Ook? Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook!
  Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
  Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook! Ook!
  Ook! Ook! Ook! Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook! Ook!
  Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook.
  Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
  Ook. Ook. Ook. Ook. Ook! Ook.
ook end  #=> Hello, Ook!

puts "Hello, Ruby again!"  #=> Hello, Ruby again!

You can write any Ook! program in Ruby program just by surrounding ook begin and ook end. You don't have to use here document. You don't have to apply any patch to ruby interpreter.

$ ruby example/hello.ook.rb
Hello, Ruby!
Hello, Ook!
Hello, Ruby again!

You can install inline-ook as follows. I tested it with 1.8.7-p72 and 1.9.2-p0.

$ gem install inline-ook

translated from mamememo in Japanese (2010-09-07).

1 comment:

mazhar said...

Raxcard is a US based organization, which provide unique and one of its kind bitcoin atm card , changing the traditional methods of carrying money in your pocket, providing its customers with reliability, stability and security along with 24/7 access to your funds via dedicated online setup.

Post a Comment