Poisoning Rubinius: the _why and how

A8e44ce1b57c2689d5a7172d15df42b5?s=47 brixen
November 13, 2010
54

Poisoning Rubinius: the _why and how

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

A8e44ce1b57c2689d5a7172d15df42b5?s=128

brixen

November 13, 2010
Tweet

Transcript

  1. Monday, November 15, 2010

  2. Monday, November 15, 2010

  3. http://www.flickr.com/photos/pragdave/173649119/ Monday, November 15, 2010

  4. http://mislav.uniqpath.com/poignant-guide/book/ Monday, November 15, 2010

  5. •inspire •diversify •new •worse Monday, November 15, 2010

  6. Monday, November 15, 2010

  7. _why is hiding where Dave Thomas’ brain is missing!!! Monday,

    November 15, 2010
  8. _why struggled with programming Monday, November 15, 2010

  9. http://commons.wikimedia.org/wiki/File:Space_Shuttle_Columbia_launching_cropped_2.jpg.jpg Monday, November 15, 2010

  10. http://commons.wikimedia.org/wiki/File:Space_Shuttle_Columbia_launching_cropped_2.jpg.jpg Fallacy of Scope Monday, November 15, 2010

  11. Monday, November 15, 2010

  12. Fallacy of Quality Monday, November 15, 2010

  13. Monday, November 15, 2010

  14. WEBSCALE Monday, November 15, 2010

  15. Monday, November 15, 2010

  16. Monday, November 15, 2010

  17. Monday, November 15, 2010

  18. 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
  19. •user-oriented & UX •general BS •bigger ecosystem Monday, November 15,

    2010
  20. Monday, November 15, 2010

  21. what if you knew nothing about programming? Monday, November 15,

    2010
  22. Monday, November 15, 2010

  23. Monday, November 15, 2010

  24. Monday, November 15, 2010

  25. Monday, November 15, 2010

  26. Monday, November 15, 2010

  27. Monday, November 15, 2010

  28. Monday, November 15, 2010

  29. Potion Monday, November 15, 2010

  30. Monday, November 15, 2010

  31. Monday, November 15, 2010

  32. Monday, November 15, 2010

  33. Monday, November 15, 2010

  34. Monday, November 15, 2010

  35. Monday, November 15, 2010

  36. pause for effect... Monday, November 15, 2010

  37. Monday, November 15, 2010

  38. Monday, November 15, 2010

  39. http://www.sciencemag.org/cgi/content/summary/292/5524/1971c Monday, November 15, 2010

  40. http://ferryservicestokeywest.com/snorkeling.php Monday, November 15, 2010

  41. Rubinius how does it work? Monday, November 15, 2010

  42. Source → Parser → Compil Monday, November 15, 2010

  43. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  44. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  45. Source → Parser → Compiler → Virtu script class name

    Exclaimer superclass nil method blurt Abstract Syntax Tree Monday, November 15, 2010
  46. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  47. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  48. Virtual Machine [ :push_literal, “_why ”, :push_local, :blurb, ...] r

    → Compiler → Virtual Machine Stack IP = 0 Instruction Sequence Monday, November 15, 2010
  49. Virtual Machine [ :push_literal, “_why ”, :push_local, :blurb, ...] r

    → Compiler → Virtual Machine Stack IP = 0 Instruction Sequence “_why ” Monday, November 15, 2010
  50. Virtual Machine [ ..., :push_local, :blurb, :allow_private, :send_st...] r →

    Compiler → Virtual Machine Stack IP = 2 Instruction Sequence “_why ” Monday, November 15, 2010
  51. Virtual Machine [ ..., :push_local, :blurb, :allow_private, :send_st...] r →

    Compiler → Virtual Machine Stack IP = 2 Instruction Sequence “_why ” “rocks” Monday, November 15, 2010
  52. 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
  53. Virtual Machine [ ..., :push_literal, “!”, :string_build, 3, :ret] r

    → Compiler → Virtual Machine Stack IP = 8 Instruction Sequence “_why ” “rocks” Monday, November 15, 2010
  54. Virtual Machine [ ..., :push_literal, “!”, :string_build, 3, :ret] r

    → Compiler → Virtual Machine Stack IP = 8 Instruction Sequence “_why ” “rocks” “!” Monday, November 15, 2010
  55. Virtual Machine [ ..., :string_build, 3, :ret] r → Compiler

    → Virtual Machine Stack IP = 10 Instruction Sequence “_why ” “rocks” “!” Monday, November 15, 2010
  56. Virtual Machine [ ..., :string_build, 3, :ret] r → Compiler

    → Virtual Machine Stack IP = 10 Instruction Sequence “_why rocks!” Monday, November 15, 2010
  57. now, the hard part Monday, November 15, 2010

  58. Source → Parser → Compil Monday, November 15, 2010

  59. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  60. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  61. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  62. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  63. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  64. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  65. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  66. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  67. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  68. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  69. Source → Parser → Compiler → Virtu Monday, November 15,

    2010
  70. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  71. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  72. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  73. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  74. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  75. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  76. Source → Parser → Compiler → Virtual Machin Monday, November

    15, 2010
  77. integrate inter-operate Monday, November 15, 2010

  78. Monday, November 15, 2010

  79. Monday, November 15, 2010

  80. Monday, November 15, 2010

  81. http://www.lulu.com/product/paperback/learn-python-the-hard-way/13509215 http://commons.wikimedia.org/wiki/File:Cornelis_Pietersz._Bega_-_De_Alchemist.jpg ois Monday, November 15, 2010

  82. github.com/brixen/poison po.isono.us Monday, November 15, 2010

  83. ZOMG THANK YOU EVERYONE!!! (and @tenderlove) Monday, November 15, 2010