Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Rubinius, and the Future of Ruby

brixen
March 01, 2013

Rubinius, and the Future of Ruby

Presentation at Elemental http://www.elementaltechnologies.com/ on 1 March 2013.

brixen

March 01, 2013
Tweet

More Decks by brixen

Other Decks in Technology

Transcript

  1. class Array : public Object { private: Fixnum* total_; //

    slot Tuple* tuple_; // slot public: attr_accessor(total, Fixnum); attr_accessor(tuple, Tuple); }
  2. instruction send_method(literal) [ receiver -- value ] => send flush_ip();

    Object* recv = stack_top(); InlineCache* cache = reinterpret_cast<InlineCache*>(literal); Arguments args(cache->name, recv, cNil, 0, 0); Object* ret = cache->execute(state, call_frame, args); (void)stack_pop(); CHECK_AND_PUSH(ret); end
  3. class OneArgument { public: static bool call(STATE, VMMethod* vmm, StackVariables*

    scope, Arguments& args) { if(args.total() != 1) return false; scope->set_local(0, args.get_argument(0)); return true; } };