<div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace;color:rgb(0,0,0)">Te estás metiendo en un terreno complicado. PLY es una implementación de Lex y Yacc para Python.</div><div class="gmail_default" style="font-family:'courier new',monospace;color:rgb(0,0,0)">

Espero que te sientas cómodo con gramáticas y lenguajes.</div><div class="gmail_default" style="font-family:'courier new',monospace;color:rgb(0,0,0)"><br></div><div class="gmail_default"><font color="#000000" face="courier new, monospace"><a href="http://www.dabeaz.com/ply/">http://www.dabeaz.com/ply/</a></font><br>

</div></div><div class="gmail_extra"><br clear="all"><div><div><br></div>.:-:ChiCkENURiNE:-:.<div><span>+ </span><span>El <a href="http://groups.google.com/group/spam-a-lot/" target="_blank">SPAM</a> tiene su lugar.</span></div>

</div>
<br><br><div class="gmail_quote">2014/1/16 Carlos M. Martinez <span dir="ltr"><<a href="mailto:carlosmarcelomartinez@gmail.com" target="_blank">carlosmarcelomartinez@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hola,<br>
<br>
tengo la siguiente necesidad/problema. Hace unos meses vengo<br>
desarrollando una aplicación en python para sacar diferentes<br>
estadísticas de adopción de tecnologías en Internet (ipv6, rpki) , el<br>
código está en github [1], lo pueden ver alli.<br>
<br>
Dentro de ellas, me hice una especie de 'shell' usando el modulo cmd.Cmd<br>
que me permite dar comandos a la aplicación. Si bien lo hice medio como<br>
prueba de concepto, fue un hit, y ahora es lo mas usado.<br>
<br>
Por ahora el shell lo unico que hace es procesar lineas de texto una a<br>
una, y en realidad soporta un unico comando 'util' que es una especie de<br>
SELECT de SQL que se corre contra un sqlite3 que está en RAM.<br>
<br>
Como los usuarios nunca estan conformes, ahora me planteo la siguiente<br>
vuelta de tuerca, que es tener una especie de lenguaje de programacion<br>
liviano asociado a ese shell.<br>
<br>
Ejemplo: Hoy tuve que sacar historicos de asignaciones IPv6 por pais y<br>
por año. Lo hice medio a lo bruto, asi (pseudocodigo, los selects son un<br>
poco mas complejos):<br>
<br>
select ipv6 where date in 2013<br>
select ipv6 where date in 2012<br>
select ipv6 where date in 2011<br>
select ipv6 where date in 2010<br>
...<br>
<br>
y lo que me gustaria poder escribir es algo como:<br>
<br>
for y in [2010,2011,2012,2013]<br>
select ipv6 where date in $y<br>
<br>
Cualquier idea será apreciada!<br>
<br>
s2<br>
<br>
~Carlos<br>
<br>
[1] <a href="https://github.com/carlosm3011/rir-stats-tools" target="_blank">https://github.com/carlosm3011/rir-stats-tools</a><br>
_______________________________________________<br>
Uylug-programming mailing list<br>
<a href="mailto:Uylug-programming@listas.uylug.org.uy">Uylug-programming@listas.uylug.org.uy</a><br>
<a href="http://listas.uylug.org.uy/listinfo.cgi/uylug-programming-uylug.org.uy" target="_blank">http://listas.uylug.org.uy/listinfo.cgi/uylug-programming-uylug.org.uy</a><br>
</blockquote></div><br></div>