Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (define my-eval
- '(lambda-rec (eval expr)
- (cond [(pair? expr)
- (cond [(eq? (car expr) (quote +))
- (+ (eval (car (cdr expr)))
- (eval (car (cdr (cdr expr)))))]
- [(eq? (car expr) (quote -))
- (- (eval (car (cdr expr)))
- (eval (car (cdr (cdr expr)))))]
- [(eq? (car expr) (quote *))
- (* (eval (car (cdr expr)))
- (eval (car (cdr (cdr expr)))))]
- [(eq? (car expr) (quote /))
- (/ (eval (car (cdr expr)))
- (eval (car (cdr (cdr expr)))))])]
- [true expr])))
- ;;TODO:
- (define (list->pair x)
- (if (null? x)
- 'null
- (cons-cons (car x) (list->pair (cdr x)))))
- (define list1 '((quote +) 1 2))
- (define pair1 (list->pair list1))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement