       initialize: (opts)->
         @val = opts.value
         @future_as_decimal = opts.future_as_decimal
+
+      toString: ->
+        "N(#{@val})"
 
       isNumber: -> true
 

        Expression.build(expression: expr)

      replaceLast: (new_last)->
        expr = _.clone(@expression)
        expr[expr.length - 1] = new_last
        Expression.build(expression: expr)
      withoutLast: ->
        expr = _.clone(@expression)
        expr = expr.slice(0, expr.length-1)
        Expression.build(expression: expr)
      isError: -> @is_error

      isOpen: -> @is_open
      open: -> @clone(is_open: true)
      close: -> @clone(is_open: false)
    class_mixer(Expression)



    class_mixer(Pi)

    class Addition extends ExpressionComponent
      isOperator: -> true
    class_mixer(Addition)

    class Subtraction extends ExpressionComponent
      toDisplay: -> "-"
      isOperator: -> true
      toString: -> "Sub()"
    class_mixer(Subtraction)

    class Multiplication extends ExpressionComponent
