<div dir="ltr"><div>Not sure that's what you really want, but you can use a simple macro to get both the procedure and the corresponding string when defining the procedure:<br><br>#lang racket<br><br></div><div>;; Macro:<br>

</div><div>(define-syntax-rule (lambda+string args body ...)<br>  (values<br>   (lambda args body ...)<br>   (~a '(lambda args body ...))))<br><br></div><div>;; Example:<br></div><div>(define-values<br>  (foo foo-str)<br>

  (lambda+string (x y) (+ x y 3)))<br><br></div><div>;; Tests:<br></div><div>(foo 3 4)<br>foo-str<br><br></div><div>If you want to get the body of an existing procedure, I don't know of any other way that search for the procedure in the source file and extract it from there, which is not a trivial matter and not 100% possible.<br>

<br></div>Laurent<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Dec 30, 2013 at 4:45 AM, Alegria Baquero <span dir="ltr"><<a href="mailto:alegriabaquero@gmail.com" target="_blank">alegriabaquero@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hello,<br><br></div>is there any way to transform a function's body to a string such as "(lambda(x)...)"?<br>

<br></div>Thanks<span class="HOEnZb"><font color="#888888"><br><br>Alegria<br></font></span></div>
<br>____________________<br>
  Racket Users list:<br>
  <a href="http://lists.racket-lang.org/users" target="_blank">http://lists.racket-lang.org/users</a><br>
<br></blockquote></div><br></div>