Ruby::AZ - Oct 16th

Posted by rubyaz-admin in Events, Ruby::AZ | no comments

Tim Crews on Metaprogramming with Ruby

Slides from the talk

Metaprogramming is powerful technology that must be applied carefully and with good taste. When done badly, metaprogramming can result in absurdly obscure code. But done well, metaprogramming can produce readable, expressive, and concise code.

Tim Crews will provide a whirlwind tour of metaprogramming practices in a variety of programming languages, from the simple text-substituting macros of the C preprocessor to the lofty heights of Lisp, where all code is data, and metaprogramming is perhaps the dominant programming paradigm.

Of course, the tour will end with Ruby -- a programming language that has hit a sweet spot in the continuum of language design tradeoffs required to enable metaprogramming. Ruby's metaprogramming facilities make it possible to create the fluent, coder-friendly programming interfaces for which the language, its libraries, and its frameworks are famous.


The group meets at 6:30pm on the 3rd Tuesday of each month at ASU SkySong, 1475 N Scottsdale Rd Room #249, Scottsdale, AZ (480) 884-1860

About The Presenters:

Tim Crews

Tim Crews (@code_affinity) is a polyglot programmer who only ever met three programming languages that he didn't like. He has been writing software professionally for 25 years, mostly in languages brought to you by the letter "C". He recently made the jump to self-employment, seeking opportunities to write code in expressive high-level languages such as Ruby, Python, Haskell, Clojure, and Scala. Besides his life-long obsession with programming, Tim is an avid student of the history and philosophy of science and mathematics. See his fledgling web-site at

Leave a Reply

Leave a Reply

Send comment