Ruby monsters

Embed Size (px)


An exploration of the forgotten and dusty corners of Ruby, including a tour of some very unusual behaviors from threads, loops, exceptions and procs. This is a technical deep dive into some obscure features of Ruby that may someday crawl out from under your bed, and when they do you'll be glad you were prepared for the fight.

Text of Ruby monsters

  • 1. Im Jonanalso @1337807

2. Im from Portland 3. They call meWebmaster 4. Also New Relic 5. One of 6. Ruby Monsters! 7. Oddities 8. Ruby is adorable 9. begin; endA neutral, hypoallergenic code wrappermade of opinions. 10. do while 11. ensureWhen you absolutely, probably, maybeneed it done approximately right. 12. Thread#raise 13. I dont useThread#raise. 14. Net/HTTP 15. flip-flopWhen only the occasional truth will do. 16. (expr1)..(expr2)inclusive, evaluates both expressionson each pass(expr1)(expr2)exclusive, evaluates one expression periteration 17. scopeLike voting districts for your code, withmore gerrymandering. 18. closuresTheyre exactly like that one thing fromthat one language except sometimeswhen theyre not. 19. portable code podsbits of code that travel a lot, but neverforget their roots. 20. blocks 21. Integer#times 22. procs 23. lambdas 24. blocks and procs- arbitrary arguments!- return homelambdas- strict arguments!- local return 25. goto! 26. Im Jonanalso @1337807 27. Im from Portland 28. They call meWebmaster 29. I work for New Relic 30. One of 31. Ruby Monsters! 32. !the end :)