Q5~Q14 - mfham/mfham.github.io GitHub Wiki
# frozen_string_literal: false
basic_obj = BasicObject.new
puts basic_obj.object_id == basic_obj.__id__ # Q5
puts BasicObject.new.__id__ == BasicObject.new.__id__ # Q6
puts (21 * 2).__id__ == (21 * 2).__id__ # Q7
puts "hello".__id__ == "hello".__id__ # Q8
puts "hi".freeze.__id__ == "hi".freeze.__id__ # Q9
puts nil.__id__ == nil.__id__ # Q10
puts true.__id__ == true.__id__ # Q11
puts false.__id__ == false.__id__ # Q12
puts :foo.__id__ == :foo.__id__ # Q13
puts 1.0.__id__ == 1.0.__id__ # Q14
# frozen_string_literal: false
basic_obj = BasicObject.new
puts basic_obj.object_id == basic_obj.__id__ # Q5
puts BasicObject.new.__id__ == BasicObject.new.__id__ # Q6
puts (21 * 2).__id__ == (21 * 2).__id__ # Q7
puts "hello".__id__ == "hello".__id__ # Q8
puts "hi".freeze.__id__ == "hi".freeze.__id__ # Q9
puts nil.__id__ == nil.__id__ # Q10
puts true.__id__ == true.__id__ # Q11
puts false.__id__ == false.__id__ # Q12
puts :foo.__id__ == :foo.__id__ # Q13
puts 1.0.__id__ == 1.0.__id__ # Q14
# Q5: undefined method `object_id'
# Q6: false
# Q7: true
# Q8: false
# Q9: true
# Q10: true
# Q11: true
# Q12: true
# Q13: true
# Q14: true