Convertir string a fragmento de código

Hola gente

estoy comenzando a desarrollar plugins para el programa de diseño 3d
Sketchup de Google, los cuales se escriben en lenguaje ruby, quiero
hacer un plugin que me permita dibujar expresiones matemáticas, para lo
cual necesito lograr la conversión de string a fragmento de código de
ruby, es decir que en un campo de texto reciba algo como

“Math.sin(x**2)”

y yo le asigne una variable a esto para luego convertirlo de alguna
forma en un trozo de código para obtener una linea de código como

y = Math.sin(x**2)

lo cual puedo evaluar asignándole valores a x. No se si esto es muy
difícil o de entrada no es posible, agradezco su atención

Hola Diego,

No entiendo a que te refieres con eso.

Quizs puedas ser mas especfico y te podramos ayudar en algo.

Si lo haces en ingls tendrs mas ayuda.

Saludos,
JF

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 08.04.2012 01:14, schrieb Diego Castro:

Hola gente, estoy comenzando a desarrollar plugins para el programa
de diseño 3d Sketchup de Google, los cuales se escriben en lenguaje
ruby, quiero hacer un plugin que me permita dibujar expresiones
matemáticas, para lo cual necesito lograr la conversión de string a
fragmento de código de ruby, no se si esto es muy difícil o de
entrada no es posible, agradezco su atención

Buscas probablemente el método Kernel#eval?

==================================
irb(main):001:0> eval “3 * 8 + 3”
=> 27

Pero #eval no es la solución para todos los problemas, porque permite
evaluar no solo expresiones matemáticas, pero también otro código, que
puede ser un riesgo de seguridad (no sé cuales métodos permite Google
SketchUp en general).

Y como Jose dijo, eso es una lista en inglés, por eso tienes mejor
éxito si preguntas en inglés.

Saludos,
Marvin
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJPgUlPAAoJELh1XLHFkqha0cwIAIqJLitqLLM3OVhMpHLZKHiC
ZmqHPuTBVyjHj/hOyr6zwnTfkzV++VHyTldzkBHYL9qlf/1zvErmN58J220vGert
aEpgDlzjyiqjrgsomeDSkJjkNFaCHvSiVQJhKW6B8rmhly+oqLZugpfLjItrDkMB
gpRIOvPv2mg6xwonPz7TGm7WiDTBuVxkAtSa4GMwANSGy2LD4yXdt1rWYoE2vg6x
LoBowsjLALGAMrQeLT3/sjMWEFo+5fxzA0b9YsDU0cK3/OFDadaWEoYElBPtu3Ug
SFierPYO2YUOylmUPLL4dJucS6cSCWfbc6HPkxDFA7FJdS7HdzVOjU2Wa4FBQDU=
=La3P
-----END PGP SIGNATURE-----