
14 de abril del 2008

Escrito por Alex Barros
Una vez más se demuestra mi teoría de que TODO puede hacerse via web, sólo se necesitan programadores dispuestos a crear el servicio.
Esta vez es el caso de un compilador/intérprete de lenguajes via web. Se llama CodePad, y admite lenguajes tan conocidos como C, C++, D, Perl, Python, Ruby y algunos más.
He hecho unas cuantas pruebas con código C rebuscado y efectivamente compila y ejecuta de forma correcta, incluso te explica los errores de código si los hay.
Una idea similar tube hace algún tiempo, pero no fructificó el proyecto, ahora me quito el sombrero ante lo que ha hecho Steven Hazel (el desarrollador). Parece ser que ha sido desarrollado en Python, y que ha puesto énfasis en la seguridad. Aún así insta a hackers que comuniquen sus éxitos.
A partir del buen servicio que ha conseguido CodePad, se podría explotar ahí una comunidad de desarrolladores muy guapa, o crear toda una plataforma web para programadores, para que cuelguen sus proyectos de Software Libre, los promocionen, interactúen, y tengan a mano herramientas tan interesantes como el compilador, o un editor de código que esté bien. Sería una idea nada despreciable.
via wwWhat’s New
Categorias: Aplicaciones, C, Código |
3 comentarios »

29 de febrero del 2008

Escrito por José Cabo
Explicados los lenguajes esotéricos, quizás en clave de humor o quizás algo serio. Quisiera aportar algo sobre lenguajes algo más útiles. En este caso del lenguaje C aunque posiblemente aplicable a muchos otros.
No voy a expandirme pues no pienso profundizar demasiado, pero espero que la mayoría lo conozcáis o al menos sepáis en que consiste. Tenéis más información al respecto en la Wikipedia sobre la historia de este lenguaje.

Recientemente en clase de Programación de mi Universidad nos han enseñado un método de programación que hace uso de la recurrencia y de las funciones. Es decir, nos han enseñado las llamadas funciones recurrentes. Estas funciones son aquellas que se llaman a sí mismas hasta llegar a resolver la forma más simple de un problema. Un ejemplo de código sería:
-
-
/*Factorial de un número*/
-
int func (int var) {
-
if (var==1) return 1;
-
else return func(var-1)*var;
-
}
-
Este método es fácil de entender, es más, no tiene mayor complicación que el hecho de entender la propia recurrencia. Pero me gustaría compartir con vosotros que fue gracias a este método que estoy desarrollando un programa capaz de calcular las tablas de verdad de un circuito lógico. Hablo de Bloodtraining Lógico (nombre todavía pendiente…). ¿Tablas de verdad?, ¿circuito lógico? Bueno… es la unión de varias cosas de estas.
Ahora, llegando al punto de hacer publicidad de mi programa relativamente útil y, después de que comprendáis el porqué de su comienzo…

El programa más que por su utilidad me sirvió para entender las funciones recurrentes y, además, para echar una mano a mis compañeros de clase que usan un sistema diferente a Windows (Bloodtraining también es compatible con Windows). Podéis acceder a Bloodtraining Lógico desde Codis, descargarlo y comprobar todas sus últimas features (Y decirme como solucionar los errores que encontréis que los hay):
- Actualmente soporta cualquier entrada de datos de tipo: (variable1,&,variable2) en donde variable1 es a y variable2 es b.
- Soporte de puertas: AND &; OR |; NAND /&; NOR /|
- Además, pueden negarse las salidas tanto de las variables (variables negadas) como de las salidas (puertas NAND y NOR) escribiendo el carácter / delante de la correspondiente variable o puerta. Ejemplo: (a,/&,/b) –> Es una puerta NAND de dos entradas con la variable b negada.
- Se permite la composición de circuitos. Ejemplo: ((a,&,b),/|,((/a,&,b),|,b)).
Actualmente es una rc1 pero en breve sacaré la 1.0 cuando corrija los bugs que han quedado por ahí sueltos.
Categorias: Aplicaciones, C, GNU/Linux, Multiplataforma, Software libre, Windows |
1 comentario »