Advertisement
Guest User

Untitled

a guest
May 29th, 2015
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.61 KB | None | 0 0
  1. (arith-exp (op args) (calc-arith op (map
  2. (lambda (arg) (value-of arg env)) args
  3. )))
  4. (define calc-arith
  5. (lambda (op-struct args)
  6. (let* ([op (extractOperator op-struct)]
  7. [resolved-args (deref-list args)])
  8. (cond ((has-undefined? args) 'undefined)
  9. ((has-nonint? args) 'undefined)
  10. (else
  11. (if (null? (cdr resolved-args))
  12. (op (get-identity op) (car resolved-args))
  13. (fold-left op (car resolved-args) (cdr resolved-args))))))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement