Skip to content

Instantly share code, notes, and snippets.

@ferrous26
ferrous26 / bf.rb
Last active December 11, 2015 07:38
Brainfuck interpreter in Ruby
#!/usr/bin/env ruby
mem = Array.new(30_000)
iptr = dptr = 0
prog = File.read ARGV.first
jmp = lambda { |op, a, b|
(iptr = iptr.send(op, 1); jmp.call(op, a, b) if prog[iptr] == a) until prog[iptr] == b
}
nop = lambda {}
cmds = {
'>' => lambda { dptr += 1 },
@ferrous26
ferrous26 / test.rb
Created May 19, 2011 05:41
Problem in MacRuby somewhere...but where?
require 'json'
require 'rubygems'
require 'restclient'
# setup db
DB = 'http://127.0.0.1:5984/test'
RestClient.delete DB rescue nil
RestClient.put DB, {}.to_json
# setup a document