Advertisement
Guest User

Untitled

a guest
Mar 29th, 2017
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. #lang racket
  2. (provide string->procedure add square)
  3.  
  4. (define (add x y)
  5. (+ x y))
  6.  
  7. (define (square x)
  8. (sqr x))
  9.  
  10. (define ns (variable-reference->namespace (#%variable-reference)))
  11.  
  12. (define (string->procedure s)
  13. (define sym (string->symbol s))
  14. (eval sym ns))
  15.  
  16. (string->procedure "add")
  17.  
  18. ((string->procedure "add") 1 2)
  19.  
  20. ((string->procedure "square") 5)
  21.  
  22. #lang typed/racket
  23.  
  24. (require/typed "string-procedure.rkt"
  25. [string->procedure
  26. (-> String (-> Number Number Number))]
  27. [add (-> Number Number Number)]
  28. [square (-> Number Number)])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement