Hola Gente!

Estoy trabajando en un proyecto en el cual uno pueda escribir C (y C++
en un futuro) con una sintaxis parecida a python.
Esto es, sin llaves y sin punto y coma.

Algo como:
int main (int argc, char * arg_v[])
{
  printf("Hello World! \n");
  return 0;
}
Se escribiría:
int main (int argc, char * arg_v[])
  printf("Hello World! \n")
  return 0

Y lo traduciría como
int main (int argc, char * arg_v[]){
  printf("Hello World! \n");
  return 0;}
de tal manera de respetar la líneas.
Por ahora el lugar donde ingresa las llaves no necesariamente es muy
cómodo

http://code.google.com/p/cpy-translator/

Pueden bajarlo con las instrucciones de
http://code.google.com/p/cpy-translator/source/checkout

Necesitan bajarse e instalar quex para poder compilarlo
http://quex.sourceforge.net/
Las dependencias de quex son las mismas de cpy

Puede ser que a algunos les guste y a otros le parezca una
"canibalización". Pero lo pongo a disposición para la gente que le
parezca útil.

Todavía falta un poco de documentación.

Reglas de traducción:
Básicamente cuando no quieran que el traductor actúe siemplemente ponen
un backsalsh al final de la línea:
Ejemplo

int funcion_con_mucho_argumentos(int cantidad, \
        float ancho, \
        float alto, \
        ....
        int foo \
        )
O
int a = \
b + variable_de_nombre_super_largo_que_no_cabe_en_una_linea

El mismo traductor depythonize_c está programado en cpy, ahí puede ver
ejemplos.

Si ya existe un punto y coma no agrega.
No hace falta poner dos puntos para empezar indentación. (a diferencia de python)

Espero feedback y sobre todo necesito contribuyentes en resaltadores
para editores.
Hay un ejemplo para Kate:
http://code.google.com/p/cpy-translator/source/browse/#svn/trunk/editors_highlighting/kate

Saludos!
Joaquín

Responder a