Your SlideShare is downloading. ×
0
class User < ActiveRecord::Base  attr_accessor :name, :age  has_many :accountsend
(   ω ´)
_cond = []File.open(data.csv){|f|  f.each_line do |line|    line.chomp!    id, name, age = line.split(/,/)    _cond << %Q!...
parse data.csv do |id, name, age|  format [name, age]end
def parse(filepath, separater=,)  if block_given?    File.open(filepath){|f|      f.each_line do |line|        line.chomp!...
self.includedclass_evalinstance_variable_setdefine_method
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
メタプログラミングでDSLを書こう
Upcoming SlideShare
Loading in...5
×

メタプログラミングでDSLを書こう

4,499

Published on

2011/07/04 に行われた株式会社スケールアウトさんとのLT大会で使用したスライドです

Published in: Technology, News & Politics
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,499
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
10
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript of "メタプログラミングでDSLを書こう"

    1. 1. class User < ActiveRecord::Base  attr_accessor :name, :age has_many :accountsend
    2. 2. ( ω ´)
    3. 3. _cond = []File.open(data.csv){|f|  f.each_line do |line|    line.chomp!    id, name, age = line.split(/,/)    _cond << %Q!("#{name}", #{age})! if _cond.size > 1000 # execute insert end  end}
    4. 4. parse data.csv do |id, name, age|  format [name, age]end
    5. 5. def parse(filepath, separater=,)  if block_given?    File.open(filepath){|f|      f.each_line do |line|        line.chomp!        yield line.split(/#{separater}/)      end    }  else    raise "no block"  end  finalizeend
    6. 6. self.includedclass_evalinstance_variable_setdefine_method
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×