A toy dynamic programming language written in Ruby
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

environment.rb 435B

1234567891011121314151617181920212223242526272829
  1. class Environment
  2. attr_reader :data
  3. def initialize(parent = nil)
  4. @data = Hash.new
  5. CORE.each do |k, v|
  6. @data[k.to_s] = v
  7. end
  8. unless parent.nil?
  9. parent.data.each do |k, v|
  10. @data[k] = v
  11. end
  12. end
  13. end
  14. def get(name)
  15. if @data.has_key?(name)
  16. @data[name]
  17. else
  18. raise "Undefined variable #{name}"
  19. end
  20. end
  21. def set(name, value)
  22. @data[name] = value
  23. end
  24. end