Upgrade to PRO for Only $50/Yearβ€”Limited-Time Offer! πŸ”₯

Poisoning Rubinius: the _why and how

Avatar for brixen brixen
November 13, 2010
96

Poisoning Rubinius: the _why andΒ how

RubyConf 2010 talk about Rubinius, Potion and Poison, an interpretation of _why's Potion programming language.

Avatar for brixen

brixen

November 13, 2010
Tweet

Transcript

  1. Toy [noun]: A technological product which is simple and fun

    to use, and which may be criticized by some people as being weak and not suitable for serious work. Monday, November 15, 2010
  2. Source β†’ Parser β†’ Compiler β†’ Virtu script class name

    Exclaimer superclass nil method blurt Abstract Syntax Tree Monday, November 15, 2010
  3. Virtual Machine [ :push_literal, β€œ_why ”, :push_local, :blurb, ...] r

    β†’ Compiler β†’ Virtual Machine Stack IP = 0 Instruction Sequence Monday, November 15, 2010
  4. Virtual Machine [ :push_literal, β€œ_why ”, :push_local, :blurb, ...] r

    β†’ Compiler β†’ Virtual Machine Stack IP = 0 Instruction Sequence β€œ_why ” Monday, November 15, 2010
  5. Virtual Machine [ ..., :push_local, :blurb, :allow_private, :send_st...] r β†’

    Compiler β†’ Virtual Machine Stack IP = 2 Instruction Sequence β€œ_why ” Monday, November 15, 2010
  6. Virtual Machine [ ..., :push_local, :blurb, :allow_private, :send_st...] r β†’

    Compiler β†’ Virtual Machine Stack IP = 2 Instruction Sequence β€œ_why ” β€œrocks” Monday, November 15, 2010
  7. Virtual Machine [ ..., :send_stack, :to_s, 0, :push_literal, β€œ!”, :str...]

    r β†’ Compiler β†’ Virtual Machine Stack IP = 5 Instruction Sequence β€œ_why ” β€œrocks” Monday, November 15, 2010
  8. Virtual Machine [ ..., :push_literal, β€œ!”, :string_build, 3, :ret] r

    β†’ Compiler β†’ Virtual Machine Stack IP = 8 Instruction Sequence β€œ_why ” β€œrocks” Monday, November 15, 2010
  9. Virtual Machine [ ..., :push_literal, β€œ!”, :string_build, 3, :ret] r

    β†’ Compiler β†’ Virtual Machine Stack IP = 8 Instruction Sequence β€œ_why ” β€œrocks” β€œ!” Monday, November 15, 2010
  10. Virtual Machine [ ..., :string_build, 3, :ret] r β†’ Compiler

    β†’ Virtual Machine Stack IP = 10 Instruction Sequence β€œ_why ” β€œrocks” β€œ!” Monday, November 15, 2010
  11. Virtual Machine [ ..., :string_build, 3, :ret] r β†’ Compiler

    β†’ Virtual Machine Stack IP = 10 Instruction Sequence β€œ_why rocks!” Monday, November 15, 2010