Meta

7
Metaprogramming Programs that write programs

Transcript of Meta

Page 1: Meta

Metaprogramming

Programs that write programs

Page 2: Meta

"Metaprogramming began with taking drugs in the company of dolphins."

Page 3: Meta

#!/bin/bash# metaprogram (generative programming)echo '#!/bin/bash' >programfor ((I=1; I<=992; I++)); do echo "echo $I" >>programdonechmod +x program

Page 4: Meta

Metaprogramming in Ruby

Metaprogramming in Ruby

Page 5: Meta

Avoiding a Bad Trip Keep method_missing

short and simple. Use method.send instead

of eval. restrict untrusted access. respond_to? Document

metaprogramming well.

Page 6: Meta

More Methods

alias_methodinstance_evalclass_evaldefine_method

Page 7: Meta

Usage of Metaprogramming

ActiveRecordTestUnit, rSpecCamping