Parcourir la source

Display quoted values in repl

master
Dylan Baker il y a 5 ans
Parent
révision
39369d9375
2 fichiers modifiés avec 7 ajouts et 1 suppressions
  1. 1
    1
      lib/chervil/ast/quotation.rb
  2. 6
    0
      lib/chervil/repl.rb

+ 1
- 1
lib/chervil/ast/quotation.rb Voir le fichier

8
 
8
 
9
     def evaluate(env)
9
     def evaluate(env)
10
       if @value.is_a?(List)
10
       if @value.is_a?(List)
11
-        @value.elements
11
+        self
12
       else
12
       else
13
         @value.evaluate(env)
13
         @value.evaluate(env)
14
       end
14
       end

+ 6
- 0
lib/chervil/repl.rb Voir le fichier

12
         '#f'
12
         '#f'
13
       when AST::Function
13
       when AST::Function
14
         "<function: #{obj.name.name}(#{obj.params.map(&:name).join(' ')})>"
14
         "<function: #{obj.name.name}(#{obj.params.map(&:name).join(' ')})>"
15
+      when AST::Number
16
+        display(obj.value)
17
+      when AST::List
18
+        "(#{obj.elements.map { |el| display(el) }.join(' ')})"
19
+      when AST::Quotation
20
+        "\'#{display(obj.value)}"
15
       when Float
21
       when Float
16
         if obj.floor.to_f == obj
22
         if obj.floor.to_f == obj
17
           obj.to_i
23
           obj.to_i

Chargement…
Annuler
Enregistrer