Class: Lisp::System

Inherits:
Object show all
Defined in:
lib/rubylisp/system.rb

Class Method Summary collapse

Class Method Details

.registerObject



5
6
7
# File 'lib/rubylisp/system.rb', line 5

def self.register
  Primitive.register("sleep")         {|args, env| Lisp::System.sleep_impl(args, env) }
end

.sleep_impl(args, env) ⇒ Object



10
11
12
13
14
15
# File 'lib/rubylisp/system.rb', line 10

def self.sleep_impl(args, env)
  raise "sleep needs 1 argument" if args.length != 1
  arg = args.car.evaluate(env)
  raise "sleep needs a numeric argument" unless arg.number?
  sleep(arg.value)
end