Advertisement
cardel

Ejercicio 10 de Junio FLP

Jun 10th, 2019
964
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Racket 1.98 KB | None | 0 0
  1. #lang eopl
  2.  
  3. ;.
  4.  
  5. ;;Autor: Carlos A Delgado
  6. ;;Fecha: 10 de Junio 2019
  7.  
  8. ;;Interfaz
  9. (define empty-env
  10.   (lambda () '()))
  11.  
  12. (define extend-env
  13.   (lambda (id val env)
  14.     (list id val env)))
  15.  
  16.  
  17. (define apply-env
  18.   (lambda (val env)
  19.     (cond
  20.       [(null? env) (eopl:error "No está la variable")]
  21.       [else
  22.        (let
  23.            (
  24.             (id (car env))
  25.             (val-e (cadr env))
  26.             (env-e (caddr env))
  27.             )
  28.          (if (equal? val id)
  29.              val-e
  30.              (apply-env val env-e)
  31.              )
  32.          )
  33.        ]
  34.       )
  35.     )
  36.   )
  37.  
  38. ;;Area del programador
  39.  
  40. (define e
  41.   (extend-env 'd 6
  42.               (extend-env 'y 8
  43.                       (extend-env 'x 7
  44.                                   (extend-env 'y 14
  45.                                               (empty-env)
  46.                                               )))))
  47. ;;Procedimientos
  48.  
  49. #lang eopl
  50.  
  51. ;;Autor: Carlos A Delgado
  52. ;;Fecha: 10 de Junio de 2019
  53.  
  54. (define empty-env
  55.   (lambda ()
  56.     (lambda (search-var)
  57.       (eopl:error "No me encontraste, busca en tu tinieble")
  58.       )
  59.     )
  60.   )
  61.  
  62. (define extend-env
  63.   (lambda (var val env-e)
  64.     (lambda (search-var)
  65.       (if (equal? search-var var) val
  66.           (apply-env search-var env-e)
  67.           )
  68.       )
  69.     )
  70.   )
  71.  
  72. (define apply-env
  73.   (lambda (search-var env)
  74.     (env search-var)))
  75.  
  76. ;;Area del programador
  77.  
  78. (define e
  79.   (extend-env 'd 6
  80.               (extend-env 'y 8
  81.                       (extend-env 'x 7
  82.                                   (extend-env 'y 14
  83.                                               (empty-env)
  84.                                               )))))
  85. ;;;Ejercicio
  86. <arbol-b>   :: =(arbol-bhoja) <int>
  87.             ::=(arbol-bnodo)<symbol> <arbol-b> <arbol-b>
  88.  
  89.  
  90.  
  91. (define arbolitoNavidad
  92.       (arbol-bnodo 'x
  93.            (arbol-bnodo 'y
  94.                    (arbol-bhoja 2)
  95.                    (arbol-bhoja 3)
  96.             )x|
  97.            (arbol-bhoja 4)
  98. )
  99. (sumarNodos);;Interfaz
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement