Script started on Wed May 5 10:17:19 2021 bash-3.2$ load "silly.rb" irb(main):001:0> load "silly.rb" Hello, World! => true irb(main):002:0> athing = A.new => # irb(main):003:0> athing => # irb(main):004:0> athing.m1 => 34 irb(main):005:0> athing.m2(1,2) => 15 irb(main):006:0> athing.m2(2,1) => false irb(main):007:0> bthing = B.new => # irb(main):008:0> bthing.m => 43 irb(main):009:0> m => 43 irb(main):010:0> bthing.m1 => 4 irb(main):011:0> bthing.m3 17 => 38 irb(main):013:0> cthing = C.new => # irb(main):014:0> cthing.m1 hi => # irb(main):015:0> cthing.m1.m2.m3 hi bye => # irb(main):016:0> puts cthing.m1.m2.m3 hi bye # => nil irb(main):017:0> s = cthing.m1.m2.m3 hi bye => # irb(main):018:0> s => # irb(main):019:0> puts s # => nil irb(main):020:0> n=17 => 17 irb(main):021:0> n => 17 irb(main):022:0> n+1 => 18 irb(main):023:0> n.+(1) => 18 irb(main):024:0> n.+ 1 => 18 irb(main):025:0> 1+1 => 2 irb(main):026:0> 17+1 => 18 irb(main):027:0> 17.+(1) => 18 irb(main):028:0> 17 => 17 irb(main):029:0> 17.class => Fixnum irb(main):030:0> -17.abs => 17 irb(main):034:0> -17.class => Fixnum irb(main):035:0> -17.methods => [:%, :&, :*, :+, :-, :/, :<, :>, :^, :|, :~, :-@, :**, :<=>, :<<, :>>, :<=, :>=, :==, :===, :[], :inspect, :size, :succ, :to_s, :to_f, :div, :divmod, :fdiv, :modulo, :abs, :magnitude, :zero?, :odd?, :even?, :bit_length, :double, :to_int, :to_i, :next, :upto, :chr, :ord, :integer?, :floor, :ceil, :round, :truncate, :downto, :times, :pred, :to_r, :numerator, :denominator, :rationalize, :gcd, :lcm, :gcdlcm, :+@, :eql?, :singleton_method_added, :coerce, :i, :remainder, :real?, :nonzero?, :step, :positive?, :negative?, :quo, :arg, :rectangular, :rect, :polar, :real, :imaginary, :imag, :abs2, :angle, :phase, :conjugate, :conj, :to_c, :between?, :m, :tap, :public_send, :instance_variables, :instance_variable_set, :instance_variable_defined?, :remove_instance_variable, :private_methods, :kind_of?, :is_a?, :instance_variable_get, :method, :public_method, :singleton_method, :instance_of?, :extend, :define_singleton_method, :to_enum, :enum_for, :=~, :!~, :respond_to?, :freeze, :object_id, :display, :send, :nil?, :hash, :class, :singleton_class, :clone, :dup, :itself, :taint, :tainted?, :untaint, :untrust, :trust, :untrusted?, :methods, :protected_methods, :frozen?, :public_methods, :singleton_methods, :!, :!=, :__send__, :equal?, :instance_eval, :instance_exec, :__id__] irb(main):036:0> nil => nil irb(main):037:0> nil.class => NilClass irb(main):038:0> nil.methods => [:&, :^, :|, :===, :inspect, :to_a, :to_s, :to_i, :to_f, :nil?, :to_h, :to_r, :rationalize, :to_c, :m, :tap, :public_send, :instance_variables, :instance_variable_set, :instance_variable_defined?, :remove_instance_variable, :private_methods, :kind_of?, :is_a?, :instance_variable_get, :method, :public_method, :singleton_method, :instance_of?, :extend, :define_singleton_method, :to_enum, :enum_for, :<=>, :=~, :!~, :eql?, :respond_to?, :freeze, :object_id, :display, :send, :hash, :class, :singleton_class, :clone, :dup, :itself, :taint, :tainted?, :untaint, :untrust, :trust, :untrusted?, :methods, :protected_methods, :frozen?, :public_methods, :singleton_methods, :!, :==, :!=, :__send__, :equal?, :instance_eval, :instance_exec, :__id__] irb(main):039:0> nil.methods.length => 67 irb(main):040:0> dthing = D.new => # irb(main):041:0> dthing.foo => nil irb(main):042:0> dthing.m1 => 0 irb(main):043:0> dthing.foo => 0 irb(main):044:0> dthing.m2 3 => 3 irb(main):046:0> ething = E.new(5) => # irb(main):047:0> ething.foo => 5 irb(main):048:0> class D irb(main):049:1> def bar irb(main):050:2> 17 irb(main):051:2> end irb(main):052:1> end => :bar irb(main):053:0> dthing.bar => 17 irb(main):054:0> dthing.bam NoMethodError: undefined method `bam' for # Did you mean? bar from (irb):54 from /usr/bin/irb:11:in `
' irb(main):055:0> 1.foo NoMethodError: undefined method `foo' for 1:Fixnum Did you mean? floor from (irb):55 from /usr/bin/irb:11:in `
' irb(main):056:0> class Fixnum irb(main):057:1> def foo irb(main):058:2> "bar" irb(main):059:2> end irb(main):060:1> end => :foo irb(main):061:0> 1.foo => "bar" irb(main):062:0> 1.+(2) => 3 irb(main):063:0> class Fixnum irb(main):064:1> def +(x) irb(main):065:2> 17 irb(main):066:2> end irb(main):067:1> end => :+ irb(main):068:0> 1+2 => 17 irb(main):017:0> 42+17 => 17 irb(main):017:0> nil => nil irb(main):017:0> exit bash-3.2$ irb irb(main):001:0> load "Rat.rb" => true irb(main):002:0> half = Rat.new(3/6) => # irb(main):003:0> half => # irb(main):004:0> puts half 0 => nil irb(main):005:0> half = Rat.new(3,6) => # irb(main):006:0> half => # irb(main):007:0> puts half 1/2 => nil irb(main):008:0> ^D bash-3.2$ exit Script done on Wed May 5 11:23:31 2021