Changeset 3533
- Timestamp:
- 12/24/07 16:53:33 (5 years ago)
- Files:
-
- 1 modified
-
lang/ruby/misc/yhara/new-harizon.rb (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
lang/ruby/misc/yhara/new-harizon.rb
r3528 r3533 17 17 def voice(context = []) 18 18 @name 19 end 20 21 def self.curry_new(argument) 22 @@argument = argument 23 Class.new(Speaker) do 24 class << self 25 define_method :'new' do 26 Speaker.new(@@argument) 27 end 28 end 29 end 30 end 31 end 32 33 class Module 34 def const_missing(name) 35 Speaker.curry_new(name.to_s) 19 36 end 20 37 end … … 80 97 end 81 98 82 speakers = [Alex.new, Speaker.new('Vicki')]99 speakers = [Alex.new, Vicki.new] 83 100 lesson = 0 84 101 … … 132 149 133 150 puts 134 puts "EXERCISE" 135 `say exercise` 136 (1..5).each do |num| 137 i = rand(context.size) 138 text = context[i] 139 context.delete_at i 151 unless ARGV.include? '--no-exercise' 152 puts "EXERCISE" 153 `say exercise` 154 (1..5).each do |num| 155 i = rand(context.size) 156 text = context[i] 157 context.delete_at i 140 158 141 `say #{num}`142 puts "#{num}. #{text.words.gsub(/[yhar]/,'_')} #{text.eos}"143 print " "144 text.say159 `say #{num}` 160 puts "#{num}. #{text.words.gsub(/[yhar]/, '_')} #{text.eos}" 161 print " " 162 text.say 145 163 146 answer = readline.chomp 147 if text.correct?(answer) 148 `say y` 149 else 150 `say hara` 164 answer = readline.chomp 165 if text.correct?(answer) 166 if num == 5 167 `say y!` 168 else 169 `say y` 170 end 171 else 172 `say hara` 173 end 151 174 end 175 176 sleep 1 177 puts 152 178 end 153 154 sleep 1155 156 puts157 179 end
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)